BP算法实现---介绍相关改进方法.docVIP

  • 17
  • 0
  • 约5.84千字
  • 约 6页
  • 2017-02-01 发布于重庆
  • 举报
BP算法实现---介绍相关改进方法

BP算法的实现 摘要:BP算法采用广义的学习规则,是一种有导师的学习算法。它分两个阶段:正向传播阶段和反向传播阶段。误差反向传播算法简称BP算法 ,现在成为人工神经网络中最引人注意应用最广泛的算法之一。该算法是一种有教师示教的训练算法。 关键词:BP算法; 权值 ; 学习步长 ; 学习样本 一、BP算法思想及实现 BP算法采用广义的学习规则,是一种有导师的学习算法。它分两个阶段:正向传播阶段和反向传播阶段。正向传播阶段,将学习样本的输入信息输入前馈网络的输入层,输入层单元接受到输入信号,计算权重合,然后根据神经元的激活函数将信息传到隐含层(1层或2层),同样根据隐含层的输出计算输出层的输出。反向传播阶段,将网络的实际输出与期望输出相比较,如果误差不满足要求,将误差向后传播,即从输出层到输入层逐层求其误差(实际上是等效误差),然后相应地修改权值。 误差反向传播算法简称BP算法 ,现在成为人工神经网络中最引人注意应用最广泛的算法之一。该算法是一种有教师示教的训练算法 ,它通过对P个输入输出对 (即样本 ) (X1,Y1) , (X2,Y2) ,… , (XP,YP)的学习训练 ,得到神经元之间的连接权Wij、Wjk和阈值θ j、k,使n维空间对m维空间的映射获得成功训练后得到的连接权和阈值 ,对其它不属于P1=1, 2,… ,P的X子集进行测试 ,其结果仍能满足正确的映射 。 1.BP网络的学习结构。  在神经网络中 ,对外部环境提供的模式样本进行学习训练 ,并能存储这种模式 ,则称为感知器 ;对外部环境有适用能力 ,能自动提取外部环境变化特征 ,则称为认知器。一个有教师的学习系统分成三个部分 :输入部、训练部和输出部。如图 1所示:输入部接收外来样本X,由训练部进行网络的权系数 W调整 ,然后输出部输出结果。  多层神经网络 1-4-6-4-1的学习机构用图 2表示 :X是输入样本信号 ,可取任意值。输入样本信号通过每一层的权系数作用 ,最终在输出部产生结果 : y = e-x2   图2 1-4-6-4-1的学习机构 再把期望输出信号 y与 u进行比较 ,从而产生误差 e。权值调整机构根据误差 e对学习系统的各层权系数进行修改 ,修改方向使用负梯度方向 ,即达到最速下降法 ,不断进行下去 ,使误差 e满足给定精度要求 0.003,这时实际输出值 u和期望输出值 y的误差符合要求 ,则学习过程结束。 2.BP网络的数学模型。 从第一节神经元的讨论可知 ,神经元是一个多输入单输出的信息处理单元。它对信息处理是非线性的。可把神经元抽象为一个简单的数学模型 ,如图 3所示。   图 3中 , X1, X2,… , Xn是神经元的输入 ,即来自前级 n个神经元的轴突信息 ;θi 是 i神经元的阀值 , Wi1, Wi2,… , Win分别是 i神经元对 X1, X2,… , Xn的权系数 ,也即突触的传递效率 ; Yi是 i神经元受到输出 ; f[· ]是激发函数 ,它决定 i神经元受到输入 X1, X2,… , Xn的共同刺激达到阀值时以何种方式输出。 数学模型表达式为 : 取激发函数为S型: 是对应第i个样本Xi的实际输出;Yi是对应第i个样本Xi的期望输出。 求令e最小时W: 其中: 则: 取负梯度修改权系数,可获得最速下降法即: 3.BP算法推导 定义误差函数e为期望输出与实际输出之差和平方和: 其中:Y为期望值,即教师信号;X为实际输出。考察权系数Wij的修改量,与e的负梯度有关。即: 其中K为网络层数,由于: 从而有: 从修改系数角度出发,有 令: 则: 因d非显式,要进行变换: 因: 故: 即: 分两种情况求: 当k=m时,即最后一层,则: 由于: 故有: (2)当k〈m时,则该层为隐层,这时考虑上一层对它的作用: 由于: 故: 最后有: 按负梯度方向修改权系数,采用加速算法,则有: 4 .BP算法的执行。   BP算法执行

文档评论(0)

1亿VIP精品文档

相关文档