资源描述
12/3/20211第六章:神经网络的优化学习第六章:神经网络的优化学习l6.1感知器学习规则l6.2Widrow-Hoff学习算法l6.3反向传播(BP)学习算法12/3/20212可以说,神经网络的优化学习一直是神经网络研究热点可以说,神经网络的优化学习一直是神经网络研究热点1943年年, Warren McCulloch和和Walter Pitts, 人工神经元模型人工神经元模型1949年年, Donald O. Hebb, 联想式学习规则联想式学习规则1957年年, Frank Rosenblatt等人等人, 感知器感知器(Perceptron)及其学习规及其学习规则则1960年年, Bernard Widrow和和Marcian Hoff, 自适应线性神经元,自适应线性神经元,WidrowHoff学习算法学习算法 第六章:神经网络的优化学习第六章:神经网络的优化学习12/3/202131969年年, Marvin Minsky和和Seymour Papert,感知器感知器,神经网络神经网络研究陷入低潮。研究陷入低潮。直到直到80年代年代, 改进的改进的(多层多层)感知器网络和学习规则感知器网络和学习规则, 唤起人们对唤起人们对神经网络研究的兴趣。神经网络研究的兴趣。第六章:神经网络的优化学习第六章:神经网络的优化学习12/3/20214l感知器是第一个完整的人工神经网络感知器是第一个完整的人工神经网络,具有联想记忆的功能,具有联想记忆的功能,可以用于模式识别,并且在工程中得到实现可以用于模式识别,并且在工程中得到实现。l当前,人们仍然认为感知器网络是一种重要的神经网络。因当前,人们仍然认为感知器网络是一种重要的神经网络。因为,为,对于某些应用问题而言,对于某些应用问题而言,感知器仍是感知器仍是一种快速可靠的求解一种快速可靠的求解方法。方法。l对感知器网络行为的理解将会为理解更加复杂的神经网络奠对感知器网络行为的理解将会为理解更加复杂的神经网络奠定良好基础。定良好基础。6.1 感知器学习规则感知器学习规则12/3/20215一、单神经元感知器一、单神经元感知器 6.1.1 感知器的结构二、多神经元感知器二、多神经元感知器 12/3/20216输出输出1 122 iinnxwuw uwuw uniwwww21w)(uwfy权值向量权值向量 输入向量输入向量单神经元感知器单神经元感知器单神经元感知器结构与单神经元感知器结构与MP神经元模型十分相似神经元模型十分相似)(xf1u1wxy2uiunu2wiwnw作用函数作用函数类别界限类别界限0001)(xxxf02211nniiuwuwuwuw净输入净输入阈值阈值( )yf x12Tinuuuuu输出输出12/3/20217若,则若,则若,则若,则01u22wu02u11wu单神经元感知器单神经元感知器二输入单神经元感知器二输入单神经元感知器02211uwuw2w1w1u2u1y 0y 120,0,12/3/20218三输入单神经元感知器三输入单神经元感知器, 类别界限类别界限相当于在三维空间相当于在三维空间 中定义了一个平面,该平面将输入中定义了一个平面,该平面将输入模式分为两类。模式分为两类。0332211uwuwuw),(321uuu单神经元感知器单神经元感知器n ( )输入单神经元感知器,输入单神经元感知器,类别界限类别界限对于在对于在 n 维向量空间上的线性可分模式,通过一个维向量空间上的线性可分模式,通过一个 n 输入的单神输入的单神经元感知器一定可以找到一个超平面,将该模式分为两类。经元感知器一定可以找到一个超平面,将该模式分为两类。 12/3/20219输出向量输出向量连接权系数矩阵连接权系数矩阵输入向量输入向量阈值向量阈值向量)(uWy fTmyyy21ymnmmnnwwwwwwwww212222111211W作用函数作用函数Tnuuu21uTm21多神经元感知器多神经元感知器0001)(12/3/202110第第 i 个神经元的类别界限个神经元的类别界限其中:其中:是输入向量与第是输入向量与第 i 个神经元的个神经元的连接权值;连接权值;是第是第 i 个神经元的阈个神经元的阈值;值;0iiuw21iniiiwwww由由 m 个神经元个神经元构成的感知器网络最多可以区分出种输入模式。构成的感知器网络最多可以区分出种输入模式。 im2多神经元感知器多神经元感知器12/3/202111感知器主要用作模式分类,感知器的学习实质是通过改变输入向感知器主要用作模式分类,感知器的学习实质是通过改变输入向量与神经元的连接权值或神经元的阈值,使感知器具有能够正确量与神经元的连接权值或神经元的阈值,使感知器具有能够正确区分目标数据的能力。区分目标数据的能力。设有设有 P 组样本数据为:组样本数据为: 其中是第组样本输入向量;其中是第组样本输入向量;是该输入相应的目标输出。是该输入相应的目标输出。 ,2211PPpptutututupuppt, 2, 1Pp6.1.2 感知器的学习在感知器网络尚未训练的情况下,可能与相差甚远。感知器在感知器网络尚未训练的情况下,可能与相差甚远。感知器学习就是通过调整权系数和阈值,使其实际输出逐步逼近目标学习就是通过调整权系数和阈值,使其实际输出逐步逼近目标输出。输出。12/3/202112lFrank Rosenblatt的贡献在于提出了训练神经网络用于解决模的贡献在于提出了训练神经网络用于解决模式识别问题的学习规则式识别问题的学习规则,并,并证明了只要求解问题的权值存在,那证明了只要求解问题的权值存在,那么其学习规则通常会收敛到正确的网络权值上。么其学习规则通常会收敛到正确的网络权值上。l整个学习过程较为简单,而且是自动的。只要把反映网络行为整个学习过程较为简单,而且是自动的。只要把反映网络行为的样本数据对提交给网络,网络就能够根据样本数据从随机初始的样本数据对提交给网络,网络就能够根据样本数据从随机初始化的权值和偏置值开始自动地进行学习。化的权值和偏置值开始自动地进行学习。 6.1.2 感知器的学习12/3/202113设有样本数据为:设有样本数据为: 1,2111tu0,2122tu0,1033tu,目标输出为目标输出为0的两个输入向量用空心圆的两个输入向量用空心圆表示,目标输出为表示,目标输出为1的输入向量用实的输入向量用实心圆表示。心圆表示。 单神经元感知器的学习单神经元感知器的学习12/3/202114为了简化学习过程,取感知器的神经元没有阈值。为了简化学习过程,取感知器的神经元没有阈值。类别界限为类别界限为 02211uwuw单神经元感知器的学习单神经元感知器的学习类别界限穿过原点,而且和类别界限穿过原点,而且和是正交的。为了保证感知器能够是正交的。为了保证感知器能够有效将和,区分开,必须有效将和,区分开,必须找到一条合适的类别界限。找到一条合适的类别界限。12/3/202115计算实际输出:计算实际输出:首先将送入:首先将送入: 样本输入向量的目标值样本输入向量的目标值 ,说明感知器没有给出正确的值。,说明感知器没有给出正确的值。1u0)6 . 0(218 . 00 . 1)(11fffyuw1u11t在开在开始始训练时需要赋初始权值训练时需要赋初始权值:随机取:随机取8 . 00 . 1w单神经元感知器的学习单神经元感知器的学习1uw1u为了正确分类为了正确分类 ,应该调整权值使其逐渐指向,应该调整权值使其逐渐指向。12/3/202116解决解决方法方法:是将加到是将加到 上,使得上,使得 更加偏向于。更加偏向于。如果如果 ,且,且 ,则,则调整调整1uTwTw1u1t0yuwwoldTnewTw调整后调整后2 . 10 . 2218 . 00 . 11uwwoldTnewT1)4 . 4(212 . 10 . 2)(11fffyuw单神经元感知器的学习单神经元感知器的学习12/3/202117计算计算 的实际的实际输出输出 2u1)4 . 0(212 . 10 . 2)(22fffyuw单神经元感知器的学习单神经元感知器的学习 的目标向量,的目标向量, 被错误地划分。被错误地划分。2u02t2u让远离,具体操作过程让远离,具体操作过程w2u如果如果 ,且,且 ,则,则调整调整调整调整后后0t1yuwwoldTnewTw8 . 00 . 3212 . 10 . 22uwwoldTnewT0)6 . 4(218 . 00 . 3)(12/3/202118计算计算的输出的输出 3u1)8 . 0(108 . 00 . 3)(33fffyuw单神经元感知器的学习单神经元感知器的学习的目标输出的目标输出 , 被错误的划分了。被错误的划分了。3u03t3uw2 . 00 . 3108 . 00 . 33uwwoldTnewT调整后调整后0)2 . 0(102 . 00 . 3)(33fffyuw调整调整12/3/202119若感知器能够正确工作,则保持权值向量不变若感知器能够正确工作,则保持权值向量不变。即:。即:ty oldnewww 如果如果,单神经元感知器的学习单神经元感知器的学习则则 。12/3/202120定义一个新的误差变量定义一个新的误差变量 感知器学习的规则感知器学习的规则 如果如果,则,则如果如果,则,则如果如果,则,则yte1e1e0eoldnewww 单神经元感知器的学习单神经元感知器的学习总结为总结为若考虑若考虑阈值阈值()TTTnewoldoldetywwuwueoldnewuwwoldTnewTuwwoldTnewT12/3/202121权值向量的第权值向量的第 i 行行式中式中阈值向量第阈值向量第 i 个元素的学习规个元素的学习规则则21iniiiwwww()TTiiiiiinewoldoldetywwuwuTnuuu21uioldinewie多神经元感知器的学习多神经元感知器的学习权值向量的第权值向量的第 i 行行的学习规则的学习规则12/3/202122多神经元感知器的学习多神经元感知器的学习多神经元感知器的学习规则多神经元感知器的学习规则式中式中 TnewoldWWeueoldnewytemnmmnnwwwwwwwww212222111211W12Tmeeee12T12/3/202123多层感知器多层感知器图中所示的异或关系是线性图中所示的异或关系是线性不可分的,单层感知器不能不可分的,单层感知器不能将其正确分类。将其正确分类。历史上,历史上,Minsky正是利用这正是利用这个典型的例子指出了感知器个典型的例子指出了感知器的致命弱点,从而导致了的致命弱点,从而导致了70年代神经元的研究低潮年代神经元的研究低潮。12/3/202124第第q层的层的输出向量输出向量第第q层的层的连接权系数矩阵连接权系数矩阵第第q层的层的输入向量输入向量第第q层的层的阈值向量阈值向量1()qqqqxfxW12qqqqqTnxxxx111111212122212qqqqq qqqqnqqqnqqqqnnn nwwwwwwwwwW作用函数作用函数1111112qqqqqTnxxxx12qqqqqTn多层感知器多层感知器0001)(xxxfQ层网络,每层层网络,每层nq个神个神经元,经元,q=1, ,Q。第。第0层为输入层,有层为输入层,有n0个个神经元。神经元。12/3/202125多层感知器多层感知器L1: P2 (1), P1 P3 P4 (-1)L2: P4 (-1), P1 P2 P3 (1)L3: Q2 (-1), Q1 Q3 (1)12/3/2021261960年,年,Bernard Widrow和和Marcian Hoff,自适应线性神经元,自适应线性神经元 (ADALINE)网络,最小均方网络,最小均方(LMS) 学习算法。学习算法。ADALINE网络在结构上与感知器非常相似,区别在于它的作用网络在结构上与感知器非常相似,区别在于它的作用函数是线性函数而不是硬极限函数。函数是线性函数而不是硬极限函数。 6.2Widrow-Hoff学习算法学习算法12/3/202127输出向量输出向量连接权矩阵连接权矩阵输入向量输入向量阈值向量阈值向量)(uWy fTmyyy21ymnmmnnwwwwwwwww212222111211WTnuuu21uTm21作用函数作用函数6.2.1 ADALINE网络的结构网络的结构( )f xx第第 i 个神经元的输出个神经元的输出连接权值连接权值阈值阈值iiiiifyuwuw)(,12/3/202128净输入净输入 神经元输出神经元输出2211uwuwx2211uwuwy02211uwuw两输入的两输入的ADALINE6.2.1 ADALINE网络的结构网络的结构2w1w1u2u0y 0y 120,0,12/3/202129LMS算法也是有监督学习算法,设有算法也是有监督学习算法,设有 组样本数据组样本数据其中是第组样本输入向量;其中是第组样本输入向量;是该输入相应的目标输出。是该输入相应的目标输出。 ,2211QQqqtutututuquqqt, 2, 1QqQ当输入向量当输入向量作作用到用到ADALINE网络时,其实际输出为。在网网络时,其实际输出为。在网络尚未训练的情况下,可能与相差甚远。络尚未训练的情况下,可能与相差甚远。LMS学习算法就是通过调整学习算法就是通过调整ADALINE网络的权系数和阈值,使网络的权系数和阈值,使网络实际输出网络实际输出 逐步逼近目标输出逐步逼近目标输出 ,以便使均方误差最小。,以便使均方误差最小。 quqyqtqtqyqy6.2.2 LMS学习算法学习算法 12/3/202130多输入的单神经元多输入的单神经元定义广义权值定义广义权值向量向量连接权值连接权值 定义定义广义输入向量广义输入向量w ,21nwwww1u6.2.2 LMS学习算法学习算法 网络输出网络输出有有 uwuw)(fyy输入向量输入向量T12/3/202131定义定义误差误差网络的均方误差网络的均方误差tyte)()(22tEeEF6.2.2 LMS学习算法学习算法进一步进一步,有,有若令若令 , , 时,上式改写为时,上式改写为 相关系数,相关矩阵。相关系数,相关矩阵。22()2 2TTTTFE ttE tE tE ctE2h tERTETcFRh2)(hR12/3/202132假设假设正定,正定,则则 有且仅有有且仅有一个强极小点一个强极小点R()F 6.2.2 LMS学习算法学习算法1minRhT()22TF hR性能函数性能函数 的梯度的梯度()F 方法方法1:利用:利用* *直接计算。直接计算。方法方法2:利用:利用*使用最速下降法迭代计算。使用最速下降法迭代计算。方法方法3:对梯度进行估计,利用:对梯度进行估计,利用*使用最速下降法迭代计算。使用最速下降法迭代计算。* *12/3/202133均方误差均方误差估计估计梯度估计梯度估计)()()()(22kekyktF)()(2kFe其中其中)()()()()(21222212kekekekeknne6.2.2 LMS学习算法学习算法nikwkekekwkekeiii, 2, 1,)()()(2)()()(22)()()(2)()()(12/3/202134)()()()()()()()()(kwkkktkwkyktkwkeiiiuw6.2.2 LMS学习算法学习算法1( ) ( ) ( )( )( )( )( )niiiiiiiw k u kt ku kw kw kw k 1)()(kke)()(2)()(2kkekFT12/3/202135具有固定的学习速度的最速下降算法具有固定的学习速度的最速下降算法被被 代替,有代替,有 或写为或写为 )()()() 1(kFkk)(F)(F)()(2)() 1(kkekkT)()(2)() 1(kkekkTuww)(2)() 1(kekk6.2.2 LMS学习算法学习算法上式即最小均方上式即最小均方(LMS)算法,又称算法,又称Widrow-Hoff学习算法。学习算法。 12/3/202136对多神经元网络,第对多神经元网络,第 i 个神经元权值迭代公式个神经元权值迭代公式其中,是第其中,是第 i 个神经元在第个神经元在第 k 次迭代时次迭代时的偏差。第的偏差。第 i 个神经元的阈值迭代公式个神经元的阈值迭代公式)()(2)() 1(kkekkTiiiuww21imiiiwwww)(kei6.2.2 LMS学习算法学习算法多神经元多神经元ADALINE网络的网络的LMS学习算法学习算法)(2)() 1(kekkiii)()(2)() 1(kkkkTueWW)(2)() 1(kkkemnmmnnmwwwwwwwww21222211121121wwwWm21meee21e其中其中12/3/202137LMS迭代学习算法实质是如何调整值,使得趋向于。迭代学习算法实质是如何调整值,使得趋向于。min现在关心的是如果按照上式对进行迭代,现在关心的是如果按照上式对进行迭代,LMS算法能否收敛,算法能否收敛,且权值向量且权值向量 能否收敛于?能否收敛于?ThR16.2.3 LMS学习算法收敛性分析学习算法收敛性分析 12/3/202138被被 代替代替独立于独立于取取 , 即即 )()(2)()1(kkeEkEkET)(ke)()()(kkkt)()()( )()(2)()1(kkkEkktEkEkETT)(k)(k)()( )( )()(2)()1(kkEkEkktEkEkETT)()(kktEh )()()(kkEkTR )(2)()1(RhkEkEkET2)(2)1(RIhkEkET6.2.3 LMS学习算法收敛性分析学习算法收敛性分析求数学期望求数学期望12/3/202139 所有特征值落入单位圆内,系统趋于稳定。所有特征值落入单位圆内,系统趋于稳定。即即2RIiR121i10i6.2.3 LMS学习算法收敛性分析学习算法收敛性分析其中其中 是的特征值。由于是的特征值。由于R正定正定, 其特征值实数且大于零,所其特征值实数且大于零,所以以迭代参数的稳态解迭代参数的稳态解即即22RIhSTSEEmin1RhTSELMS算法不仅收敛,而且能够收敛到性能函数的极小值上。算法不仅收敛,而且能够收敛到性能函数的极小值上。 12/3/202140LMS学习算法学习算法非常重要非常重要:1它是多层网络中它是多层网络中BP算法的先驱算法的先驱;2它被广泛使用于现在的信号处理应用中。它被广泛使用于现在的信号处理应用中。6.2.3 LMS学习算法收敛性分析学习算法收敛性分析12/3/202141l感知器学习规则和感知器学习规则和LMS学习算法,只能用来训练单层神经网络。学习算法,只能用来训练单层神经网络。单层神经网络故有的局限性就是只能解线性可分的分类问题。单层神经网络故有的局限性就是只能解线性可分的分类问题。lRosenblatt和和Widrow提出了采用多层神经网络的解决方法,但提出了采用多层神经网络的解决方法,但没有找到训练多层神经网络合适的学习算法。没有找到训练多层神经网络合适的学习算法。 6.3 反向传播反向传播( (BP) )学习算法学习算法l1974, Paul Werboss, 训练多层神经网络的反向传播算法,该算训练多层神经网络的反向传播算法,该算法未受到重视。法未受到重视。l20世纪世纪80年代中期,年代中期, David Rumelhart和和James McClelland, 训练多层神经网络的训练多层神经网络的BP学习算法(学习算法(并行分布式处理并行分布式处理) ,反,反向传播算法开始受到重视。向传播算法开始受到重视。12/3/202142输入层输入层: n个神经元个神经元, 线性函数作用函数。线性函数作用函数。隐含层隐含层: l个神经元,个神经元,非线性作用函数。非线性作用函数。输出层输出层: m个神经元个神经元,非线性作用函数。非线性作用函数。6.3.1 多层前向神经网络多层前向神经网络 BP神经网络:基于误差反向传播学习算法的前向神经网络。神经网络:基于误差反向传播学习算法的前向神经网络。12/3/202143单层感知器或单层感知器或ADALINE网络网络: 解决线性可分的模式分类问题。解决线性可分的模式分类问题。多层神经网络多层神经网络: 解决解决不是线性可分的模式分类问题不是线性可分的模式分类问题,而且它能够,而且它能够逼近任意非线性函数。在控制领域中得到青睐,即可以反映出过逼近任意非线性函数。在控制领域中得到青睐,即可以反映出过程的动态特性(建模),也能够反映出期望输出与控制量间的对程的动态特性(建模),也能够反映出期望输出与控制量间的对应关系(控制)。应关系(控制)。 6.3.1 多层前向神经网络多层前向神经网络一个三层神经网络(隐含层神经元采用一个三层神经网络(隐含层神经元采用S型作用函数,输出层采型作用函数,输出层采用线性函数),可以以任意精度逼近任何感兴趣的函数。用线性函数),可以以任意精度逼近任何感兴趣的函数。 12/3/202144多层神经网络的学习属于有监督学习,其学习过程由多层神经网络的学习属于有监督学习,其学习过程由信息正向传信息正向传播播和和误差反向传播误差反向传播两部分组成。两部分组成。6.3.2 BP学习算法学习算法 12/3/202145输入层输入层:隐含层隐含层:iIiuyniIiHijHjywx1神经网络的前向计算神经网络的前向计算)(HjHjHjxfy输入信息从输入层经隐含层逐层处理,并传向输出层,每层神输入信息从输入层经隐含层逐层处理,并传向输出层,每层神经元的状态只影响下一层神经元的状态。经元的状态只影响下一层神经元的状态。 输出层输出层:ljHjOjkOkywx1)(OkOkO12/3/202146若网络输出和期望输出若网络输出和期望输出不一致,则将其误差信号,从输出端反向不一致,则将其误差信号,从输出端反向传播,并在传播过程中对网络中各神经元之间的连接权值不断修传播,并在传播过程中对网络中各神经元之间的连接权值不断修正,使神经网络的输出趋向于期望输出值。正,使神经网络的输出趋向于期望输出值。误差反向传播和连接权的调整12/3/202147设有设有 Q 组样本数据组样本数据其中第其中第 q 组样本输入向量,是该输入对应的目标输出组样本输入向量,是该输入对应的目标输出。性能函数性能函数, , , ,2211QQqqtutututuquqt误差反向传播和连接权的调整)()(2121)(OTOTEEFytyteew用用 近似代替近似代替 )(wF)(wF)()()()(21)()(21)(kkkkkkFOTOTytyteew改改写成写成 211( )( ( )( )2mOkkkFt 12/3/202148调整神经元的连接权系数,使性能函数调整神经元的连接权系数,使性能函数 趋于最小。趋于最小。为了在线学习,将写成迭代形式为了在线学习,将写成迭代形式 采用最速下降法调整权值参数,并且用采用最速下降法调整权值参数,并且用 代替代替 ,对,对)(wFw)()() 1(kkkwww)(wF)(wFijw误差反向传播和连接权的调整其中其中 是学习步长。是学习步长。 ( ( )(1)( )( )ijijijFkw kw kw kw有有12/3/202149 输出层神经元权系数的调整输出层神经元权系数的调整权系数的迭代公式权系数的迭代公式权系数的修正量权系数的修正量)()() 1(kwkwkwOjkOjkOjk)()()(kwkFkwOjkOOjkw误差反向传播和连接权的调整学习速率学习速率0O12/3/202150求求)()(kwkFOjkw)()()()()()(kwkxkxkFkwkFOjkOkOkOjkww定义误差反向传播系数定义误差反向传播系数)()()()()()()(kxkykykFkxkFkOkOkOkOkOkww误差反向传播和连接权的调整12/3/202151)()()()(21)()()(12kyktkyktkykykFOkkmkOkkOkOkw)()()(kxfkxkyOkOkOkOk)()()()(kxfkyktkOkOkOkkOk)()()()()()(1kykykwkwkwkxHjljHjOjkOjkOjkOk误差反向传播和连接权的调整12/3/202152)()()()()(kykkwkFkwHjOkOOjkOOjkw)()()()()(kykxfkyktkwHjOkOkOkkOOjk输出层权系数的修正量输出层权系数的修正量或或输出层权值迭代公式输出层权值迭代公式)()()()()() 1(kykxfkyktkwkwHjOkOkOkkOOjkOjk误差反向传播和连接权的调整12/3/202153 隐含层神经元权系数的调整隐含层神经元权系数的调整权系数的迭代公式权系数的迭代公式权系数的修正量权系数的修正量学习速率学习速率)()() 1(kwkwkwHijHijHij)()()()()()()()()()(kykxkFkwkxkxkFkwkFkwIiHjHHijHjHjHHijHHijwww0H误差反向传播和连接权的调整12/3/202154定义误差反向传播系数定义误差反向传播系数( )( ( )( ( )( ( )( )( )( )( )( )( )HjHHHjjjHHHHjjjjykFkFkFkkfxkxkykxkykwww误差反向传播和连接权的调整1( ( )( )( )( ( )( )( )HjOmkOHkkjFkykxkF12/3/202155mkOjkOkljHjOjkmkHjOkmkHjOkOkHjkwkkykwkykkykxkxkFkykF1111)()()()()()()()()()()()(wwmkOjkOkHjHjHjkwkkxfk1)()()()(误差反向传播和连接权的调整12/3/202156)()()(kykkwIiHjHHij)()()() 1(kykkwkwIiHjHHijHij隐含层权系数调整量隐含层权系数调整量隐含层权值迭代公式隐含层权值迭代公式误差反向传播和连接权的调整12/3/202157提供训练样本数据提供训练样本数据 初始化初始化设置神经网络中神经元的初始权系数,一般取较小的随机数。设置神经网络中神经元的初始权系数,一般取较小的随机数。 提供训练样本数据提供训练样本数据, , , ,2211NNiitutututuBP学习算法计算过程计算神经网络的输出计算神经网络的输出输入样本,输入样本,按照按照前向计算公式前向计算公式计算网络中各神经元的输入、输出。计算网络中各神经元的输入、输出。最终由输入层经隐层至输出层,求得神经网络输出层各神经元的最终由输入层经隐层至输出层,求得神经网络输出层各神经元的输出,即神经网络的输出。输出,即神经网络的输出。 12/3/202158反向传播计算反向传播计算 按照梯度下降法计算权系数的调整量,逐层调整神经元的权值按照梯度下降法计算权系数的调整量,逐层调整神经元的权值。BP学习算法计算过程判断一个训练周期是否结束判断一个训练周期是否结束检测训练集中是否有未训练的样本,如果有返回检测训练集中是否有未训练的样本,如果有返回,若没有进,若没有进入入。判断是否满足终止条件判断是否满足终止条件12/3/202159计算神经网络输出与期望输出之间的偏差计算神经网络输出与期望输出之间的偏差BP学习算法计算过程211( )( ( )( )2mOkkkFt kykw若满足若满足上述条件,上述条件,神经网络学习结束;否则,进神经网络学习结束;否则,进入入开始新一周开始新一周期的训练。期的训练。)(wFck 给出评价准则给出评价准则或或12/3/202160BP学习算法存在的学习算法存在的缺陷缺陷6.3.3 BP学习算法的改进学习算法的改进 收敛速度慢收敛速度慢 陷入局部极小值陷入局部极小值 BP神经网络的优势神经网络的优势万能逼近万能逼近 容错性较好容错性较好 泛化性能较好泛化性能较好 12/3/202161收敛速度慢的原因收敛速度慢的原因为避免权值过大,采用较小的学习速率,从而造成收敛速度慢。为避免权值过大,采用较小的学习速率,从而造成收敛速度慢。收敛速度慢的解决办法收敛速度慢的解决办法变化的学习速率或自适应的学习速率。变化的学习速率或自适应的学习速率。收敛速度慢收敛速度慢12/3/202162由于由于BP学习算法采用梯度下降法,它学习算法采用梯度下降法,它可以可以收敛到收敛到一个极小值,一个极小值,但并不能保证但并不能保证全局极小。全局极小。陷入局部极小值陷入局部极小值12/3/202163迭代公式迭代公式)1()()1()() 1(kFkFkkwwww其中:其中:为连接权向量,为连接权向量, 为迭代次数;为迭代次数; 为次的梯为次的梯度度, 是次的梯度;为学习速率,是次的梯度;为学习速率, ; 为为动量因子,。动量因子,。)(kwk)(kF wk)1(kF w1k010附加动量法附加动量法12/3/202164自适应学习速率自适应学习速率 准则:判断权值的修正是否真正降低了误差函数,若误差函数确准则:判断权值的修正是否真正降低了误差函数,若误差函数确实得到了抑制,则说明所选取的学习速率值小了,可以使其增在实得到了抑制,则说明所选取的学习速率值小了,可以使其增在一些;否则,说明对误差的调整过大,那么就应该减小学习速率一些;否则,说明对误差的调整过大,那么就应该减小学习速率的值。的值。判断条件:当新误差超过旧误差一定的倍数时,学习速率将减少;判断条件:当新误差超过旧误差一定的倍数时,学习速率将减少;否则其学习速率保持不变;当新误差小于旧误差时,学习速率将否则其学习速率保持不变;当新误差小于旧误差时,学习速率将被增加被增加 。 12/3/202165弹性弹性BP学习算法学习算法弹性弹性BP算法只取偏导数的符号,不考虑偏导数的幅值。偏导数算法只取偏导数的符号,不考虑偏导数的幅值。偏导数的符号决定权值更新的方向,而权值变化的大小由一个独立的的符号决定权值更新的方向,而权值变化的大小由一个独立的“更新值更新值”确定。若在两次连续的迭代中,目标函数对某个权值确定。若在两次连续的迭代中,目标函数对某个权值的偏导数的符号不变号,则增大相应的的偏导数的符号不变号,则增大相应的“更新值更新值”(如在前一次如在前一次的基础上乘的基础上乘1.3);若变号,则减小相应的;若变号,则减小相应的“更新值更新值”(如在前一次如在前一次的基础上乘的基础上乘0.5)。12/3/202166弹性弹性BP学习算法学习算法权值修正的迭代过程权值修正的迭代过程其中为供设计者选择的参数;其中为供设计者选择的参数; 符号函数;符号函数; 为前一次为前一次的的“更新值更新值”,其初始值要根据实际应用预先设定。,其初始值要根据实际应用预先设定。)()()() 1(kkFsignkkwwwwsign)(kw)0(w在弹性在弹性BP学习算法中,当训练发生振荡时,权值的变化量将减学习算法中,当训练发生振荡时,权值的变化量将减小;当在几次迭代过程中权值均朝一个方向变化时,权值的变化小;当在几次迭代过程中权值均朝一个方向变化时,权值的变化量将增大。量将增大。12/3/202167三种改进算法的存储量要求相差不大,各算法的收敛速度依次加三种改进算法的存储量要求相差不大,各算法的收敛速度依次加快。其中,弹性快。其中,弹性BP算法的收敛速度远快于前两者。大量实际应算法的收敛速度远快于前两者。大量实际应用已证明弹性用已证明弹性BP算法非常有效。算法非常有效。 6.3.3 BP学习算法的改进学习算法的改进
展开阅读全文