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

上传人:飞*** 文档编号:48498180 上传时间:2018-07-16 格式:PPT 页数:20 大小:613KB
返回 下载 相关 举报
神经网络优化方法(bp算法缺陷)_第1页
第1页 / 共20页
神经网络优化方法(bp算法缺陷)_第2页
第2页 / 共20页
神经网络优化方法(bp算法缺陷)_第3页
第3页 / 共20页
神经网络优化方法(bp算法缺陷)_第4页
第4页 / 共20页
神经网络优化方法(bp算法缺陷)_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《神经网络优化方法(bp算法缺陷)》由会员分享,可在线阅读,更多相关《神经网络优化方法(bp算法缺陷)(20页珍藏版)》请在金锄头文库上搜索。

1、智能中国网提供学习支持 第3章 神经网络优化方法3.1 BP网络学习算法的改进标准BP算法的误差空间是N维空间中一个形状 极为复杂的曲面,该曲面上的每个点的“高度” 对应于一个误差值,每个点的坐标向量对应着 N个权值单权值双权值3.1 BP网络学习算法的改进pBP网络学习算法存在的问题 存在平坦区域影响-误差下降缓慢,影响收敛速度 。 原因-误差对权值的梯度变化小 接近于零由各节点的净输入过大而 引起。 p分析:激活函数为Sigmod函数3.1 BP网络学习算法的改进p存在平坦区域的原因分析权值权值修正量修正量:输出的导数:输出的导数:3.1 BP网络学习算法的改进存在平坦区域的原因分析: 第

2、一种可能是 充分接近 第二种可能是 充分接近0 么三种可能是 充分接近1造成平坦区的原因:各节点的净输入过大对应着误差的某个谷点 对应着误差的平坦区 3.1 BP网络学习算法的改进p存在多个极小点 影响-易陷入局部最小点原因: 以误差梯度下降为权值调整原则, 误差曲面上可能存在多个梯度为0的点,多数极小点都是 局部极小,即使是全局极小往往也不是唯一的,使之无 法辨别极小点的性质 导致的结果: 使得训练经常陷入某个局部极小点而不能 自拔,从而使训练无法收敛于给定误差。3.1 BP网络学习算法的改进p BP算法缺陷小结 易形成局部极小而得不到全局最优; 训练次数多使得学习效率低,收敛速度慢 ; 隐

3、节点的选取缺乏理论指导; 训练时学习新样本有遗忘旧样本的趋势。针对上述问题,国内外已提出不少有 效的改进算法,下面将介绍其中几种较常 用的方法。3.1.1消除样本输入顺序影响的改进算法 p在线学习方式时,网络受后面输入样本的影响较大,严 重时,会影响用户要求的训练精度。为了消除这种样本 顺序对结果的影响,可以采用批处理学习方式,即使用 一批学习样本产生的总误差来调整权值,用公式表示如 下:p解决了因样本输入顺序引起的精度问题和训练的抖动问 题。但是,该算法的收敛速度相对来说还是比较慢的。 3.1.1消除样本输入顺序影响的改进算法算法流程图网络初始网络初始化化计计算算输出输出层层权权值值调调值值

4、计计算隐含层算隐含层权权值值调调值值计计算算全局误差全局误差是结束判判断是否断是否结束结束? 否更更新新权权值值3.1.2 附加动量的改进算法p在反向传播法的基础上在每一个权值(或阈值)的变化 上加上一项正比于上一次权值(或阈值)变化量的值, 并根据反向传播法来产生新的权值(或阈值)变化 p带有附加动量因子的权值调节公式为 :p可以防止的出现即最后一次权值的变化量为0,有助于使 网络从误差曲面的局部极小值中跳出。但对于大多数实 际应用问题,该法训练速度仍然很慢。 pMATLAB中的工具函数traingdm()即对应于附加动量法。3.1.3 采用自适应调整参数的改进算法p采用自适应调整参数的改进

5、算法的基本设想是学习 率应根据误差变化而自适应调整,以使权系数调整 向误差减小的方向变化,其迭代过程可表示为 :p在很小的情况下,采用自适应调整参数的改进算法 仍然存在权值的修正量很小的问题,致使学习率降 低。 pMATLAB中的工具函数traingda()即对应于自适应调 整参数法。 3.1.4 使用弹性方法的改进算法pBP网络通常采用Sigmoid隐含层。当输入的函数很大时 ,斜率接近于零,这将导致算法中的梯度幅值很小,可 能使网络权值的修正过程几乎停顿下来。弹性方法只取 偏导数的符号,而不考虑偏导数的幅值。其权值修正的 迭代过程可表示为 :p在弹性BP算法中,当训练发生振荡时,权值的变化

6、量将 减小;当在几次迭代过程中权值均朝一个方向变化时, 权值的变化量将增大。因此,使用弹性方法的改进算法 ,其收敛速度要比前几种方法快得多 3.1.5 使用拟牛顿法的改进算法p梯度法的缺点是搜索过程收敛速度较慢,牛顿法在搜索 方向上比梯度法有改进,它不仅利用了准则函数在搜索 点的梯度,而且还利用了它的二次导数,就是说利用了 搜索点所能提供的更多信息,使搜索方向能更好地指向 最优点。它的迭代方程为 :p收敛速度比一阶梯度快,但计算又较复杂,比较典型的 有BFGS拟牛顿法和一步正切拟牛顿法。 pMATLAB中的工具函数trainbfg()、trainoss()即对应拟 牛顿法中的BFGS拟牛顿法和

7、一步正切拟牛顿法。 3.1.6 基于共轭梯度法的改进算法p梯度下降法收敛速度较慢,而拟牛顿法计算又较复杂, 共轭梯度法则力图避免两者的缺点。共轭梯度法也是一 种改进搜索方向的方法,它是把前一点的梯度乘以适当 的系数,加到该点的梯度上,得到新的搜索方向。其迭 代方程为 :3.1.6 基于共轭梯度法的改进算法p共轭梯度法比大多数常规的梯度下降法 收敛快,并且只需增加很少的存储量和计 算量。 p对于权值很多的网络,采用共轭梯度法 不失为一种较好的选择。 pMATLAB中的工具函数traincgb()、 traincgf()、traincgp()即对应于共轭梯 度法。 3.1.7 基于Levenber

8、g-Marquardt法的改进算法p梯度下降法在最初几步下降较快,但随着接近最优值, 由于梯度趋于零,致使误差函数下降缓慢,而牛顿法则 可在最优值附近产生一个理想的搜索方向。 pLevenberg-Marquardt法实际上是梯度下降法和牛顿法 的结合,它的优点在于网络权值数目较少时收敛非常迅 速。应用Levenberg-Marquardt优化算法比传统的BP及 其它改进算法(如共轭梯度法,附加动量法、自适应调 整法及拟牛顿法等)迭代次数少,收敛速度快,精确度 高。 pMATLAB中的工具函数trainlm()即对应Levenberg- Marquardt法的改进算法。 BP神经网络优化算法对比示例课后练习:BP神经网络优化算法对比p建立一个BP网络,使用各种优化算法对 应的学习函数对神经网络进行训练,实现 对函数 的逼近,并计算出各 种学习方法训练网络时所使用的时间小结pBP网络学习算法存在的问题 pBP网络学习算法的改正算法 消除样本输入顺序影响的改进算法 附加动量的改进算法 采用自适应调整参数的改进算法 使用弹性方法的改进算法 使用拟牛顿法的改进算法 基于共轭梯度法的改进算法 基于Levenberg-Marquardt法的改进算法 p优化算法对比谢 谢!

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 其它文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号