神经网络优化方法(bp算法缺陷)

上传人:彧*** 文档编号:240747333 上传时间:2024-05-04 格式:PPT 页数:20 大小:613KB
返回 下载 相关 举报
神经网络优化方法(bp算法缺陷)_第1页
第1页 / 共20页
神经网络优化方法(bp算法缺陷)_第2页
第2页 / 共20页
神经网络优化方法(bp算法缺陷)_第3页
第3页 / 共20页
点击查看更多>>
资源描述
智能中国网提供学习支持智能中国网提供学习支持第第3 3章章 神经网络优化方法神经网络优化方法3.1 BP网络学习算法的改进标准标准BP算法的误差算法的误差空间空间是是N维空间中一个形状维空间中一个形状极为复杂的曲面,该曲面上的每个点的极为复杂的曲面,该曲面上的每个点的“高度高度”对应于一个误差值,每个点的坐标向量对应对应于一个误差值,每个点的坐标向量对应着着N个权值个权值单权值单权值双权值双权值3.1 BP网络学习算法的改进pBPBP网络学习算法网络学习算法存在的问题存在的问题存在平坦区域影响影响-误差下降缓慢,影响收敛速度。误差下降缓慢,影响收敛速度。原因原因-误差对权值的梯度变化小接近误差对权值的梯度变化小接近于零于零 由各节点的净输入过大而引起。由各节点的净输入过大而引起。p分析:激活函数为分析:激活函数为SigmodSigmod函数函数3.1 BP网络学习算法的改进p存在平坦区域的原因分析存在平坦区域的原因分析权值权值权值权值修正量修正量修正量修正量:输出的导数:输出的导数:输出的导数:输出的导数:3.1 BP网络学习算法的改进 存在平坦区域的原因分析:存在平坦区域的原因分析:第一种可能是 充分接近第二种可能是 充分接近0么三种可能是 充分接近1 造成平坦区的原因:造成平坦区的原因:各节点的净输入过大对应着误差的某个谷点对应着误差的某个谷点 对应着误差的平坦区对应着误差的平坦区 3.1 BP网络学习算法的改进p存在多个极小点存在多个极小点影响-易陷入局部最小点 原因:原因:以误差梯度下降为权值调整原则,以误差梯度下降为权值调整原则,误差曲面上可能存在多个梯度为误差曲面上可能存在多个梯度为0 0的点,多数极小点都是的点,多数极小点都是局部极小,即使是全局极小往往也不是唯一的,局部极小,即使是全局极小往往也不是唯一的,使之无使之无法辨别极小点的性质法辨别极小点的性质导致的结果:使得训练经常陷入某个局部极小点而不能自拔,从而使训练无法收敛于给定误差。3.1 BP网络学习算法的改进p BPBP算法缺陷小结算法缺陷小结 易形成局部极小而得不到全局最优;训练次数多使得学习效率低,收敛速度慢;隐节点的选取缺乏理论指导;训练时学习新样本有遗忘旧样本的趋势。针对上述问题,国内外已提出不少有针对上述问题,国内外已提出不少有效的改进算法,下面将介绍其中几种较常效的改进算法,下面将介绍其中几种较常用的方法。用的方法。3.1.13.1.1消除样本输入顺序影响的改进算法消除样本输入顺序影响的改进算法 p在线学习方式时,网络受后面输入样本的影响较大,严在线学习方式时,网络受后面输入样本的影响较大,严重时,会影响用户要求的训练精度。为了消除这种样本重时,会影响用户要求的训练精度。为了消除这种样本顺序对结果的影响,可以采用批处理学习方式,即使用顺序对结果的影响,可以采用批处理学习方式,即使用一批学习样本产生的总误差来调整权值,用公式表示如一批学习样本产生的总误差来调整权值,用公式表示如下:下:p解决了因样本输入顺序引起的精度问题和训练的抖动问解决了因样本输入顺序引起的精度问题和训练的抖动问题。但是,该算法的收敛速度相对来说还是比较慢的。题。但是,该算法的收敛速度相对来说还是比较慢的。3.1.13.1.1消除样本输入顺序影响的改进算法消除样本输入顺序影响的改进算法算算法法流程流程图图网络初始网络初始网络初始网络初始化化化化计计计计算算算算输出输出输出输出层层层层权权权权值值值值调调调调值值值值计计计计算隐含层算隐含层算隐含层算隐含层权权权权值值值值调调调调值值值值计计计计算算算算全局误差全局误差全局误差全局误差是是结束结束判判判判断是否断是否断是否断是否结束结束结束结束?否否更更更更新新新新权权权权值值值值3.1.2 3.1.2 附加动量的改进算法附加动量的改进算法p在反向传播法的基础上在每一个权值(或阈值)的变化在反向传播法的基础上在每一个权值(或阈值)的变化上加上一项正比于上一次权值(或阈值)变化量的值,上加上一项正比于上一次权值(或阈值)变化量的值,并根据反向传播法来产生新的权值(或阈值)变化并根据反向传播法来产生新的权值(或阈值)变化 p带有附加动量因子的权值调节公式为带有附加动量因子的权值调节公式为 :p可以防止的出现即最后一次权值的变化量为可以防止的出现即最后一次权值的变化量为0 0,有助于使,有助于使网络从误差曲面的局部极小值中跳出。但对于大多数实网络从误差曲面的局部极小值中跳出。但对于大多数实际应用问题,该法训练速度仍然很慢。际应用问题,该法训练速度仍然很慢。pMATLABMATLAB中的工具函数中的工具函数traingdmtraingdm()()即对应于附加动量法。即对应于附加动量法。3.1.3 3.1.3 采用自适应调整参数的改进算法采用自适应调整参数的改进算法p采用自适应调整参数的改进算法的基本设想是学习采用自适应调整参数的改进算法的基本设想是学习率应根据误差变化而自适应调整,以使权系数调整率应根据误差变化而自适应调整,以使权系数调整向误差减小的方向变化,其迭代过程可表示为向误差减小的方向变化,其迭代过程可表示为 :p在很小的情况下,采用自适应调整参数的改进算法在很小的情况下,采用自适应调整参数的改进算法仍然存在权值的修正量很小的问题,致使学习率降仍然存在权值的修正量很小的问题,致使学习率降低。低。pMATLABMATLAB中的工具函数中的工具函数traingdatraingda()()即对应于自适应调即对应于自适应调整参数法。整参数法。3.1.4 3.1.4 使用弹性方法的改进算法使用弹性方法的改进算法pBPBP网络通常采用网络通常采用SigmoidSigmoid隐含层。当输入的函数很大时,隐含层。当输入的函数很大时,斜率接近于零,这将导致算法中的梯度幅值很小,可能斜率接近于零,这将导致算法中的梯度幅值很小,可能使网络权值的修正过程几乎停顿下来。弹性方法只取偏使网络权值的修正过程几乎停顿下来。弹性方法只取偏导数的符号,而不考虑偏导数的幅值。其权值修正的迭导数的符号,而不考虑偏导数的幅值。其权值修正的迭代过程可表示为代过程可表示为 :p在弹性在弹性BPBP算法中,当训练发生振荡时,权值的变化量将算法中,当训练发生振荡时,权值的变化量将减小;当在几次迭代过程中权值均朝一个方向变化时,减小;当在几次迭代过程中权值均朝一个方向变化时,权值的变化量将增大。因此,使用弹性方法的改进算法,权值的变化量将增大。因此,使用弹性方法的改进算法,其收敛速度要比前几种方法快得多其收敛速度要比前几种方法快得多 3.1.5 3.1.5 使用拟牛顿法的改进算法使用拟牛顿法的改进算法p梯度法的缺点是搜索过程收敛速度较慢,牛顿法在搜索梯度法的缺点是搜索过程收敛速度较慢,牛顿法在搜索方向上比梯度法有改进,它不仅利用了准则函数在搜索方向上比梯度法有改进,它不仅利用了准则函数在搜索点的梯度,而且还利用了它的二次导数,就是说利用了点的梯度,而且还利用了它的二次导数,就是说利用了搜索点所能提供的更多信息,使搜索方向能更好地指向搜索点所能提供的更多信息,使搜索方向能更好地指向最优点。它的迭代方程为最优点。它的迭代方程为 :p收敛速度比一阶梯度快,但计算又较复杂,比较典型的收敛速度比一阶梯度快,但计算又较复杂,比较典型的有有BFGSBFGS拟牛顿法和一步正切拟牛顿法。拟牛顿法和一步正切拟牛顿法。pMATLABMATLAB中的工具函数中的工具函数trainbfgtrainbfg()()、trainosstrainoss()()即对应拟即对应拟牛顿法中的牛顿法中的BFGSBFGS拟牛顿法和一步正切拟牛顿法。拟牛顿法和一步正切拟牛顿法。3.1.6 3.1.6 基于共轭梯度法的改进算法基于共轭梯度法的改进算法p梯度下降法收敛速度较慢,而拟牛顿法计算又较复杂,梯度下降法收敛速度较慢,而拟牛顿法计算又较复杂,共轭梯度法则力图避免两者的缺点。共轭梯度法也是一共轭梯度法则力图避免两者的缺点。共轭梯度法也是一种改进搜索方向的方法,它是把前一点的梯度乘以适当种改进搜索方向的方法,它是把前一点的梯度乘以适当的系数,加到该点的梯度上,得到新的搜索方向。其迭的系数,加到该点的梯度上,得到新的搜索方向。其迭代方程为代方程为 :3.1.6 3.1.6 基于共轭梯度法的改进算法基于共轭梯度法的改进算法p共轭梯度法比大多数常规的梯度下降法共轭梯度法比大多数常规的梯度下降法收敛快,并且只需增加很少的存储量和计收敛快,并且只需增加很少的存储量和计算量。算量。p对于权值很多的网络,采用共轭梯度法对于权值很多的网络,采用共轭梯度法不失为一种较好的选择。不失为一种较好的选择。pMATLABMATLAB中的工具函数中的工具函数traincgbtraincgb()()、traincgftraincgf()()、traincgptraincgp()()即对应于共轭梯度法。即对应于共轭梯度法。3.1.7 3.1.7 基于基于LevenbergLevenberg-Marquardt-Marquardt法的改进算法法的改进算法p梯度下降法在最初几步下降较快,但随着接近最优值,梯度下降法在最初几步下降较快,但随着接近最优值,由于梯度趋于零,致使误差函数下降缓慢,而牛顿法则由于梯度趋于零,致使误差函数下降缓慢,而牛顿法则可在最优值附近产生一个理想的搜索方向。可在最优值附近产生一个理想的搜索方向。pLevenbergLevenberg-Marquardt-Marquardt法实际上是梯度下降法和牛顿法法实际上是梯度下降法和牛顿法的结合,它的优点在于网络权值数目较少时收敛非常迅的结合,它的优点在于网络权值数目较少时收敛非常迅速。应用速。应用LevenbergLevenberg-Marquardt-Marquardt优化算法比传统的优化算法比传统的BPBP及及其它改进算法(如共轭梯度法,附加动量法、自适应调其它改进算法(如共轭梯度法,附加动量法、自适应调整法及拟牛顿法等)迭代次数少,收敛速度快,精确度整法及拟牛顿法等)迭代次数少,收敛速度快,精确度高。高。pMATLABMATLAB中的工具函数中的工具函数trainlmtrainlm()()即对应即对应LevenbergLevenberg-MarquardtMarquardt法的改进算法。法的改进算法。BPBP神经网络优化算法对比示例神经网络优化算法对比示例课后练习:课后练习:BPBP神经网络优化算法对比神经网络优化算法对比p建立一个建立一个BPBP网络,使用各种优化算法对网络,使用各种优化算法对应的学习函数对神经网络进行训练,实现应的学习函数对神经网络进行训练,实现对函数对函数 的逼近,并计算出各的逼近,并计算出各种学习方法训练网络时所使用的时间种学习方法训练网络时所使用的时间小结小结pBPBP网络学习算法存在的问题网络学习算法存在的问题pBPBP网络学习算法的改正算法网络学习算法的改正算法消除样本输入顺序影响的改进算法消除样本输入顺序影响的改进算法 附加动量的改进算法附加动量的改进算法 采用自适应调整参数的改进算法采用自适应调整参数的改进算法 使用弹性方法的改进算法使用弹性方法的改进算法 使用拟牛顿法的改进算法使用拟牛顿法的改进算法 基于共轭梯度法的改进算法基于共轭梯度法的改进算法 基于基于LevenbergLevenberg-Marquardt-Marquardt法的改进算法法的改进算法 p优化算法对比优化算法对比谢谢 谢!谢!
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!