BP算法的数学原理
BP算法的数学原理算法的学习过程,由正向传播和反向传播组成。在正向传播过程中,输入信息从输入层经隐单元层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。如果在输出层不能得到期望的输出,则转入反向传播,将误差信号沿原来的连接通路返回,通过修改各层神经元的权值,,使得误差信号最小。通常,代价函数定义为所有输入模式上输出层节点期望输出与实际输出的误差平方和。以上方法的研究目前仍处于探索阶段,理论上的应用很多、但实际应用中由于缺乏更祥尽的准则而不易操作,因而在多数情况下是由网络设计者来监督学习训练过程,通过试验和试错的方法来确定网络的拓扑结构。不过,有一个确定节点数上界的方法136]。要使多层前馈网络取得较好的拟合效果,隐节点数的上界为S,即训练样本数,且通常是远远小于S,否则网络可能仅仅记住了训练样本,而推广能力差,原因是过多的节点会引起“过度拟合”现象.BP网络的缺陷及学习算法的改进BP神经网络是一种在理论和应用方面发展都较成熟的反向传播算法的多层前馈网络,其突出的优点就是具有高度非线性映射的能力和柔性的网络结构。络的中间层数、各层的处理单元数及学习网络系数均可根据具体情况任意设定,并且随着结构的差异其性能也有所不同。但在其应用上仍存在一些待解决的问题。主要表现在:网络的结构方面隐含层节点数的选择尚无理论上的指导;在算法方面标准BP算法存在局部最小问题未能解决;迭代次数多、培训时间较长以及收敛速度慢。BP网络存在的缺陷,影响了它在许多方面的应用。为此,人们做了大量的改进工作,提出了许多改进方案。其中研究最多的是如何加快BP网络的收敛速度和尽量避免陷入“局部极小”的问题。在收敛速度这一问题上,吕砚山等采用成批处理法的误差修正方式对BP网络的算法进行优化,其收敛速度有较大的改善,而且成批处理法的培训误差也较小,此法对网络的泛化能力有所改善。针对实际应用中经常遇到的大样本集问题,这些样本集中的样本之间往往存在着一定的相关性,在这种情祝下,如果ee够在不丢失主要信息的情况下减小样本集的大小,即在进行神经网络训练之前对样本集进行优化和选择。采用主成分分析法,完成这一前处理过程,大大加快了收敛速度。针对BP网络学习速度的缓慢性,提出了一种联合优化后的快速学习算法,其改进具体表现在以下方面:l)采用Cauchy误差估计器代替传统的LMS误差估计器;2)对常规的isgmofd函数引入形态因子;3)采用非单调线性搜索法实现学习步长的自适应变化。在“局部极小”这一问题上,吴大宏、景广军等人43[]1441利用遗传算法和神经网络结合建模法,遗传算法GA对其目标既不要求连续也不要求可微,仅要求可以计算,而它的搜索始终遍及整个空间,很容易得到全局最优解,这一特点恰恰弥补了神经网络的局部极小现象。另外,改进动量项法BP网络就是为了避免陷入局部极小点而引入的一种BP网络改进方案。
页:
[1]