BP神经网络的基本原理 - 一看就懂

更新时间:2023-10-08 06:57:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

5.4 BP神经网络的基本原理

BP(Back Propagation)网络是1986年由Rinehart和McClelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结

构包括输入层(input)、隐层(hide layer)和输出层(output layer)(如图5.2所示)。 5.4.1 BP神经元

图5.3给出了第j个基本BP神经元(节点),它只模仿了生物神经元所具有的三个最基本也是最重要的功能:加权、求和与转移。其中x1、x2?xi?xn分别代表来自神经元1、2?i?n的输入;wj1、wj2?wji?wjn则分别表示神经元1、2?i?n与第j个神经元的连接强度,即权值;bj为阈值;f(·)为传递函数;yj为第j个神经元的输出。

第j个神经元的净输入值为:

(5.12)

其中:

若视,,即令及包括及,则

于是节点j的净输入可表示为:

(5.13)

净输入输出

:

通过传递函数(Transfer Function)f (·)后,便得到第j个神经元的

(5.14)

式中f(·)是单调上升函数,而且必须是有界函数,因为细胞传递的信号不可能无限增加,必有一最大值。 5.4.2 BP网络

BP算法由数据流的前向计算(正向传播)和误差信号的反向传播两个过程构成。正向传播时,传播方向为输入层→隐层→输出层,每层神经元的状态只影响下一层神经元。若在输出层得不到期望的输出,则转向误差信号的反向传播流程。通过这两个过程的交替进行,在权向量空间执行误差函数梯度下降策略,动态迭代搜索一组权向量,使网络误差函数达到最小值,从而完成信息提取和记忆过程。 5.4.2.1 正向传播

设 BP网络的输入层有n个节点,隐层有q个节点,输出层有m个节点,输入层与隐层之间的权值为

,隐层与输出层之间的权值为

,如图5.4所示。隐层的传递函数为f1(·),

输出层的传递函数为f2(·),则隐层节点的输出为(将阈值写入求和项中):

k=1,2,??q (5.15)

输出层节点的输出为:

j=1,2,??m (5.16)

至此B-P网络就完成了n维空间向量对m维空间的近似映射。 5.4.2.2 反向传播 1) 定义误差函数

输入个学习样本,用来表示。第个样本输入到网络后得到输出

(j=1,2,?m)。采用平方型误差函数,于是得到第p个样本的误差Ep:

(5.17)

式中:对于

为期望输出。 个样本,全局误差为:

(5.18)

2)输出层权值的变化

采用累计误差BP算法调整,使全局误差变小,即

(5.19)

式中:—学习率 定义误差信号为:

(5.20)

其中第一项:

(5.21)

第二项:

是输出层传递函数的偏微分。 于是:

由链定理得:

于是输出层各神经元的权值调整公式为:

3)隐层权值的变化

定义误差信号为:

(5.22)

(5.23)

(5.24)

(5.25)

(5.26)

(5.27)

其中第一项:

(5.28)

依链定理有:

第二项:

是隐层传递函数的偏微分。 于是:

由链定理得:

从而得到隐层各神经元的权值调整公式为:

5.4.3 BP算法的改进

(5.29)

(5.30)

(5.31)

(5.32)

(5.33)

本文来源:https://www.bwwdw.com/article/38ud.html

Top