1、BP神经网络背景简介:
BP(Error Back Propagation Network)神经网络是目前应用最为广泛和成功的神经网络之一,它于1986年由Rumelhant和McClelland提出。是一种多层网络“逆推”学习算 法。
2、BP神经网络基本思想:
BP神经网络基本思想由两部分组成:输入样本前向传播并输出结果、误差的反向传播更新网络权值。
样本数据前向传播时,输入样本由输入层传入,经隐含层处理后传到输出层,若输出层的实际输出与期望输出不符,则进入误差反向传播更新网络权值阶段。
误差的反向传播更新网络权值是将输出误差以某种形式通过隐含层向输入层逐层反转,并将误差分配给各层神经元各个神经单元。
这种信号正向传播与误差反向传播的各层权值调整过程循环进行,权值也不断调整,也就是网络的学习过程。此过程一直进行到网络输出的误差减少到可以接受的程度,或 进行到预先设定的学习次数为止。
3、BP网络结构与数据处理过程
图2-1
如图2-1,为三层神经网络,Layer L1为输入层,Layer L2为隐含层,Layer L3为输出层。其中隐含层可以是一层或多层,输出层也可以有多个神经元。
下面的推导过程中,我们用X(i)表示神经网络输入;Y(i)表示神经网络实际输出;d(i)表示神经网络期望输出;W(ijk)表示神经网络第i层第j个神经元到第i+1层第k个神经元的连接权值;O(ij)表示第i层第j个神经元输出;Θ(ij)表示第i层第j个神经元阈值;net(ij)表示第i层第j个神经元总输入;Ni表示第i层神经元节点数。
(1):样本前向传输过程。
(2):误差反向传播更新网络权值
如果神经元 j 在输出层,则O(ij)就是网络的实际计算输出,记为Y(j),通过Y(j)与所期望值的输出d(j)之间的误差反向传播来修改各权值。
误差函数定义为:
网络权值沿E函数梯度下降的方向修正:
其中n是步长因子。
经数学推导BP算法的权值调整公式为:
其中: