误差逆传播算法(backpropagation BP算法)是迄今最成功的的神经网络算法。显示任务中使用神经网络时,大多是在使用BP算法进行训练。不仅适用于多层前馈神经网络,还可以用于其他类型的神经网络,训练递归。
算法总结先将输入实例提供给输入层神经元,然后逐层将信号前传,直到产生输出层的结果;
然后计算输出层的误差,再将误差逆向传播至隐层神经元;
最后根据隐层神经元的误差来对连接权和阈值进行调整,该迭代过程循环进行,直到达到某些停止条件位置(如训练误差已达到一个很小的值)。1
累计误差逆传播算法如果推导出基于累积误差最小化的更新规则,就得到了累积误差逆传播算法。
与标准的BP算法每次更新只针对单个样例,参数更新的非常频繁,往往需进行更多次迭代。但是累积BP算法直接针对累积误差最小化,它在读取整个训练集一遍后才对参数进行更新,其参数更新频率低,但是在很多任务中,累积误差下降到一定程度后,进一步下降变得很缓慢。这是标准BP会更好,尤其参数非常大时。
全局最小和局部极小的解决方法目前主要有三种方式解决这个问题,
1)对参数分组初始化多个神经网络;
2)使用模拟退火技术;
3)使用随机梯度下降。2
其他常见神经网络RBF网络
ART网络
SOM网络
级联相关网络
Elman网络
Boltzmann机
本词条内容贡献者为:
李晓林 - 教授 - 西南大学