版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于BP神经网络的花卉种类分类专业:电子与通信工程摘要:文章对BP神经网络的基本原理做了介绍。选用Iris数据集作为数据源,通过MATLAB的BP网络工具箱对训练集进行训练,使用生成的分类器对测试集数据进行分类。仿真实验结果表明,基于BP神经网络分类器的识别方法具有较高的识别率。关键词:BP神经网络;数据分类;MATLABAbstract:ThepaperintroducesthebasicprincipleofBPneuralnetwork.TheIrisdatasetistrainedandtestedbasedontheBPneuralnetworktoolboxofMATLAB.TheresultofsimulationshowsthattherecognitionmethodbasedontheBPneuralnetworkhasahighrecognitionrate.Keywords:BPneuralnetwork;Dataclassification;MATLAB1引言随着互联网的广泛应用和数据库技术的发展,数据挖掘技术越来越受到人们重视。目前数据挖掘的功能主要包括概念描述、关联和相关性分析、分类与回归、聚类分析和偏差检测等。分类的主要方法有决策树分类、朴素贝叶斯分类、贝叶斯信念网络分类、神经网络分类、支持向量机分类等[1]。人工神经网络算法(Artificial
Neural
Networks,ANNs)是机器学习中一种十分重要的算法,人工神经网络以其独特的优点,受到了机器学习领域的广泛关注。
本文主要关注的是一类特殊的人工神经网络—后向传播神经网络(简称BP神经网络)。BP神经网络是人工神经网络算法中一种应用最为广泛的神经网络[2]。其主要具有如下特点:可以以任何精度逼近任意的非线性函数,而无需事先描述该关系的数学方程;.具有一定的抗噪能力或训练实例的容错性;能够在一定程度上对未分类实例进行区分。因此,BP神经网络在实际应用中具有极为广泛的用途[3]。2BP神经网络分类器的结构和原理2.1BP神经网络拓扑结构BP(Back-Propagation)神经网,也称为误差后向传播神经网络[4]。后向传播算法在多层前馈神经网络上学习,多层前馈神经网络由一个输入层、一个或多个隐藏层和一个输出层组成,如图1所示。网络是前馈的,其权重都不回送到输入单元,或前一层的输出单元;网络是全连接的,其每个单元都向下一层的每个单元提供输入。输入层和隐藏层之间以及隐藏层和输出层之间通过权值来表示连接强度。隐藏层的数量是任意的,给定足够多的隐藏单元和足够的训练样本,多层前馈神经网络可以逼近任意函数。目前,最流行的神经网络算法是后向传播[5]。图1神经网络拓扑结构2.2BP算法基本原理BP算法的基本思想:迭代地处理训练元组数据集,将每个元组的网络预测与实际知道的类标号相比较进行学习,对于每个训练样本,修改权重使得网络预测和实际类之间的均方误差最小。一般地,权重将最终收敛,学习过程停止。BP算法是信号的正向传播与误差的反向传播两个过程,其实质是求取误差函数的最小值问题[6]。BP神经网络按有师学习方法进行训练,当一对学习模式提供给网络后,其神经元的激活值将从输入层经各隐藏层向输出层传播,在输出层的各神经元输出对应输入模式的网络响应。然后,按减少希望输出与实际输出误差的原则,从输出层经各隐藏层、最后回到输入层逐层修正各连接权[7]。由于这种修正过程是从输出层到输入层逐层进行的,所以称其为“误差逆传播算法”。随着这种误差逆传播训练的不断进行,网络对输入模式响应的正确率也将不断提高。BP算法的具体步骤如下:2.2.1初始化权重和偏倚网络的权重被初始化为小随机数(例如:由-1.0到1.0,或由-0.5到0.5)。每个单元都有一个相关联的偏倚,类似地,偏倚也初始化为小随机数。2.2.2计算向前传播输入和输出首先,训练元组提供给网络的输入层,计算隐藏层和输出层每个单元的净输入和输出。对于输入层的单元j,它的输出等于它的输入。然后,计算隐藏层和输出层每个单元的净输入和输出。给定隐藏层或输出层的单元j,到单元j的净输入是:其中,是上一层的单元i到单元j的连接权重;是上一层的单元i的输出;是单元j的偏倚。隐藏层和输出层的每个单元取其净输入,然后将激活函数作用于它,如图2所示。对于每个隐藏层,直到输出层,我们计算输出值,给出网络预测,单元j的输出为:图2隐藏层和输出层单元输出示意图2.2.3更新向后传播误差通过更新权重和反映网络预测误差的偏倚,调整向后传播误差。对于输出层单元j,其误差计算公式为:其中,是单元j的实际输出,是给定训练元组的已知目标值,是激活函数的导数。隐藏层单元j的误差为:其中,是由下一较高层中单元k到单元j的连接权重,是单元k的误差。更新权重和偏倚,以反映传播的误差。权重更新公式为:其中,是权重的改变量,变量是学习率,通常取0到1之间的常数值后向传播使用梯度下降法搜索权重的集合,这些权重拟合训练数据,使得样本的网络预测与元组的已知目标值之间的均方距离最小。学习率有助避免陷入决策空间的局部极小,并有助于找到全局最小。如果学习率太低,则学习将进行得很慢。如果学习率太高,则可能出现在不适当的解之间的摆动[8]。偏倚由下式进行更新,其中,是偏倚的改变量。2.2.4终止条件当前一周期所有的都小于某个指定的阈值,或前一周期未正确分类的元组百分比小于某个阈值,或训练周期数超过预先指定的周期数,则训练终止。3BP神经网络训练与测试训练神经网络之前,在开始训练之前,用户必须说明输入层的单元数、隐藏层数(如果多于一层)、每一隐藏层的单元数和输出层的单元数,以确定网络拓扑。构建完了BP神经网络分类器的结构即各层单元个数,我们就可以通过训练来确定各层单元之间的连接权重,从而得到一个BP神经网络分类器,使用训练生成的分类器对测试集数据进行测试,然后对该分类器进行评价[9]。BP神经网络分类器训练和测试流程如图3所示。图3训练及测试流程图本文采用UCI上的Iris数据集作为训练样本,该数据集也称为鸢尾花卉数据集,是一类多重变量分析的数据集[10]。其数据集包含了150个样本,都属于鸢尾属下的三个亚属,分别是山鸢尾(Irissetosa),变色鸢尾(Irisversicolor)和维吉尼亚鸢尾(Irisvirginica)。四个特征被用作样本的定量分析,分别是花萼的长度、花瓣的长度、花萼的宽度、花瓣的宽度。试验中所用的数据集已经分为三类,第一组为山鸢尾数据,类别号为1;第二组为变色鸢尾数据,类别号为2;第三组为维吉尼亚鸢尾数据,类别号为3。实验将每一类的前三十个样本数据作为训练数据集,每一类剩余的二十个样本数据作为测试集数据。网络拓扑的输入层设立四个输入单元,分别对应每一类花卉的四个特征,输出层设立三个单元。使用matlab函数库中的newff函数创建BP神经网络,调用train函数进行训练得到分类器。将测试样本代入训练得到的分类器中进行测试,得到分类结果与测试性能曲线。4仿真结果分析根据BP神经网络的基本原理以及训练和测试流程,首先通过MATLAB对训练训练的过程和结果进行仿真。输出单元为三个,输出100为山鸢尾花卉,输出010为变色鸢尾花卉,输出为001为维吉尼亚鸢尾花卉,隐藏层使用Sigmoid函数作为传输函数数[10-11]。BP神经网络训练参数设置如图4所示图4BP神经网络训练参数图其中,隐藏层单元数为5,输出层单元数为3,训练迭代次数为1000,学习率为0.01。训练集样本均方误差与训练次数关系曲线图如图5所示。图5BP神经网络训练结果使用得到的BP神经网络分类器对测试集进行分类,其识别率和分类结果三维散点图分别如图6和图7所示。图6识别率图7分类结果(2)BP神经网络训练参数设置如图8所示图8BP神经网络训练参数图其中,隐藏层单元数为10,输出层单元数为3,8训练迭代次数为1000,学习率为0.01。训练集样本均方误差与训练次数关系曲线图如图9所示。图9BP神经网络训练结果使用得到的BP神经网络分类器对测试集进行分类,其识别率和分类结果三维散点图分别如图10和图11所示。图10识别率图11分类结果测试实验结果表明:改变训练次数和隐藏层单元数目,可以降低训练误差,同时提高样本分类的识别率。采用BP神经网络算法对包含四个属性、三个类别的数据集进行分类,其分类器识别率达到了98.333%,该分类器具有良好的分类效果。但是误差并没有达到目标值,这是由于训练样本数目足够多,增加样本数可以进一步缩小均方误差。通过以上的MATLAB仿真,我们从训练样本中得到了BP神经网络分类器,然后对于这个分类器进行测试也得到了理想的分类效果。实际中,我们也可以在允许的范围内调整学习步长、增减隐藏层单元数目、增加训练迭代次数、改变传递函数形式等方式,可以改善BP神经网络分类器。5结论本文介绍了BP神经网络的拓扑结构和后向传播算法的基本原理,并运用IRIS数据集进行了实例仿真,通过MATLAB软件的神经网络工具箱训练得到BP神经网络分类器,通过测试数据集验证对三类花卉进行分类,证明该分类器具有良好的分类的效果。参考文献[1]董艳,程文俊.数据挖掘原理与应用[M].北京:清华大学出版社,2010.[2]余静,游志胜.自动目标识别与跟踪技术研究综述[J].计算机应用研究,2005(1):12-15.[3]张明路,彭商贤.用于移动机器人避障的人工神经网络和模糊逻辑控制技术[J].中国机械工程,1997,8(2):21-24.[4]杨淑莹.模式识别与智能计算[M].北京:电子工业出版社,2011.[5]JiaweiHan.数据挖掘:概念与技术[M].范明,孟小峰等译.北京:机械工业出版社,2001.[6]张秋豪,孟宪辉.基于BP神经网络的障碍物模式识别[J].电脑知识与技术,2011,7(35):9205-9208.[7]ZHANGGP.Neuralnetworksforclassification[J].IEEETransonSystemsManandCybemetics-PartC:ApplicationandReviews,2000,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 生死状挑战协议书
- 苗木回收协议书
- 苹果受灾协议书
- 蔬菜配送协议书
- 认养牛合同范本
- 认购转让协议书
- 设计制作协议书
- 试用工合同范本
- 请求生产协议书
- 废物出售协议书
- 中国昭通中药材国际中心项目可行性研究报告
- 2025中国融通资产管理集团有限公司招聘笔试备考试题(230人)附答案解析
- 2026马年春节新年年货节大集庙会(金马迎春年货大集)活动策划方案
- 心脏搭桥课件
- 2026年安全员之A证考试题库500道附答案【满分必刷】
- 2025年广东省第一次普通高中学业水平合格性考试(春季高考)思想政治试题(含答案详解)
- 人工智能行业-“人工智能+”行动深度解读与产业发展机遇
- 养殖场贷款申请书样本
- (一诊)达州市2026届高三第一次诊断性测试思想政治试题(含标准答案)
- 购车意向金合同范本
- 学堂在线医学英语词汇进阶(首医)作业单元测验答案
评论
0/150
提交评论