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

  1、BP算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。
  1)正向传播:输入样本->输入层->各隐层(处理)->输出层
  注1:若输出层实际输出与期望输出(教师信号)不符,则转入2)(误差反向传播过程)

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

  2、BP算法实现步骤(软件):
  1)初始化
  2)输入训练样本对,计算各层输出
  3)计算网络输出误差
  4)计算各层误差信号
  5)调整各层权值
  6)检查网络总误差是否达到精度要求
  满足,则训练结束;不满足,则返回步骤2)

  3、多层感知器(基于BP算法)的主要能力:
  1)非线性映射:足够多样本->学习训练
  能学习和存储大量输入-输出模式映射关系。只要能提供足够多的样本模式对供BP网络进行学习训练,它便能完成由n维输入空间到m维输出空间的非线性映射。
  2)泛化:输入新样本(训练是未有)->完成正确的输入、输出映射
  3)容错:个别样本误差不能左右对权矩阵的调整

  4、标准BP算法的缺陷:
  1)易形成局部极小(属贪婪算法,局部最优)而得不到全局最优;
  2)训练次数多使得学习效率低下,收敛速度慢(需做大量运算);
  3)隐节点的选取缺乏理论支持;
  4)训练时学习新样本有遗忘旧样本趋势。
  注3:改进算法—增加动量项、自适应调整学习速率(这个似乎不错)及引入陡度因子

posted on 2008-12-30 22:57  何婧  阅读(851)  评论(0)    收藏  举报