BP 神经网络算法是基于误差反向传播算法的[8]。误差反向传播算法是对误差 修正学习的应用,可以看做普通自适应滤波算法的推广。

误差反向传播包含两次信息传输过程:一次前向传播和一次反向传播。前向 传播时,输入信号从输入节点传入,通过隐藏层逐层传递到输出层;反向传播时, 前一层的突触权值根据后一层的误差调整。误差信号的传播方向与输入信号的传 播方向相反,故被称为“误差反向传播”。

在明确了以上过程后,我们还需要对一些符号进行定义。下面是符号定义:

· i、j、k 指网络中不同层的代表神经元,规定信号在网络中自左向右传播, 则神经元 j 所在层处于神经元 i 所在层右边,神经元 k 所在层处于神经

元 j 所在层右边。

· 时间步 n,指在网训练第 n 个样本时的瞬态。

· ζ(n)指迭代 n 时的瞬态误差能量和。其平均值用平均误差能量ζav 表示。

· ej(n)为迭代 n 时 j 的输出误差。

· dj(n)为迭代 n 时 j 的期望输出。

· yj(n)为迭代 n 时 j 的输出信号。

· wji(n)表示突触权值,该权值在迭代 n 时连接 i 和 j 神经元,其修正量为

∆wji(n)。

· vj(n)为迭代 n 时 j 的诱导局部域,即所有突触的输入和偏置的加权和。

· ψj(·)为激活函数。

· bj 为 j 的输入偏置,可用一个值为+1 的固定突触权值相连表示。

· xi(n)为迭代 n 时输入信号(向量)的第 i 个元素。

· oi(n)为迭代 n 时输出信号(向量)的第 i 个元素。

· η为学习率参数。

下面进行推导:

神经元 j 处于输出层时其输出误差被定义为式(3-9)形式:

神经元 j 的瞬态误差能量和定义为式(6。10)形式:

式(3-10)中 C 为所有输出层神经元的集合。记 N 为训练集中样本个的总数, 则可得均方误差能量:

对一个给定的训练集,ζav 是衡量学习性能的指标。学习的目的是调整网络 中的自由参数使得ζav 达到最小值,为了达到这个目的,我们使用 LMS(least mean square,最小均方)算法进行逼近。最小均方算法会计算误差的下降梯度,当梯 度向量下降最速且学习率η为正值时函数为收敛的。反向传播算法以此方法对突

触权值 wji(n)应用一个修正值∆wji(n),它正比于ζ(n)对 wji(n)的偏导数。根据链 式规则,此梯度可表示为:

式(3-12)左边项是一个敏感因子,它决定突触权值 wji(n)在权值空间中的搜 索方向。利用 LMS 算法可将其搜索方向确定为最速下降方向以加速收敛。

对于单个神经元 j,有:

wji(n)的修正值∆wji(n)被定义为:

式(3-20)中的η为学习率参数,符号意味着在权值空间中梯度方向是下降的。

将式(3-19)代入式(3-20)得:式(3-21)

式(3-21)中的δj(n)为局域梯度,表示突触权值所需要的变化。可定义为:

从式(3-21) 和式(3-22)中可以看出,调整权值 wji(n)是整个学习过程的关键。 每次迭代都会对 wji(n)应用修正值∆wji(n),而∆wji(n)的大小与输出端误差 ej(n) 有关。根据神经元所处的位置,我们需要考虑两种情况。第一种,神经元 j 是输 出节点。这种情况较为简单,每一个输入信号都对应有期望输出,计算误差直接 套用式(3-21)即可。第二种情况是 j 为隐藏层节点。隐藏层神经元没有确定可见 的期望输出,计算他们的误差需要通过递归来决定。在这种情况下式(3-22)需要 重新定义:

上一篇:AT89C52单片机的智能手杖设计+电路图+程序
下一篇:电磁耦合供电的神经刺激器设计+程序

STC89C52单片机的温度控制系统设计+电路图

FAST风速观测器的设计与实验验证

CCHP考虑热网特性的综合能源系统的研究

基于状态估计的控制系统...

LQG四分之一汽车悬架系统的主动抗扰控制

MATLAB的GUI倒立摆控制系统设计与实现

基于RS-485的电梯呼梯装置设计+电路图

我国风险投资的发展现状问题及对策分析

LiMn1-xFexPO4正极材料合成及充放电性能研究

ASP.net+sqlserver企业设备管理系统设计与开发

网络语言“XX体”研究

老年2型糖尿病患者运动疗...

安康汉江网讯

新課改下小學语文洧效阅...

互联网教育”变革路径研究进展【7972字】

麦秸秆还田和沼液灌溉对...

张洁小说《无字》中的女性意识