您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > 利用matlab仿真的BP-ANN分类器设计
BP-ANN分类器设计1.引言从深层意义上看,模式识别和人工智能本质都是在解决如何让用机器模拟人脑认知的过程。一方面,从需要实现的功能出发,我们可以将目标分解为子功能,采用自定而下的的分解法实现我们需要的拟合算法。而另一方面,无论人脑多么复杂,人类的认知过程都可以认为若干个神经元组成的神经网络在一定机制下经由复杂映射产生的结果。从神经元的基本功能出发,采用自下而上的设计方法,从简单到复杂,也是实现拟合算法的一条高效途径。1.1什么是人工神经网络人工神经网络(ArtificialNeuralNetwork,ANN)是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activationfunction)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。人工神经网络是由大量处理单元互联组成的非线性、自适应信息处理系统。它是在现代神经科学研究成果的基础上提出的,试图通过模拟大脑神经网络处理、记忆信息的方式进行信息处理。人工神经网络具有四个基本特征:(1)非线性非线性关系是自然界的普遍特性。大脑的智慧就是一种非线性现象。人工神经元处于激活或抑制二种不同的状态,这种行为在数学上表现为一种非线性关系。具有阈值的神经元构成的网络具有更好的性能,可以提高容错性和存储容量。(2)非局限性一个神经网络通常由多个神经元广泛连接而成。一个系统的整体行为不仅取决于单个神经元的特征,而且可能主要由单元之间的相互作用、相互连接所决定。通过单元之间的大量连接模拟大脑的非局限性。联想记忆是非局限性的典型例子。(3)非常定性人工神经网络具有自适应、自组织、自学习能力。神经网络不但处理的信息可以有各种变化,而且在处理信息的同时,非线性动力系统本身也在不断变化。经常采用迭代过程描写动力系统的演化过程。(4)非凸性一个系统的演化方向,在一定条件下将取决于某个特定的状态函数。例如能量函数,它的极值相应于系统比较稳定的状态。非凸性是指这种函数有多个极值,故系统具有多个较稳定的平衡态,这将导致系统演化的多样性。1.2BP-ANN的优缺点BP-ANN的优点,主要表现在三个方面:第一,具有自学习功能。网络能通过学习带正确答案的实例集自动提取“合理的”求解规则,即具有自学习能力。自学习功能对于预测有特别重要的意义。预期未来的人工神经网络计算机将为人类提供经济预测、市场预测、效益预测,其应用前途是很远大的。例如实现图像识别时,只在先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就会通过自学习功能,慢慢学会识别类似的图像。第二,具有联想存储功能。用人工神经网络的反馈网络就可以实现这种联想。第三,具有拟合任何网络的的能力。网络实质上实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能。这使得它特别适合于求解内部机制复杂的问题。BP-ANN的缺点,主要表现在以下几个方面:第一,BP-ANN算法的学习速度很慢。由于BP-ANN算法本质上为梯度下降法,而它所要优化的目标函数又非常复杂,因此,必然会出现“锯齿形现象”,这使得BP-ANN算法低效;其次由于存在麻痹现象,由于优化的目标函数很复杂,它必然会在神经元输出接近0或1的情况下,出现一些平坦区,在这些区域内,权值误差改变很小,使训练过程几乎停顿;另外,为了使网络执行BP-ANN算法,不能用传统的一维搜索法求每次迭代的步长,而必须把步长的更新规则预先赋予网络,这种方法将引起算法低效。第二,网络训练失败的可能性较大。从数学角度看,BP-ANN算法为一种局部搜索的优化方法,但它要解决的问题为求解复杂非线性函数的全局极值,因此,算法很有可能陷入局部极值,使训练失败;网络的逼近、推广能力同学习样本的典型性密切相关,而从问题中选取典型样本实例组成训练集是一个很困难的问题。第三,难以解决应用问题的实例规模和网络规模间的矛盾。这涉及到网络容量的可能性与可行性的关系问题,即学习复杂性问题;第四,网络结构的选择尚无一种统一而完整的理论指导,一般只能由经验选定。为此,有人称神经网络的结构选择为一种艺术。而网络的结构直接影响网络的逼近能力及推广性质。因此,应用中如何选择合适的网络结构是一个重要的问题;第五,新加入的样本要影响已学习成功的网络,而且刻画每个输入样本的特征的数目也必须相同。第六,BP-ANN网络的预测能力(泛化能力)与训练能力(逼近能力、学习能力)的矛盾。一般情况下,训练能力差时,预测能力也差,并且一定程度上,随训练能力地提高,预测能力也提高。但这种趋势有一个极限,当达到此极限时,随训练能力的提高,预测能力反而下降,即出现所谓“过拟合”现象。此时,网络学习了过多的样本细节,而不能反映样本内含的规律。1.3人工神经网络当前的研究热点1.神经网络与遗传算法的结合这主要体现在以下几个方面:网络连接权重的进化训练;网络结构的进化计算;网络结构和连接权重的同时进化;训练算法的进化设计。基于进化计算的神经网络设计和实现已在众多领域得到应用,如模式识别、机器人控制、财政等,并取得了较传统神经网络更好的性能和结果。但从总体上看,这方面研究还处于初期阶段,理论方法有待于完善规范,应用研究有待于加强提高。神经网络与进化算法相结合的其他方式也有待于进一步研究和挖掘。2.神经网络与灰色系统的结合灰色系统理论是一门极有生命力的系统科学理论。自1982年华中理工大学的邓聚龙教授提出灰色系统后迅速发展,以初步形成以灰色关联空间为基础的分析体系,以灰色模型为主体的模型体系,以灰色过程及其生存空间为基础与内的方法体系,以系统分析、建模、预测、决策、控制、评估为纲的技术体系。目前,国内外对灰色系统的理论和应用研究已经广泛开展,受到学者的普遍关注。灰色系统理论在在处理不确定性问题上有其独到之处,并能以系统的离散时序建立连续的时间模型,适合于解决无法用传统数字精确描述的复杂系统问题。神经网络与灰色系统的结合方式有:神经网络与灰色系统简单结合;串联型结合;用神经网络增强灰色系统;用灰色网络辅助构造神经网络;神经网络与灰色系统的完全融合。3.神经网络与专家系统的结合基于神经网络与专家系统的混合系统的基本出发点立足于将复杂系统分解成各种功能子系统模块,各功能子系统模块分别由神经网络或专家系统实现。其研究的主要问题包括:混合专家系统的结构框架和选择实现功能子系统方式的准则两方面。由于该混合系统从根本上抛开了神经网络和专家系统的技术限制,是当前研究的热点。把粗集神经网络专家系统用于医学诊断,表明其相对于传统方法的优越性。4.神经网络与模糊逻辑的结合模糊逻辑是一种处理不确定性、非线性问题的有力工具。它比较适合于表达那些模糊或定性的知识,其推理方式比较类似于人的思维方式,这都是模糊逻辑的优点。但它缺乏有效的自学习和自适应能力。而将模糊逻辑与神经网络结合,则网络中的各个结点及所有参数均有明显的物理意义,因此这些参数的初值可以根据系统的模糊或定性的知识来加以确定,然后利用学习算法可以很快收敛到要求的输入输出关系,这是模糊神经网络比单纯的神经网络的优点所在。同时,由于它具有神经网络的结构,因而参数的学习和调整比较容易,这是它比单纯的模糊逻辑系统的优点所在。模糊神经网络控制已成为一种趋势,它能够提供更加有效的智能行为、学习能力、自适应特点、并行机制和高度灵活性,使其能够更成功地处理各种不确定的、复杂的、不精确的和近似的控制问题。5.神经网络与小波分析的结合小波变换是对Fourier分析方法的突破。它不但在时域和频域同时具有良好的局部化性质,而且对低频信号在频域和对高频信号在时域里都有很好的分辨率,从而可以聚集到对象的任意细节。利用小波变换的思想初始化小波网络,并对学习参数加以有效约束,采用通常的随机梯度法分别对一维分段函数、二维分段函数和实际系统中汽轮机压缩机的数据做了仿真试验,并与神经网络、小波分解的建模做了比较,说明了小波网络在非线性系统黑箱建模中的优越性。小波神经网络用于机器人的控制,表明其具有更快的收敛速度和更好的非线性逼近能力。1.4本文解决的问题本文主要完成以下事情:1.对给定的样本集进行预处理并将其随机分类为训练集和测试集;2.使用训练集分别训练三层和四层BP-ANN神经网络;3.使用测试集对已经获得的三层和四层神经网络的性能分别测试;4.比较和分析两类神经网络的性能并得出结论。2.BP人工神经网络算法2.1BP-人工神经网络算法BP算法包括两个方面:信号的前向传播和误差的反向传播。即计算实际输出时按从输入到输出的方向进行,而权值和阈值的修正从输出到输入的方向进行。图2-1BP网络结构图中:jx表示输入层第j个节点的输入,j=1,…,M;ijw表示隐含层第i个节点到输入层第j个节点之间的权值;i表示隐含层第i个节点的阈值;()x表示隐含层的激励函数;kiw表示输出层第k个节点到隐含层第i个节点之间的权值,i=1,…,q;ka表示输出层第k个节点的阈值,k=1,…,L;x表示输出层的激励函数;ko表示输出层第k个节点的输出。(1)信号的前向传播过程隐含层第i个节点的输入neti:1Miijjijnetwx(2-1)隐含层第i个节点的输出yi:1()()Miiijjijynetwx(2-2)输出层第k个节点的输入netk:111()qqMkkiikkiijjikiijnetwyawwxa(2-2)输出层第k个节点的输出ok:1a1kiwijwLakaqi………………1xjxMx1okoLo输出变量输入变量输入层隐含层输出层111()()()qqMkkkiikkiijjikiijonetwyawwxa(2-4)(2)误差的反向传播过程误差的反向传播,即首先由输出层开始逐层计算各层神经元的输出误差,然后根据误差梯度下降法来调节各层的权值和阈值,使修改后的网络的最终输出能接近期望值。对于每一个样本p的二次型误差准则函数为Ep:211()2LpkkkETo(2-5)系统对P个训练样本的总误差准则函数为:2111()2PLppkkpkETo(2-6)根据误差梯度下降法依次修正输出层权值的修正量Δwki,输出层阈值的修正量Δak,隐含层权值的修正量Δwij,隐含层阈值的修正量i。kikiwEw;kkEaa;ijijEww;iiE(2-7)输出层权值调整公式:kikkkkkikkkikiwnetnetooEwnetnetEwEw(2-8)输出层阈值调整公式:kkkkkkkkkknetonetEEEaanetaoneta(2-9)隐含层权值调整公式:iiiijijiijiiijnetynetEEEwwnetwynetw(2-10)隐含层阈值调整公式:iiiiiiiiiinetynetEEEnetynet(2-11)又因为:11()PLppkkpkkEToo(2-12)ikikywnet,1kkneta,ijijnetxw,1iinet(2-12)11()'()PLppkkkkipkiETonetwy(2-14))(iiinetnety(2-15)'()kkkonetnet(2-16)所以最后得到以下公式:11()'PLppki
本文标题:利用matlab仿真的BP-ANN分类器设计
链接地址:https://www.777doc.com/doc-4345712 .html