误差反向传播算法

误差反向传播算法(Error Back Proragation, BP)

目录

  • 1 什么是误差反向传播算法[1]
  • 2 误差反向传播算法的思想[2]
  • 3 误差反向传播算法的实现步骤[2]
  • 4 误差反向传播算法的缺陷[2]
  • 5 参考文献

什么是误差反向传播算法

  自从40年代赫布(D.O. Hebb)提出的学习规则以来,人们相继提出了各种各样的学习算法。其中以在1986年Rumelhart等提出的误差反向传播法,即BP(error BackPropagation)法影响最为广泛。直到今天,BP算法仍然是自动控制上最重要、应用最多的有效算法。是用于多层神经网络训练的著名算法,有理论依据坚实、推导过程严谨、物理概念清楚、通用性强等优点.但是,人们在使用中发现BP算法存在收敛速度缓慢、易陷入局部极小等缺点.

误差反向传播算法的思想

  BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。

  1)正向传播:输入样本->输入层->各隐层(处理)->输出层

  注1:若输出层实际输出与期望输出(教师信号)不符,则转入2)(误差反向传播过程)

  2)误差反向传播:输出误差(某种形式)->隐层(逐层)->输入层 其主要目的是通过将输出误差反传,将误差分摊给各层所有单元,从而获得各层单元的误差信号,进而修正各单元的权值(其过程,是一个权值调整的过程)。

  注2:权值调整的过程,也就是网络的学习训练过程(学习也就是这么的由来,权值调整)。

误差反向传播算法的实现步骤

  1)初始化

  2)输入训练样本对,计算各层输出

  3)计算网络输出误差

  4)计算各层误差信号

  5)调整各层权值

  6)检查网络总误差是否达到精度要求

  满足,则训练结束;不满足,则返回步骤2。

误差反向传播算法的缺陷

  1)易形成局部极小(属贪婪算法,局部最优)而得不到全局最优;

  2)训练次数多使得学习效率低下,收敛速度慢(需做大量运算);

  3)隐节点的选取缺乏理论支持;

  4)训练时学习新样本有遗忘旧样本趋势。

参考文献

  1. 《数字神经网络系统》第二篇 系统模型 1.2反向传播BP模型
  2. 2.0 2.1 2.2 四川在线—博客
阅读数:322