版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、智能中国网提供学习支持,第,3,章,神经网络优化方法,1,3.1 BP,网络学习算法的改进,标准,BP,算法的误差,空间,是,N,维空间中一个形状,极为复杂的曲面,该曲面上的每个点的“高度”,对应于一个误差值,每个点的坐标向量对应着,N,个权值,单权值,双权值,2,3.1 BP,网络学习算法的改进,?,BP,网络学习算法存在的问题,?,存在平坦区域,影响,-,误差下降缓慢,影响收敛速度。,原因,-,误差对权值的梯度变化小接近于,零,由各节点的净输入过大而引起。,?,分析:激活函数为,Sigmod,函数,3,3.1 BP,网络学习算法的改进,?,存在平坦区域的原因分析,权值修正量:,输出的导数:
2、,(,),(,),(,),(,(,),(,),(,),(,(,),(,)(1,(,),(,),o,o,h,ho,o,ho,o,o,o,o,o,o,o,o,yi,e,e,k,ho,k,w,yi,w,k,d,k,yo,k,yo,k,d,k,yo,k,yo,k,yo,k,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,2,2,1,(,),(,),1,1,1,(,),(1,),(1,),(,)(1,(,),o,yi,yi,yi,o,yi,yi,o,o,yo,k,f,yi,e,e,e,yo,k,e,e,yo,k,yo,k,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?
3、,?,4,3.1 BP,网络学习算法的改进,(,),o,yo,k,(,),o,d,k,(,),o,yo,k,存在平坦区域的原因分析:,?,第一种可能是,充分接近,?,第二种可能是,充分接近,0,?,么三种可能是,充分接近,1,造成平坦区的原因:,各节点的净输入过大,(,),o,yo,k,对应着误差的某个谷点,对应着误差的平坦区,1.0,0.5,yi,0,(,),o,yo,k,5,3.1 BP,网络学习算法的改进,?,存在多个极小点,?,影响,-,易陷入局部最小点,原因:,以误差梯度下降为权值调整原则,,误差曲面上可能存在多个梯度为,0,的点,多数极小点都是,局部极小,即使是全局极小往往也不是唯
4、一的,,使之无,法辨别极小点的性质,?,导致的结果:,?,使得训练经常陷入某个局部极小点而不能,自拔,从而使训练无法收敛于给定误差。,6,3.1 BP,网络学习算法的改进,?,BP,算法缺陷小结,?,易形成局部极小而得不到全局最优;,?,训练次数多使得学习效率低,收敛速度慢;,?,隐节点的选取缺乏理论指导;,?,训练时学习新样本有遗忘旧样本的趋势。,针对上述问题,国内外已提出不少有,效的改进算法,下面将介绍其中几种较常,用的方法。,7,3.1.1,消除样本输入顺序影响的改进算法,?,在线学习方式时,网络受后面输入样本的影响较大,,严重时,会影响用户要求的训练精度。为了消除这种样,本顺序对结果的
5、影响,可以采用批处理学习方式,即使,用一批学习样本产生的总误差来调整权值,用公式表示,如下:,?,解决了因样本输入顺序引起的精度问题和训练的抖动,问题。但是,该算法的收敛速度相对来说还是比较慢的。,p,1,(,),(,),m,ij,ij,o,h,k,w,w,k,ho,k,?,?,?,?,?,?,?,?,8,3.1.1,消除样本输入顺序影响的改进算法,算法流程图,网络初始化,计算输出层权值调值,计算隐含层权值调值,计算全局误差,是,结,束,判断是否结束?,否,更新权值,9,3.1.2,附加动量的改进算法,?,在反向传播法的基础上在每一个权值(或阈值)的变化,上加上一项正比于上一次权值(或阈值)变
6、化量的值,,并根据反向传播法来产生新的权值(或阈值)变化,?,带有附加动量因子的权值调节公式为,:,?,可以防止的出现即最后一次权值的变化量为,0,,有助于使,网络从误差曲面的局部极小值中跳出。但对于大多数实,际应用问题,该法训练速度仍然很慢。,?,MATLAB,中的工具函数,traingdm(),即对应于附加动量法。,(,1),(1,),f(,(,),(,(,),(,1),c,c,k,m,k,m,k,k,?,?,?,?,?,?,?,?,?,w,w,w,w,10,3.1.3,采用自适应调整参数的改进算法,?,采用自适应调整参数的改进算法的基本设想是学习,率应根据误差变化而自适应调整,以使权系数
7、调整,向误差减小的方向变化,其迭代过程可表示为,:,?,在很小的情况下,采用自适应调整参数的改进算法,仍然存在权值的修正量很小的问题,致使学习率降,低。,?,MATLAB,中的工具函数,traingda(),即对应于自适应调,整参数法。,(,1),(,),f(,(,),k,k,k,?,?,?,?,?,w,w,w,11,3.1.4,使用弹性方法的改进算法,?,BP,网络通常采用,Sigmoid,隐含层。当输入的函数很大时,,斜率接近于零,这将导致算法中的梯度幅值很小,可能,使网络权值的修正过程几乎停顿下来。弹性方法只取偏,导数的符号,而不考虑偏导数的幅值。其权值修正的迭,代过程可表示为,:,?,
8、在弹性,BP,算法中,当训练发生振荡时,权值的变化量,将减小;当在几次迭代过程中权值均朝一个方向变化时,,权值的变化量将增大。因此,使用弹性方法的改进算法,,其收敛速度要比前几种方法快得多,(,1),(,),(,(,),(,1),(,f(,(,),k,k,k,k,sign,k,?,?,?,?,?,?,w,w,w,w,w,12,3.1.5,使用拟牛顿法的改进算法,?,梯度法的缺点是搜索过程收敛速度较慢,牛顿法在搜索,方向上比梯度法有改进,它不仅利用了准则函数在搜索,点的梯度,而且还利用了它的二次导数,就是说利用了,搜索点所能提供的更多信息,使搜索方向能更好地指向,最优点。它的迭代方程为,:,?,
9、收敛速度比一阶梯度快,但计算又较复杂,比较典型的,有,BFGS,拟牛顿法和一步正切拟牛顿法。,?,MATLAB,中的工具函数,trainbfg(),、,trainoss(),即对应拟,牛顿法中的,BFGS,拟牛顿法和一步正切拟牛顿法。,1,(,1),(,),f(,(,),k,k,k,?,?,?,?,?,w,w,D,w,13,3.1.6,基于共轭梯度法的改进算法,?,梯度下降法收敛速度较慢,而拟牛顿法计算又较复杂,,共轭梯度法则力图避免两者的缺点。共轭梯度法也是一,种改进搜索方向的方法,它是把前一点的梯度乘以适当,的系数,加到该点的梯度上,得到新的搜索方向。其迭,代方程为,:,(,1),(,),
10、(,),(,),k,k,k,S,k,?,?,?,?,?,w,w,(,),f(,(,),(,1),(,1),S,k,k,k,S,k,?,?,?,?,?,w,v,?,(,),k,最佳步长,2,2,f(,(,),(,1),f(,(,1),k,k,k,?,?,?,?,?,w,v,w,14,3.1.6,基于共轭梯度法的改进算法,?,共轭梯度法比大多数常规的梯度下降法,收敛快,并且只需增加很少的存储量和计,算量。,?,对于权值很多的网络,采用共轭梯度法,不失为一种较好的选择。,?,MATLAB,中的工具函数,traincgb(),、,traincgf(),、,traincgp(),即对应于共轭梯,度法。,
11、15,3.1.7,基于,Levenberg-Marquardt,法的改进算法,?,梯度下降法在最初几步下降较快,但随着接近最优值,,由于梯度趋于零,致使误差函数下降缓慢,而牛顿法则,可在最优值附近产生一个理想的搜索方向。,?,Levenberg-Marquardt,法实际上是梯度下降法和牛顿法,的结合,它的优点在于网络权值数目较少时收敛非常迅,速。应用,Levenberg-Marquardt,优化算法比传统的,BP,及,其它改进算法(如共轭梯度法,附加动量法、自适应调,整法及拟牛顿法等)迭代次数少,收敛速度快,精确度,高。,?,MATLAB,中的工具函数,trainlm(),即对应,Levenberg-,Marquardt,法的改进算法。,16,BP,神经网络优化算法对比示例,17,课后练习:,BP,神经网络优化算法对比,?,建立一个,BP,网络,使用各种优化算法对,应的学习函数对神经网络进行训练,实现,对函数,的逼近,并计算出各,种学习方法训练网络时所使用的时间,sin(,),x,y,e,x,?,?,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论