BP神经网络的研究及应用

来源 :商业2.0 | 被引量 : 0次 | 上传用户:liuyunvc
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  中图分类号:TP183 文献标识码:A
  摘要:人工神经网络的应用领域非常广泛,其中大部分的人工神经网络模型采用BP网络,它也是前馈网络的核心部分,体现了人工神经网络最精华的部分。通过对BP算法的研究,提出了利用它来实现对我国的三大产业数据的预测方案。并在MATLAB仿真中取得了很好的效果。
  关键词:BP神经网络;MATLAB仿真
  一、BP神经网络概述
  BP(Back Propagation)网络是1986年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP一般为多层神经网络,其模型拓扑结构一般包括输入层(input)、隐层(hide layer)和输出层(output layer)。如图1所示:
  二、BP网络的学习算法
  (一)最速下降BP算法(steepest descent backpropagation,SDBP)
  如图2所示的BP神经网络,设k为迭代次数,则每一次权值和阈值的修正案下式进行:
  根据(2.2)式,可以求出第k次迭代的总误差曲面的梯度x(k)= ,分别代入式(2.1)中,就可以逐次修正其权值和阈值,并使总的误差向减小的方向变化,最终求出所要求的误差性能。
  (二)冲量BP算法(momentum backpropagation,MOBP)
  因为反向传播算法的应用广泛,所以已经开发出了很多反向传播算法的变体。其中最常见得事在梯度下降算法的基础上修改公式(2.1)的权值更新法则,即引入冲量因子η,并且0≤η<1的常数。更新后的公式为:
  标准BP算法实质上是一种简单的最速下降静态寻优方法,在修正W(K)时,只按照第K步的负梯度方向进行修正,而没有考虑到以前积累的经验,即以前时刻的梯度方向,从而常常使学习过程发生振荡,收敛缓慢。动量法权值调整算法的具体做法是:将上一次权值调整量的一部分迭加到按本次误差计算所得的权值调整量上,作为本次的实际权值调整量,即公式(2.3)所示:η是冲量系数,通常0≤η<1;α为学习率,范围在0.001~1之间。这种方法所加的冲量因子实际上相当于阻尼项,它减小了学习过程中的振荡趋势,来改善收敛性。冲量法降低了网络对误差曲面局部细节的敏感性,有效的抑制了网络陷入局部极小值。
  (三)学习率可变的BP算法(variable learnling rate backpropagation,VLBP)
  标准BP算法收敛速度缓慢的一个重要原因是学习率选择不当,学习率选得太小,收敛慢;反之,则有可能修正的过头,导致振荡甚至发散。因此可以采用图3所示的自适应方法调整学习率。
  自适应调整学习率的梯度下降算法,在训练的过程中,力求使算法稳定,而同时又使学习的不长尽量地大,学习率则是根据局部误差曲面作出相应的调整。学习率则是通过乘上一个相应的增量因子来调整学习率的大小。即公式(2.5)所示:
  其中:Kinc为使步长增加的增量因子,Kdec为使步长减小的增量因子;α为学习率。
  三、建立BP神经网络预测模型
  BP预测模型的设计主要有输入层、隐含层、输出层及各层的个数和层与层之间的传输函数。
  (一)网络层数
  BP有一个输入层和一个输出层,但可以包含多个隐含层。但理论的上已证明,在不限制隐含层节点的情况下,只有一个隐含层的BP就可以实现任意非线性映射。
  (二)输入层和输出层的节点数
  输入层是BP的第一层,它的节点数由输入的信号的维数决定,这里输入层的个数为3;输出层的节点数取决于BP的具体应用有关,这里输出节点为1。
  (三)隐含层的节点数
  隐含层节点数的选择往往是根据前人设计所得的经验和自己的进行的实验来确定的。根据前人经验,可以参考以下公式设计:
  其中:n为隐含层节点数;m为输入节点数;t为输出节点数;a为1~10之间的常数。根据本文要预测的数据及输入和输出节点的个数,则取隐含层个数为10。
  (四)传输函数
  BP神经网络中的传输函数通常采用S(sigmoid)型函数:
  如果BP神经网络的最后一层是Sigmoid函数,那么整个网络的输出就会限制在0~1之间的连续;而如果选的是Pureline函数,那么整个网络输出可以取任意值。因此函数选取分别为sigmoid和pureline函数。
  四、BP神经网络预测的MATLAB仿真实验
  (一)样本数据的预处理
  本文的样本数据来源于中国历年国内生产总值统计表,为了让样本数据在同一数量级上,首先对BP输入和输出数据进行预处理:将原样本数据乘上0.0001,同时将样本数据分为训练样本集和测试样本集,1991~1999年我国的三大产业的各总值的处理结果作为训练样本集,即1991~1998年训练样本作为训练输入;1999年训练样本数据作为输出训练输出;1992~2000年我国的三大产业的各总值的处理结果作为测试样本集,即1992~1999年的测试样本作为测试输入,2000年测试样本数据作为测试输出。
  (二)确定传输函数
  根据本文的数据,如第3节所述,本文选取S函数(tansig)和线性函数(purelin)。
  (三)设定BP的最大学习迭代次数为5000次。
  (四)设定BP的学习精度为0.001;BP的学习率为0.1。
  (五)创建BP结构如图4所示;训练BP的结果图5所示:
  正如图5所示的数据与本文所示设计的网络模型相符,且如图5所示当BP神经网络学习迭代到99次时,就达到了学习精度0.000997788,其学习速度比较快。
  (六)测试BP神经网络
  通过MATLAB对测试样本数据进行仿真,与实际的2000年我国三大产业的各生产总值比较(见表1),说明BP神经网络预测模型是可行的。
  五、总结
  总之,在人工神经网络的实际应用中,BP神经网络广泛应用于函数逼近、模式识别/分类、数据压缩等。通过本文可以体现出MATLAB语言在编程的高效、简洁和灵活。虽然BP在预测方面有很多的优点,但其还有一定的局限性,还需要进一步的改进。
  参考文献:
  [1] 周开利,康耀红.神经网络模型及其MATLAB仿真程序设计[M].北京:清华大学出版社,2005.7
  [2] 张德丰等.MATLAB神经网络应用设计[M].北京:机械工业出版社,2009.1
  [3] (美)米歇尔(Mitchell,T.M.)著;曾华军等译.北京:机械工业出版社,2003.1
  [4] 岂兴明等编著.MATLAB7.0程序设计快速入门[M].北京:人民邮电出版社,2009.7
  [5] 李正学.神经网络理论及其在股市短期预测中的应用[D].长春:吉林大学,2004
  作者简介:
  1.程聪(1981——)河南省开封市人 毕业于河南财经政法大学 计算机应用技术专业 数字图像处理方向
  2.阮莹 河南师范大学新联学院 毕业于河南科技大学 计算机应用技术专业
  3.李舸 开封市儿童医院 毕业于河南大学护理学院 儿童护理智能技术专业
