《基于支持向量机(SVM)的蘑菇毒性检测系统》由会员分享,可在线阅读,更多相关《基于支持向量机(SVM)的蘑菇毒性检测系统(32页珍藏版)》请在金锄头文库上搜索。
1、华中农业大学本科毕业论文(或设计)目 录摘 要II关键词IIAbstractIIKey WordsII1引言11.1研究意义11.2国内外研究情况12支持向量机理论32.1支持向量机基础理论32.2 C-SVM算法及其变形算法72.3 v-SVM算法93 LIBSVM软件123.1 LIBSVM软件简介123.2 LIBSVM软件的使用方法123.3 LIBSVM的工具包154 Qt图形库185 系统的设计与实现195.1分类问题的提出及SVM分类原理195.2支持向量机与蘑菇毒性分析相结合215.2.1 蘑菇毒性检测系统总体框架215.2.2 蘑菇物理属性的数据描述215.2.3 蘑菇属性数
2、据学习模型的建立235.2.4 蘑菇毒性预测部分266 总结276.1 结论276.2 下一步工作28参考文献29致 谢30 基于支持向量机(SVM)的蘑菇毒性检测系统摘 要本文根据模式识别理论,对支持向量机的分类机制,核函数算法和松弛变量的定义进行了研究,采用了LIBSVM工具结合蘑菇毒性样本数据在linux下开发出了蘑菇毒性检测系统,该系统着重分析了样本数据的分割和参数变量的定义对分类精确率的影响。并在此情况下产生样本学习结果,然后便可对蘑菇进行毒性分类即检测。本系统采用了数目为1000的子数据样本,核函数参数和松弛变量都采用系统计算出的推荐参数,最后产生了一个高效的准确度高的易用蘑菇检测
3、系统。关键词支持向量机;样本学习;分类;毒性检测Appraisal system of poisonous mushroombased Support Vector MachineAbstractBased on the theory of pattern recognition, the thesis studies the classification of support vector machines, the arithmetic of kernel function and the definition of slack variable, the LIBSVM tool with
4、 mushroom toxicity data on Linux develope mushroom toxicity testing system, this system is analyzed and the parameters of the sample data segmentation of precise definition of variable rate. Classification, And in the condition,the study result samples related physical properties can be toxic classi
5、fication of mushrooms on that test.Here is the system USES a number of 1000 kernel function parameter data sample, and relaxation variables are calculated using the system parameters, the recommended a high accuracy high easy-to-use mushroom detection system.Key WordsSupport Vector Machine; Sample L
6、earning; Classification;Toxicity Testing311引言1.1研究意义中国的毒蘑菇种类多,分布广泛,资源丰富。在广大农村乡镇和山区,误食毒蘑菇中毒的事例很普遍,几乎每年都有严重中毒导致死亡的报告,曾经被作为多发性食物中毒的原因之一。因此,长期以来如何有效检测毒蘑菇是人们十分关心的事。有关方面曾做了大量科普知识宣传的工作,但误食中毒者仍经常有发生。只有靠专家鉴定或民间流传的土方法,前者不太现实,不利于普及,后者采用.对照法、看形状、观颜色、闻气味、看分泌物。这些复杂的方法对新手或外行人不利于掌握,虽一定程度上得减少了误食,但并不完全科学精确的分辨,不利于规模性国
7、民生产。至今尚无精确地方法或设备对毒蘑菇进行检测。因此有一个简易精确的先进计算机设备实现毒蘑菇检测,对提高效率和精度都有非常重要的意义。(朱元珍等,2008)本文是利用蘑菇的20个物理属性从而进行毒性鉴定的研究。利用支持向量机及相关知识来对蘑菇的物理形态对蘑菇的物理属性和毒性之间的关系进行分析,从而开发出蘑菇毒性检测系统。第一次实现了计算机设备来检测蘑菇毒性,对于增强我国食品的安全保障,提高农民收入有重要意义。1.2国内外研究情况机器学习(Machine Learning,ML)是人工智能(Artificial Intelligence,AI)最具智能特征、最前沿的研究领域之一。 基于数据的机
8、器学习是现代智能技术中的重要方面,研究从观测数据(样本)出发寻找规律,利用这些规律对未来数据或无法观测的数据进行预测。(林继鹏和刘君华,2005)迄今为止,关于机器学习还没有一种被共同接受的理论框架,关于其实现方法大致可以分为三种:第一种是经典的(参数)统计估计方法。包括模式识别、神经网络等在内,现有机器学习方法共同的重要理论基础之一是统计学。参数方法正是基于传统统计学的,在这种方法中,参数的相关形式是已知的,训练样本用来估计参数的值。这种方法有很大的局限性,首先,它需要已知样本分布形式,这需要花费很大代价,还有,传统统计学研究的是样本数目趋于无穷大时的渐近理论,现有学习方法也多是基于此假设。
9、但在实际问题中,样本数往往是有限的,因此一些理论上很优秀的学习方法实际中表现却可能不尽人意。(陈荣淋等,2005)第二种方法是经验非线性方法,如人工神经网络(ANN)。这种方法利用已知样本建立非线性模型,克服传统参数估计方法的困难。但是,这种方法缺乏统一的数学理论。与传统统计学相比,统计学习理论(Statistical Learning Theory或SLT)是一种专门研究小样本情况下机器学习规律的理论。该理论针对小样本统计问题建立了一套新的理论体系,在这种体系下的统计推理规则不仅考虑了对渐近性能的要求,而且追求在现有有限信息的条件下得到最优结果。V. Vapnik等人从六、七十年代开始致力于
10、此方面研究,到九十年代中期,随着其理论的不断发展和成熟,也由于神经网络等学习方法在理论上缺乏实质性进展,统计学习理论开始受到越来越广泛的重视。(马毅,2006)统计学习理论的一个核心概念就是VC维(VC Dimension)概念,它是描述函数集或学习机器的复杂性或者说是学习能力(Capacity of the machine)的一个重要指标,在此概念基础上发展出了一系列关于统计学习的一致性(Consistency)、收敛速度、推广性能(Generalization Performance)等的重要结论。(孙即祥,2002)统计学习理论是建立在一套比较坚实的理论基础之上的,为解决有限样本学习问题
11、提供了一个统一的框架。它能将很多现有的方法纳入其中,有望能帮助解决许多原来难以解决的问题(比如神经网络的结构选择问题、局部极小点问题等);同时,在这一理论基础上发展了一种新的通用学习方法支持向量机(SVM),已初步表现出很多优于其它方法的性能。一些学者认为,SLT和SVM正在成为继神经网络研究之后新研究热点,并将会推动机器学习理论和技术有重大发展。支持向量机方法是建立在统计学习理论的VC维理论和结构风险最小原理这两个基础上的,根据有限样本信息在模型中的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误识别任意样本的能力)之间寻求最佳折衷,以期望获得最好的推广能力(Gen
12、eralizatin Ability)。支持向量机方法的几个主要优点有:(1)它是专门针对有限样本情况的,其目标是得到根据现有信息下的最优解而不仅仅是样本数趋于无穷大时的最优值;(2)算法最终将转化成为一个二次型寻优问题,从理论上说,得到的将是全局中的最优点,解决了在神经网络方法中无法避免的局部极值问题;算法将实际问题通过非线性变换转换到高维特征空间(Feature Space),在高维空间中构造线性判别函数来实现原空间中的复杂非线性判别函数,特殊性质保证机器能有较好的推广能力,同时巧妙地解决维数问题,其算法复杂度与样本维数无关;在SVM方法中,只要定义了不同的内积函数,就可以实现多项式逼近、
13、贝叶斯分类器、径向基函数(Radial Basic Function或RBF)方法、多层感知器网络等许多现有学习算法。(汪丹和张亚非,2005)统计学习理论从七十年代末诞生之后,到九十年代之前都处在初级研究和理论准备阶段,直到近几年才逐渐得到重视,其本身也趋向于完善,并产生了支持向量机这一将理论付诸实现的有效机器学习方法。目前,SVM算法在模式识别、回归估计、概率密度函数估计等方面都有应用。例如,在模式识别方面,对于手写数字识别、语音识别、人脸图像识别、文章分类等问题,SVM算法在精度上已经超过传统的学习算法或与之不相上下。在车型检测和识别算法的研究中,SVM 识别系统对训练样本的训练时间最短
14、,是神经网络(BP) 算法中最快的非线性优化(LM) 算法的13 倍,识别的正确率远远高出BP 神经网络。目前,国际上对这一理论的讨论和进一步研究逐渐广泛,而我国国内尚未在此领域开展研究,因此我们需要及时学习掌握有关理论,开展有效的研究工作,使我们在这一有着重要意义的领域中能够尽快赶上国际先进水平。由于SLT理论和SVM方法尚处在发展阶段,很多方面尚不完善,比如:许多理论目前还只有理论上的意义,尚不能在实际算法中实现;而有关SVM算法某些理论解释也并非完美;此外,对于一个实际的学习机器的VC维的分析尚没有通用的方法;SVM方法中如何根据具体问题选择适当的内积函数也没有理论依据;SVM 判决函数
15、的计算量和支持向量的数目成正比. 对于大训练集合,其支持向量的数目会达到几千个,这就使SVM对实验样本的测试判决速度变慢。因此,在这方面我们可做的事情是很多的。(张学工,2006)2支持向量机理论2.1支持向量机基础理论图1 最优分类面 Figure富贵花 Fig. 1 Optical classification SurfaceSVM思想是从线性可分情况下的最优分类面发展而来的,基本思想可用图1的两维情况说明。图中,实心点和空心点代表两类样本,H为分类线,H1、H2分别为过各类中离分类线最近的样本且平行于分类线的直线,它们之间的距离我们叫做分类间隔(margin)。所谓最优分类线就是规定分类线不但能将两类正确分开(训练错误率为0),而且要使分类间隔最大。分类线方程为,我们可以对它进行归一化,使得对线性可分的样本集,满足 (公式1)此时分类间隔等于2/|w|,使间隔最大等价于使|w|2最小。满足条件(1)且使最小的分类面就叫做最优分类面,H1、H2上的训练样本点就称作支持向量(蒋琳琼,2007)。利用Lagrange优化方法可以把上述最优分类面问题转化为其对偶问题,即:在约束条件,