《人工神经网络讲稿ch4教案资料.ppt》由会员分享,可在线阅读,更多相关《人工神经网络讲稿ch4教案资料.ppt(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、人工神经网络讲稿ch44.1 概述概述 1、BP算法的出现算法的出现非循环多级网络的训练算法非循环多级网络的训练算法UCSD PDP小小组组的的Rumelhart、Hinton和和Williams1986年年独立地给出了独立地给出了BP算法清楚而简单的描述算法清楚而简单的描述1982年,年,Paker就完成了相似的工作就完成了相似的工作1974年,年,Werbos已提出了该方法已提出了该方法2、弱弱点点:训训练练速速度度非非常常慢慢、局局部部极极小小点点的的逃逃离离问问题题、算法不一定收敛算法不一定收敛3、优点:、优点:广泛的适应性和有效性。广泛的适应性和有效性。11/13/20222网络的拓
2、扑结构网络的拓扑结构 1.BP网的结构网的结构2.2.输输入入向向量量、输输出出向向量量的的维维数数、网网络络隐隐藏藏层层的层数和各个隐藏层神经元的个数的决定的层数和各个隐藏层神经元的个数的决定3.3.实实验验:增增加加隐隐藏藏层层的的层层数数和和隐隐藏藏层层神神经经元元个个数数不不一一定定总总能能够够提提高高网网络络精精度度和和表表达达能能力力4.4.BPBP网一般都选用二级网络网一般都选用二级网络11/13/20226网络的拓扑结构网络的拓扑结构x1o1输出层输出层隐藏层隐藏层输入层输入层x2o2omxnWV11/13/202274.2.2 训练过程概述训练过程概述 样本:样本:(输入向量
3、,理想输出向量输入向量,理想输出向量)权初始化:权初始化:“小随机数小随机数”与饱和状态;与饱和状态;“不不同同”保证网络可以学。保证网络可以学。1 1、向前传播阶段:、向前传播阶段:(1)从从样样本本集集中中取取一一个个样样本本(Xp,Yp),将将Xp输入网络;输入网络;(2)计算相应的实际输出)计算相应的实际输出Op:Op=Fl(F2(F1(XpW(1)W(2)W(L)11/13/202284.2.2 训练过程概述训练过程概述 2 2、向后传播阶段、向后传播阶段误差传播阶段:误差传播阶段:(1)计计算算实实际际输输出出Op与与相相应应的的理理想想输输出出Yp的的差;差;(2)按极小化误差的
4、方式调整权矩阵。)按极小化误差的方式调整权矩阵。(3)网络关于第)网络关于第p p个样本的误差测度:个样本的误差测度:(4)网络关于整个样本集的误差测度:网络关于整个样本集的误差测度:11/13/202294.2.3 误差传播分析误差传播分析 1、输出层权的调整、输出层权的调整wpq=wpq+wpqwpq=qop=fn(netq)(yq-oq)op=oq(1-oq)(yq-oq)op wpqANpANq第第L-1层层第第L层层wpq11/13/2022102 2、隐藏层权的调整、隐藏层权的调整 ANpANqANhvhppk-11kwp1wpqqkwpmmk第第k-2层层第第k层层第第k-1层层
5、11/13/2022112 2、隐藏层权的调整、隐藏层权的调整pk-1的值和的值和1k,2k,mk 有关有关不妨认为不妨认为pk-1通过权通过权wp1对对1k做出贡献,做出贡献,通过权通过权wp2对对2k做出贡献,做出贡献,通过权通过权wpm对对mk做出贡献。做出贡献。pk-1=fk-1(netp)(wp11k+wp22k+wpmm k)11/13/2022122 2、隐藏层权的调整、隐藏层权的调整vhp=vhp+vhp vhp=pk-1ohk-2=fk-1(netp)(wp11k+wp22k+wpmmk)ohk-2=opk-1(1-opk-1)(wp11k+wp22k+wpmmk)ohk-2
6、ANpANqANhvhppk-11kwp1wpmqkwpqmk第第k-2层层第第k层层第第k-1层层11/13/2022134.2.4 基本的基本的BP算法算法 样本集:样本集:S=(X1,Y1),(,(X2,Y2),),(,(Xs,Ys)基本思想基本思想:逐一地根据样本集中的样本逐一地根据样本集中的样本(Xk,Yk)计算出实际输计算出实际输出出Ok和误差测度和误差测度E1,对,对W(1),W(2),W(L)各各做一次调整,重复这个循环,直到做一次调整,重复这个循环,直到Ep do4.1E=0;11/13/202215算法算法4-1基本基本BP算法算法 4.2 对对S中的每一个样本(中的每一个
7、样本(Xp,Yp):):4.2.1 计算出计算出Xp对应的实际输出对应的实际输出Op;4.2.2 计算出计算出Ep;4.2.3 E=E+Ep;4.2.4 根据相应式子调整根据相应式子调整W(L);4.2.5 k=L-1;4.2.6 while k0 do 4.2.6.1 根据相应式子调整根据相应式子调整W(k);4.2.6.2 k=k-1 4.3 E=E/2.011/13/2022164.3 算法的改进算法的改进 1、BP网网络络接接受受样样本本的的顺顺序序对对训训练练结结果果有有较较大大影响。它更影响。它更“偏爱偏爱”较后出现的样本较后出现的样本2、给给集集中中的的样样本本安安排排一一个个适
8、适当当的的顺顺序序,是是非非常常困难的。困难的。3、样本顺序影响结果的原因:样本顺序影响结果的原因:“分别分别”、“依次依次”4、用用(X1,Y1),(X2,Y2),(Xs,Ys)的的“总效果总效果”修改修改W(1),W(2),W(L)。w(k)ij=p w(k)ij11/13/202217算法算法4-2 4-2 消除样本顺序影响的消除样本顺序影响的BP算法算法 1 for k=1 to L do1.1 初始化初始化W(k);2 初始化精度控制参数初始化精度控制参数;3 E=+1;4 while E do 4.1 E=0;4.2 对所有的对所有的i,j,k:w(k)ij=0;11/13/202
9、2184.3 对对S中的每一个样本(中的每一个样本(Xp,Yp):):4.3.1 计算出计算出Xp对应的实际输出对应的实际输出Op;4.3.2 计算出计算出Ep;4.3.3 E=E+Ep;4.3.4 对所有对所有i,j根据相应式子计算根据相应式子计算p w(L)ij;4.3.5 对所有对所有i,j:w(L)ij=w(L)ij+p w(L)ij;4.3.6 k=L-1;4.3.7 while k0 do4.3.7.1 对所有对所有i,j根据相应式子计算根据相应式子计算p w(k)ij;4.3.7.2 对所有对所有i,j:w(k)ij=w(k)ij+p w(k)ij;4.3.7.3 k=k-1 4
10、.4 对所有对所有i,j,k:w(k)ij=w(k)ij+w(k)ij;4.5 E=E/2.0 11/13/202219算法算法4-2 分析分析 较好地解决了因样本的顺序引起的精度问较好地解决了因样本的顺序引起的精度问题和训练的抖动问题题和训练的抖动问题收敛速度:比较慢收敛速度:比较慢偏移量:给每一个神经元增加一个偏移量偏移量:给每一个神经元增加一个偏移量来加快收敛速度来加快收敛速度 冲量冲量:联接权的本次修改要考虑上次修改联接权的本次修改要考虑上次修改的影响,以减少抖动问题的影响,以减少抖动问题 11/13/202220算法算法4-2 分析分析冲量设置冲量设置Rumelhart等人等人198
11、6年年wij=joi+wijwij为上一次的修改量,为上一次的修改量,为冲量系数,一般可为冲量系数,一般可取到取到0.9 Sejnowski与与Rosenberg,1987年年wij=(1-)joi+wij)wij也是上一次的修改量,也是上一次的修改量,在在0和和1之间取值之间取值11/13/2022214.4 算法的实现算法的实现 主要数据结构主要数据结构WH,m输出层的权矩阵;输出层的权矩阵;Vn,H输入(隐藏)层的权矩阵;输入(隐藏)层的权矩阵;om输出层各联接权的修改量组成的向量;输出层各联接权的修改量组成的向量;hH隐藏层各联接权的修改量组成的向量;隐藏层各联接权的修改量组成的向量;
12、O1隐藏层的输出向量;隐藏层的输出向量;O2输出层的输出向量;输出层的输出向量;(X,Y)一个样本。一个样本。11/13/202222算法的主要实现步骤算法的主要实现步骤 1 1用不同的小伪随机数初始化用不同的小伪随机数初始化W,V;2 2初始化精度控制参数初始化精度控制参数;学习率学习率;3 3循环控制参数循环控制参数E=+1;循环最大次数循环最大次数M;循环次数控制参数循环次数控制参数N=0;4while E&N0,此时,此时wij0取取E0wij11/13/202230而其中的而其中的所以,所以,最速下降法,要求最速下降法,要求E的极小点的极小点11/13/202231令令所以所以wij
13、=joi为学习率为学习率最速下降法,要求最速下降法,要求E的极小点的极小点11/13/202232ANj为输出层神经元为输出层神经元 oj=f(netj)容易得到容易得到 从而从而11/13/202233ANj为输出层神经元为输出层神经元11/13/202234所以,所以,故,当故,当ANj为输出层的神经元时,它对应为输出层的神经元时,它对应的联接权的联接权wij应该按照下列公式进行调整:应该按照下列公式进行调整:ANj为输出层神经元为输出层神经元11/13/202235ANj为隐藏层神经元为隐藏层神经元 函数11/13/202236ANj为隐藏层神经元为隐藏层神经元netk=oio2o1oH
14、hnetk是是 oj下一级的神下一级的神经元的网络输入经元的网络输入oj11/13/202237ANj为隐藏层神经元为隐藏层神经元11/13/202238ANj为隐藏层神经元为隐藏层神经元11/13/202239ANj为隐藏层神经元为隐藏层神经元11/13/2022404.6几个问题的讨论几个问题的讨论收敛速度问题收敛速度问题 局部极小点问题局部极小点问题 逃逃离离/避避开开局局部部极极小小点点:修修改改W、V的的初初值值并不是总有效。并不是总有效。逃离逃离统计方法;统计方法;Wasserman,1986将将Cauchy训练与训练与BP算法结合起来,可以在保证算法结合起来,可以在保证训练速度不
15、被降低的情况下,找到全局极小点。训练速度不被降低的情况下,找到全局极小点。11/13/2022414.6几个问题的讨论几个问题的讨论网络瘫痪问题网络瘫痪问题 在训练中,权可能变得很大,这会使神经元的在训练中,权可能变得很大,这会使神经元的网络输入变得很大,从而又使得其激活函数的网络输入变得很大,从而又使得其激活函数的导函数在此点上的取值很小。根据相应式子,导函数在此点上的取值很小。根据相应式子,此时的训练步长会变得非常小,进而将导致训此时的训练步长会变得非常小,进而将导致训练速度降得非常低,最终导致网络停止收敛练速度降得非常低,最终导致网络停止收敛稳定性问题稳定性问题 用修改量的综合实施权的修改用修改量的综合实施权的修改连续变化的环境,它将变成无效的连续变化的环境,它将变成无效的 11/13/2022424.6 几个问题的讨论几个问题的讨论 步长问题步长问题 BP网络的收敛是基于无穷小的权修改量网络的收敛是基于无穷小的权修改量步长太小,收敛就非常慢步长太小,收敛就非常慢步长太大,可能会导致网络的瘫痪和不稳定步长太大,可能会导致网络的瘫痪和不稳定自适应步长,使得权修改量能随着网络的训练自适应步长,使得权修改量能随着网络的训练而不断变化。而不断变化。1988年,年,Wasserman11/13/202243结束语结束语谢谢大家聆听!谢谢大家聆听!44