5.4 BP神经网络的基本原理
BP (Back Propagati on )网络是 1986 年由 Rin ehart 和 McClella nd为首的科学家小组提出,是一种按误差逆传播 算法训练
的多层前馈网络,是目前应用最广泛的神经网络模 型之一。BP网络能学习和存贮大量的输入-输出模式映射关 系,而无需事前揭示描述这种輸入层 隐层
输出映射关系的数学方程。它的学 习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平 方和最小。BP神经网络模型拓扑结构包括输入层(in put )、隐层(hide layer)和输出层 (output layer)(如图 5.2 所示)。
5.4.1 BP神经元
图5.3给出了第j个基本BP神经元(节点),它只模仿了生物神经元所具有的三个最基本 也是最重要的功能:加权、求和与转移。其中X1、
X2-Xi-Xn分别代表来自神经元1、2…i…n 的输入;Wj1、Wj2…Wjn则分
别表示神经元1、2…i ??与第j个神经元的连接强度,即 权值;bj为阈值;f()为传递函数;yj为第j个神经元的输出。
第j个神经元的净输入值为:
层
心=2>贯5+爲上略X+妇
i-l
(5.12
)
图5.3 BP補经
无
其中:
若视,:'〔,即令三及匚包括\及:\,则
于是节点j的净输入'■可表示为:
(5.13)
净输入通过传递函数(Transfer Function
) f ()后,便得到第j个神经元的输出?:
i-Q
(5.14 )
式中f(?是单调上升函数,而且必须是有界函数,因为细胞传递的信号不可能无限增加,必 有一最大值。
5.4.2 BP 网络
BP算法由数据流的前向计算(正向传播)和误差信号的反向传播两个过程构成。正向传播 时,传播方
向为输入层f隐层f输出层,每层神经元的状态只影响下一层神经元。 出层得不到期望的输出,则转向误差信号的反向传播流程
若在输
。通过这两个过程的交替进行,
在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达 到最小值,
从而完成信息提取和记忆过程。
542.1 正向传播
n q m
E 5.4三层神经网络的拓扑结构
设BP网络的输入层有n个节点,隐层有q个节点,输出层有m个节点,输入层与隐层之讥,隐层与输出层之间的权值为\」,如图5.4所示。隐层的传递函数为fi(>, 输出层的传递函数为f2(),贝临层节点的输出为(将阈值写入求和项中):
% =壬迓叫无)
3-0
k=1,2, ??…q 输出层节点的输出为:
>7 =
E叫\』
j=1,2, ??…m
至此B-P网络就完成了 n维空间向量对m维空间的近似映射。
5.4.2.2反向传播
1)定义误差函数
输入丄:个学习样本,用来表示。第口个样本输入到网络后得到输出'■ (j=1,2,…m )。采用平方型误差函数,于是得到第 p个样本的误差Ep:
(5.15 )
(5.16 ) 间的权值为
2
>1
(5.17)
式中:?为期望输出。
对于「个样本,全局误差为:
2)输出层权值的变化
采用累计误差BP算法调整,使全局误差上变小,即式中::一学习率
定义误差信号为:
其中第一项:
第二项:
\\ F 决 P
^ = ?ZE^;-vP = Z^
-” ;-1
曲
徳 d 7 * 込
F 丁念%) =
5
=_些=_些空 好1 一誌7 ■-冠7'瓦
話詁肴卜孕T)(5.18)
(5.19)
(5.20)
(5.21)
)
(5.22