1
模式识别与智能计算的MATLAB实现
1.5.2.1 3.2.1 BP人工神经网络学习算法
3.2.1 BP人工神经网络学习算法

BP人工神经网络由输入层、隐含层和输出层三层组成,其核心是通过一边向后传递误差,一边修正误差的方法来不断调节网络参数(权值和阈值),以实现或逼近所希望的输入、输出映射关系。BP人工神经网络结构如图3.2所示。

alt

图3.2 BP人工神经网络结构

BP人工神经网络的学习算法包含以下6步:

①初始化。为了加快网络的学习效率,一般需要对原始数据的输入、输出样本进行规范化处理。

alt

其中,alt分别为处理前后的网络输入和输出。

给权值及阈值赋予(-1,1)区间的随机值。

②进入循环,计算网络的输出和输出值。

隐含层各节点的输入、输出分别为

alt

输出层各节点的输入、输出分别为

alt,  t=1,2,…,q(输出神经元数)

③误差逆传播。各层连接层及阈值的调整,按梯度下降法的原则进行。

设网络的计算输出为alt,则网络的希望输出与计算输出的偏差的均方值Ek

alt

计算输出层各节点的误差alt

alt

隐含层各节点的误差alt

alt,  j=1,2,…,q(隐含层神经元数)

④修正权值和阈值。用输出层、隐含层各节点的误差修正各层的连接权值及阈值为

alt

其中,N为修正次数。

以上循环执行m次。

⑤若网络的全局误差小于指定的值,则算法转入第⑥步;否则转入第②步。

⑥计算输出层。