收藏 分销(赏)

算法及其优缺点.pptx

上传人:w****g 文档编号:4165945 上传时间:2024-08-08 格式:PPTX 页数:28 大小:483.77KB
下载 相关 举报
算法及其优缺点.pptx_第1页
第1页 / 共28页
算法及其优缺点.pptx_第2页
第2页 / 共28页
点击查看更多>>
资源描述
BP算法算法误差反传(Error Back Propagation)基于基于BP算法的多层感知器的模型算法的多层感知器的模型三层三层BPBP网络网络输入层输入层隐层隐层输出层输出层模型的数学表达模型的数学表达输入向量:输入向量:X X=(=(x x1 1,x,x2 2,x,xi i,x,xn n)T T隐层输出向量:隐层输出向量:Y Y=(=(y y1 1,y,y2 2,y,yj j,y,ymm)T T输出层输出向量:输出层输出向量:O O=(=(o o1 1,o,o2 2,o,ok k,o,ol l)T T期望输出向量:期望输出向量:d d=(=(d d1 1,d,d2 2,d,dk k,d,dl l)T T输入层到隐层之间的权值矩阵:输入层到隐层之间的权值矩阵:V=V=(V V1 1,V V2 2,V Vj j,V Vmm)隐层到输出层之间的权值矩阵:隐层到输出层之间的权值矩阵:W=W=(WW1 1,WW2 2,WWk k,WWl l)各个变量之间如何建立联系,来描述整个网络?各个变量之间如何建立联系,来描述整个网络?神经网络的学习神经网络的学习学习的过程:学习的过程:神经网络在外界输入样本的刺激下不断改变网络的连神经网络在外界输入样本的刺激下不断改变网络的连接权值乃至拓扑结构,以使网络的输出不断地接近期接权值乃至拓扑结构,以使网络的输出不断地接近期望的输出。望的输出。学习的本质:学习的本质:对可变权值的动态调整对可变权值的动态调整学习规则:学习规则:权值调整规则,即在学习过程中网络中各神经元的连权值调整规则,即在学习过程中网络中各神经元的连接权变化所依据的一定的调整规则。接权变化所依据的一定的调整规则。BPBP算法是一种学习规则算法是一种学习规则BP算法的基本思想算法的基本思想 学习的类型:有导师学习学习的类型:有导师学习 核心思想:核心思想:将输出误差将输出误差以某种形式以某种形式通过隐层向输入层逐层反传通过隐层向输入层逐层反传 学习的过程:学习的过程:信号的正向传播信号的正向传播 误差的反向传播误差的反向传播将误差分摊给各层的所有将误差分摊给各层的所有单元各层单元的误单元各层单元的误差信号差信号修正各单元权修正各单元权值值BP算法的学习过程算法的学习过程 正向传播:正向传播:输入样本输入层各隐层输出层输入样本输入层各隐层输出层 判断是否转入反向传播阶段:判断是否转入反向传播阶段:若输出层的实际输出与期望的输出(教师信号)不符若输出层的实际输出与期望的输出(教师信号)不符 误差反传误差反传 误差以某种形式在各层表示修正各层单元的权误差以某种形式在各层表示修正各层单元的权值值 网络输出的误差减少到可接受的程度网络输出的误差减少到可接受的程度进行到预先设定的学习次数为止进行到预先设定的学习次数为止建立权值变化量与误差之间的关系建立权值变化量与误差之间的关系输出层与隐层之间的连接权值调整隐层和输入层之间的连接权值调整j=0,1,2,m;k=1,2,l (3.4.9a)i=0,1,2,n;j=1,2,m (3.4.9b)式中负号表示梯度下降,常数式中负号表示梯度下降,常数(0,1)表示比例系数,反映了训练表示比例系数,反映了训练速率。可以看出速率。可以看出BP算法属于算法属于学习规则类,这类算法常被称为误学习规则类,这类算法常被称为误差的梯度下降差的梯度下降(Gradient Descent)算法。算法。BP算法的程序实现算法的程序实现(1)初始化;初始化;(4)计算各层误差信号;计算各层误差信号;(5)调整各层权值;调整各层权值;(6)检查是否对所有样本完成一次检查是否对所有样本完成一次 轮训;轮训;(7)检查网络总误差是否达到精检查网络总误差是否达到精 度要求。度要求。(2)输入训练样本对输入训练样本对X Xp、d dp计算各层输出;计算各层输出;(3)计算网络输出误差;计算网络输出误差;BP算法的程序实现算法的程序实现然后根据总误差计算各层的误差然后根据总误差计算各层的误差信号并调整权值。信号并调整权值。另另一一种种方方法法是是在在所所有有样样本本输输入之后,计算网络的总误差:入之后,计算网络的总误差:BP网络的主要功能网络的主要功能(1)非线性映射能力非线性映射能力 多层前馈网能学习和存贮大量输入多层前馈网能学习和存贮大量输入-输出模输出模式映射关系,而无需事先了解描述这种映射关式映射关系,而无需事先了解描述这种映射关系的数学方程。只要能提供足够多的样本模式系的数学方程。只要能提供足够多的样本模式对供对供BP网络进行学习训练,它便能完成由网络进行学习训练,它便能完成由n维输维输入空间到入空间到m维输出空间的非线性映射。维输出空间的非线性映射。多层前馈网的主要能力多层前馈网的主要能力(2)泛化能力泛化能力 当向网络输入训练时未曾见过的非样本数据当向网络输入训练时未曾见过的非样本数据时,网络也能完成由输入空间向输出空间的正确时,网络也能完成由输入空间向输出空间的正确映射。这种能力称为多层前馈网的泛化能力。映射。这种能力称为多层前馈网的泛化能力。(3)容错能力容错能力 输入样本中带有较大的误差甚至个别错误对网输入样本中带有较大的误差甚至个别错误对网络的输入输出规律影响很小。络的输入输出规律影响很小。误差曲面与误差曲面与BP算法的局限性算法的局限性 误差函数的可调整参误差函数的可调整参数的个数数的个数nw等于各层权值等于各层权值数加上阈值数,即:数加上阈值数,即:误差误差E是是nw+1维空间中维空间中一个形状极为复杂的曲面,一个形状极为复杂的曲面,该曲面上的每个点的该曲面上的每个点的“高度高度”对应于一个误差值,每个对应于一个误差值,每个点的坐标向量对应着点的坐标向量对应着nw个权个权值,因此称这样的空间为误值,因此称这样的空间为误差的权空间。差的权空间。误差曲面的分布误差曲面的分布BP算法的局限性算法的局限性 曲面的分布特点曲面的分布特点-算法的局限性算法的局限性(1)(1)存在平坦区域存在平坦区域-误差下降缓慢,影响收敛速度误差下降缓慢,影响收敛速度(2)(2)存在多个极小点存在多个极小点-易陷入局部最小点易陷入局部最小点 曲面分布特点曲面分布特点1:存在平坦区域:存在平坦区域平坦误差的梯度变化小平坦误差的梯度变化小平坦误差的梯度变化小平坦误差的梯度变化小 接近于零接近于零接近于零接近于零存在平坦区域的原因分析存在平坦区域的原因分析 接近于零的情况分析接近于零的情况分析造成平坦区的原因:造成平坦区的原因:各节点的净输入过大各节点的净输入过大对应着误差的某个谷点对应着误差的某个谷点 平坦区平坦区 曲面分布特点曲面分布特点2:存在多个极小点:存在多个极小点 误差梯度为零误差梯度为零多数极小点都是局部极小,即使是全局极小多数极小点都是局部极小,即使是全局极小往往也不是唯一的。往往也不是唯一的。单权值单权值双权值双权值曲面分布特点曲面分布特点2:存在多个极小点:存在多个极小点BPBP算法算法 以误差梯度下降为权值调整原则以误差梯度下降为权值调整原则误差曲面的这一特点误差曲面的这一特点 使之无法辨别极小点的性质使之无法辨别极小点的性质导致的结果:导致的结果:因而训练经常陷入某个局部极小点而不能自拔,因而训练经常陷入某个局部极小点而不能自拔,从从而使训练无法收敛于给定误差。而使训练无法收敛于给定误差。标准标准BP算法的改进引言算法的改进引言 误差曲面的形状固有的误差曲面的形状固有的 算法的作用是什么?算法的作用是什么?调整权值,找到最优点调整权值,找到最优点 那么如何更好地调整权值?那么如何更好地调整权值?利用算法使得权值在更新的过程中,利用算法使得权值在更新的过程中,走走 合适的路径,比如跳合适的路径,比如跳出平坦区来提高收敛速度,跳出局部最小点等等出平坦区来提高收敛速度,跳出局部最小点等等 如何操作?如何操作?需要在进入平坦区或局部最小点时进行一些判断,通过改变某些需要在进入平坦区或局部最小点时进行一些判断,通过改变某些参数来使得权值的调整更为合理。参数来使得权值的调整更为合理。标准的标准的BP算法内在的缺陷:算法内在的缺陷:易形成局部极小而得不到全局最优;易形成局部极小而得不到全局最优;训练次数多使得学习效率低,收敛速度慢;训练次数多使得学习效率低,收敛速度慢;隐节点的选取缺乏理论指导;隐节点的选取缺乏理论指导;训练时学习新样本有遗忘旧样本的趋势。训练时学习新样本有遗忘旧样本的趋势。针对上述问题,国内外已提出不少有效的改进算法,针对上述问题,国内外已提出不少有效的改进算法,下面仅介绍其中下面仅介绍其中3 3种较常用的方法。种较常用的方法。标准标准BP算法的改进算法的改进改进1:增加动量项改进2:自适应调节学习率改进3:引入陡度因子改进改进1:增加动量项:增加动量项提出的原因:标准BP算法只按t时刻误差的梯度降方向调整,而没有考虑t时刻以前的梯度方向从而常使训练过程发生振荡,收敛缓慢。方法:为动量系数,一般有为动量系数,一般有(0 0,1 1)改进改进1:增加动量项:增加动量项实质:从前一次权值调整量中取出一部分迭加到本次权值调从前一次权值调整量中取出一部分迭加到本次权值调整量中整量中作用:动量项反映了以前积累的调整经验,对于动量项反映了以前积累的调整经验,对于t t时刻的调整时刻的调整起阻尼作用。起阻尼作用。当误差曲面出现骤然起伏时,可减小振荡趋势,提高当误差曲面出现骤然起伏时,可减小振荡趋势,提高训练速度。训练速度。改进改进2:自适应调节学习率:自适应调节学习率提出的原因:标准标准BPBP算法中,学习率算法中,学习率 也称为步长,确定一个从始也称为步长,确定一个从始至终都合适的最佳学习率很难。至终都合适的最佳学习率很难。平坦区域内,平坦区域内,太小会使训练次数增加;太小会使训练次数增加;在误差变化剧烈的区域,在误差变化剧烈的区域,太大会因调整量过大而跨太大会因调整量过大而跨过较窄的过较窄的“坑凹坑凹”处,使训练出现振荡,反而使迭代处,使训练出现振荡,反而使迭代次数增加。次数增加。改进改进2:自适应调节学习率:自适应调节学习率基本思想:基本思想:自适应改变学习率,使其根据环境变化增大或减小。自适应改变学习率,使其根据环境变化增大或减小。基本方法:基本方法:设一初始学习率,若经过一批次权值调整后使总误差设一初始学习率,若经过一批次权值调整后使总误差,则本次调整无效,且,则本次调整无效,且=(1 1 1)。改进改进3:引入陡度因子引入陡度因子提出的原因:提出的原因:误差曲面上存在着平坦区域。误差曲面上存在着平坦区域。权值调整进入平坦区的原因是神经元输出进入了转移权值调整进入平坦区的原因是神经元输出进入了转移函数的饱和区。函数的饱和区。基本思想:基本思想:如果在调整进入平坦区后,设法压缩神经元的净输入,如果在调整进入平坦区后,设法压缩神经元的净输入,使其输出退出转移函数的不饱和区,就可以改变误差使其输出退出转移函数的不饱和区,就可以改变误差函数的形状,从而使调整脱离平坦区。函数的形状,从而使调整脱离平坦区。改进改进3:引入陡度因子引入陡度因子 基本方法:基本方法:在原转移函数中引入一个陡度因子在原转移函数中引入一个陡度因子 当发现当发现EE接近零而接近零而d-od-o仍较大时,可判断已进入平坦区,仍较大时,可判断已进入平坦区,此时令此时令11;当退出平坦区后,再令当退出平坦区后,再令=1=1。改进改进3:引入陡度因子引入陡度因子 作用分析:作用分析:1 1:netnet坐标压缩了坐标压缩了 倍,神经元的倍,神经元的转移函数曲线的敏感区段变长,从而转移函数曲线的敏感区段变长,从而可使绝对值较大的可使绝对值较大的netnet退出饱和值。退出饱和值。=1=1:转移函数恢复原状,对绝对值较转移函数恢复原状,对绝对值较小的小的netnet具有较高的灵敏度。具有较高的灵敏度。应用结果表明该方法对于提高应用结果表明该方法对于提高BPBP算法算法的收敛速度十分有效。的收敛速度十分有效。总结总结 基于基于BPBP算法的多层前馈网络模型算法的多层前馈网络模型 BPBP算法的实现算法的实现 基本思想基本思想 推导过程推导过程 程序实现程序实现 BPBP学习算法的功能学习算法的功能 BPBP学习算法的局限性学习算法的局限性 BPBP学习算法的改进学习算法的改进
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服