BP神经网络学习过程与算法分析.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BP神经网络学习过程与算法分析

BP神经网络学习过程与算法分析   摘 要:目前在电子、信息与通信、计算机等学科都可以找到人工神经网络的影子,人工神经网络可用于动态系统建模、模式识别、智能控制和故障监测等实际工程问题。神经网络是一门综合性很强的交叉学科,神经网络具有分布式存储、并行处理、高容错能力以及良好的自学习、自适应、联想等特点。目前已经提出了多种神经网络模型,其中应用最广泛的是前馈型神经网络。而对于前馈型神经网络,对其训练使用最多的方法是BP算法。   关键词:神经网络;BP算法;网络模型   中图分类号:TP183   1 BP网络的定义   误差反向传播算法(Error Back Propagation,EBP,简称BP)在于利用输出层的误差来估计输出层的直接前导层的误差,再用这个误差估计更前一层的误差。如此下去,就获得了所有其他各层的误差估计。这样就形成了将输出表现出的误差沿着与输入信号传送相反的方向逐级向网络的输入端传递的过程。因此,人们就又将此算法称为向后传播算法,简称BP算法。使用BP算法进行学习的多层前向网络称为BP网络。虽然这种误差估计本身的精度会随着误差本身的“向后传播”而不断降低,但它还是给多层网络的训练提供了十分有效的办法。所以,多年来该算法受到了广泛的关注。BP网络应用广泛,学习采用最小均方差,由输入层、若干隐层和输出层构成,它是一种典型的前馈网络。   图1 三层神经网络模型   常用的BP网络是三层前向网络(如图1所示),即:输入层、中间层和输出层。它的学习分为以下几个过程:由每个神经元网络的输入节点经中间层向输出层的一个正向传播,若网络的实际输出与期望输出有误差,将这个误差经输出层到中间层再传给输入层调整权值再学习的一个逆传播。通过不断的学习,最后的输出要在误差范围之内。   2 BP算法的基本思想   BP算法的基本思想归结如下:BP网络对于输入信号,通过输入层传播到隐含层,经过激励函数的作用,再将隐含层的输出作为输出层的输入传播到输出层,最后输出结果。对于每一个输入样本,神经网络的实际输出与目标输出不可能完全一样,两者之间必然会有一定的误差,定义均方差为:   3 BP算法的学习过程及两种改进算法的思想   学习是人工神经网络最重要的一个特点,学习的目的在于能对任何一个样本的输入通过调整相关参数输出期望的结果。学习的方法可以从以下几步阐述:第一步,向神经网络模型输入一系列样本,每一个样本都有包含输入和期待的输出两部分,把采集到的样本向神经网络输入后,先由第一个隐层进行相关计算然后逐层向下一层传递,直到传至输出层。第二步,将输出的结果与期望输出的结果做比较,如果误差不能满足要求,就按原来的路径逐层返回,神经网络的自学习能力这时候就要发挥作用了,它要根据误差的结果对权值、阀值做适当修改,再从第一个隐层开始重复的计算传递,直到输出的结果满足要求。   本文论述的算法都是以三层网络结构出发进行讨论的。   BP算法的改进主要集中在两个方面:其一是避免陷入局部极小值,一旦陷入要想办法逃出;其二是改进迭代算法,加快收敛速度,较常用的方法是共轭梯度法、Levenberg-Marquardt法等。   BP网络学习过程收敛速度慢的因素有两方面:(1)学习率s和势态因子α在训练中值不变。BP网络实际就是优化计算中的梯度下降法,利用输出的误差作为对权值、阀值调整的参考,目的是确保最终的输出误差最小。考虑到算法的收敛性,学习率s必须小于某一固定上界。BP网络中的学习率s和惯性因子α在训练过程中为一固定值。这一限制决定了BP网络的收敛速度不可能很快。(2)学习过程中出现“假饱和”。实际输出和期望输出的误差产生以后,通过调整网络训练的权值,不断学习后这种误差应该越来越小,如果多次学习后误差没有减小,经过一段时间后,误差才下降,称这种现象为学习过程中的“假饱和”。在BP网络中,初始权值、阈值一般是在一个范围内人为确定的。若作为网络输入的神经元的个数与阈值差别较大,考虑到神经元具有饱和非线性特征,那么神经元的实际输出只有两种结果:极大值或极小值。当输出层接收到的神经元的总输入进入到饱和区,且实际输出与目标输出相互矛盾,就是“假饱和”。这时对权值作大的修改才行,而实际上,由于此时导数值趋近于零,导数权值修改量很小。导致学习速度下降。对中间层的神经元也是一样。学习一旦进入“假饱和”状态,很难退出这种“假饱和”状态,可能需要一定的时间,有时可能会陷入僵局,要重新开始网络训练。   传统的BP算法主要的优点是简单、易于实现。但是BP算法有两个不可克服的缺陷:(1)BP算法很可能陷入局部极小值;(2)收敛速度慢。   像热导气体分析仪这类的仪器经常会用于一些恶劣而又危险的环境中,且要求其测量周期短暂,所以系统需要较强的抗震荡学习网络。基于热导传感器测量的主

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档