其他文献
目的:探讨金属接骨板治疗锁骨骨折的手术适应症。方法及并发症。方法:自2009年1月~2013年1月骨科对54例(左侧29例,右侧25例)锁骨骨折患者采用金属接骨板切开复位内固定手术治
【正】 德&#183;隆日维尔侯爵出生在隆日维尔,在那里长大,在那里生活,在那里继承父亲的遗产,他跟这块土地的关系如此根深蒂固,跟他的城堡的石头如此血肉相连,跟他田地里的庄
随着人口的老龄化,我们将面对一个老年人越来越多的社会,对老年人的关怀,对老年人生活的关切,成为从家庭到社会都十分重要的问题。 老年人面临生活方式改变和机体日渐衰老的
【正】 瓦莱斯与世长辞已经一百多年了,但他的英名永载史册。这名字跟巴黎公社和法兰西人民不可分割地联系在一起。然而,这个名字不只跟历史上一个确切的时期有关;不论过去,
随着英语高效课堂教学改革向纵深发展,教师必须研究新课程的理念如何真正转化为促进学生发展的实践,提高课堂教学效率。针对目前英语教学中课堂活动效率低、课堂任务与应试难以
<正> 世界卫生组织和国际药联在1993年就开始组织和颁布有关GPP的指导原则,1997年又重新修订,明确指出,GPP就是完成“药学服务”的途径。GPP以药学服务为中心,从患者(消费者)
学习策略,就是学习者为了提高学习的效果和效率,有目的、有意识地制定的有关学习过程的复杂方案。笔者运用学习策略理论,对西班牙语高年级翻译教学活动进行了考察,着重从认知策略
■国内真正具有国际一流水平的■很多■国内领先水平的其实是(?)(?)以后一旦因(?)起产权(?)量避免(?)青(?)是那些拥有自(?)(?)目。”这位清华紫光创(?)如是说(?)
摘要:众所周知,幼儿教育是国家教育基础阶段,也是基础教育的重要组成部分。心理学实践研究表明:4~6周岁的儿童的可塑性非常强,这一阶段的儿童正处在教育启蒙的第一黄金期。但是,现实中,很多家庭甚至幼教者为了让孩子在未来的学习赢在起跑线上,只注重对儿童进行文化知识(比如儿歌、古诗词等)与素质技能(如音体美等)的引导、输送,却忽略了培养儿童交往、思维、动手以及创新等方面的能力,这显然是不符合素质教育要求的
在当前的高中数学课堂教学中还存在许多问题制约教学效果,因此应努力采取措施,促进高中数学实现高效。本文就新课改背景下高中数学课堂教学中的问题进行分析,探究构建高效数学课