BP神经网络的不足
在理论上,BP神经网络具有实现任何复杂非线性映射的能力,特别适合求解内部机制复杂的问题,但在实际的应用中,也存在一些不足。
-
需要的参数较多,且参数的选择没有有效的方法。确定一个BP网络需要知道网络的层数、每一层的神经元个数和权值。网络权值依据训练样本和学习率参数经过学习得到。隐含层神经元的个数如果太多,会引起过学习,而神经元太少,又导致欠学习。如果学习率过大,容易导致学习不稳定,学习率过小,又将延长训练时间。这些参数的合理值还要受具体问题的影响,目前为止,只能通过经验给出一个很粗略的范围,缺乏简单有效的确定参数的方法,导致算法很不稳定。
-
容易陷入局部最优。BP算法理论上可以实现任意非线性映射,但在实际应用中,也可能经常陷入到局部极小值中。此时可以通过改变初始值,多次运行的方式,获得全局最优值。也可以改变算法,通过加入动量项或其他方法,使连接权值以一定概率跳出局部最优值点。
-
样本依赖性。网络模型的逼近和推广能力与学习样本的典型性密切相关,如何选取典型样本是一个很困难的问题。算法的最终效果与样本都有一定关系,这一点在神经网络中体现得尤为明显。如果样本集合代表性差、矛盾样本多、存在冗余样本,网络就很难达到预期的性能。
-
初始权重敏感性。训练的第一步是给定一个较小的随机初始权重,由于权重是随机给定的,BP网络往往具有不可重现性。
-
学习速度慢。即使是一个简单的问题,一般也需要几百次甚至上千次的学习才能收敛。