在感知器和线性
神经网络
的学习
算法
中,理想输出与实际输出之差被用来估计神经元连接权值的误差。当为解决线性不可分问题而引入多级网络后,如何估计网络隐含层神经元的误差就成了一大难题。因为在实际中,无法知道隐含层的任何神经元的理想输出值。Rumelhart,McClelland和他们的同事们洞察到了
神经网络
信息处理的重要性,并于1982年成立了一个PDP小组,研究并行分布式信息处理方法,探索人类认知的微结构。1985年他们提出了BP网络的误差反向后传BP(Back Propagation)学习
算法
,实现了Minsky设想的多层
神经网络
模型。
BP(Back Propagation)
算法
在于利用输出后的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差,如此一层一层的反传下去,就获得了所有其它各层的误差估计。这样就形成了将输出层表现出的误差沿着与输入传送相反的方向逐级向网络的输入层传递的过程。因此,人们特将此
算法
称为误差反向后传
算法
,简称BP
算法
。使用BP
算法
进行学习的多级非循环网络称为BP网络,属于前向
神经网络
类型。虽然这种误差估计本身的精度会随着误差本身的“向后传播”而不断降低,但它还是给多层网络的训练提供了比较有效的办法,加之多层前向
神经网络
能逼近任意非线性函数,在科学技术领域中有广泛的应用,所以,多年来该
算法
一直受到人们广泛的关注。