人工神经网络是由大量神经元大规模并行、以一定拓扑结构连接而成的。 按照一定的规则将神经元连接到神经网络,按照一定的规则改变网络中每个神经元的连接权,从而产生各种神经网络模型。
从几个方面进行分类:
(1)根据神经网络的拓扑结构可以分为反馈神经网络模型和前馈神经网络模型;
)根据神经网络模型的性能,可分为连续型和离散型神经网络模型、确定型和随机型神经网络模型
)3)根据学习方式可以分为有师学习和无师学习神经网络模型;
)4)根据突触的联系性质,可以分为线性关系和高阶非线性关系神经网络模型;
BP神经网络是三层以上的分层神经网络,由输入层、抑制层和输出层组成,相邻层间的神经元完全互连,同一层内的神经元不连接。
BP算法思想:输出层误差由后向前,相反逐层传播,用简并计算隐层误差。 算法分为两个阶段:
(1)正向传播过程)输入信息从输入层经过隐藏层逐层计算各单元的输出值;
(2)反向传播过程)输出误差是逐层向前计算隐层各单元的误差,用该误差修正前层权重。
备注:网络权重调整采用增量学习规律,通过梯度法使沿误差曲面的梯度下降最快,实现网络误差最小化。
输入层、抑制层、输出层单元数分别为I、j、k,输入为,抑制层输出为,网络实际输出为,表示训练样本的期望输出。 从输入层单元I到抑制层单元j的权重为,从抑制层单元j到输出层单元k的权重为,分别用和表示抑制层单元和输出层单元的阈值。
因此,该网络抑制层单元的输出值如下。
输出层各单元的输出值如下。
误差传播阶段:
当BP神经网络各层的激活函数取单极s型函数时,即
可以很容易地计算出该网络各层的权重校正量。
(1)关于输出层和隐含层间的权重调整
(2)对隐含层和输入层的权重调整
标准BP网络的工作过程
(1)权重初始化),表示从网络输入层单元到隐含层单元的连接权重; 表示从网络抑制层到输出层单元的连接权值
)2)依次输入p个学习样本。 将当前输入作为第p个样本;
(3)依次计算各层输出; 其中抑制层上第j个神经元的输出是输出层上的第k个神经元的输出
(4)求出网络各层的逆转录误差,记录各自的值;
,
)5)记录学习的样本数p。 如果是pP,则转移到)2)继续计算; p=P时,为(6);
(6)按照权重修正公式修正各层权重和阈值;
(7)以新权重重新计算,以及对于每个p样本和对应的第k个输出神经元,均满足或达到最大学习次数时,结束学习; 否则,转到)2),继续新的学习。
BP算法的优点:
(1)非线性映射能力
)2)自我学习和适应能力
)3)容错能力。
BP算法不足:
)1)局部极小化问题
)2) BP神经网络算法收敛速度慢
)3) BP神经网络结构选择不同
)4)应用实例与网络规模矛盾问题
)5) BP神经网络预测能力与训练能力矛盾问题;
)6) BP神经网络样本相关性问题。