一种BP神经网络误差函数的优化算法

来源 :教育科研 | 被引量 : 0次 | 上传用户:sallen009
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要 BP网络是现在应用最广泛的神经网络。但经典的网络训练算法往往采用的误差函数比较单一,使得网络训练速度比较慢,针对这种情况,提出一种新的误差函数,并综合考虑,优化算法,提高了网络的训练速度。用Matlab进行仿真,通过分析比较,证明了新算法的优越性。
  关键词 BP神经网络 误差函数 训练速度 算法
  中图分类号TP183 文献标识码A
  
  Optimization algorithm of BP neural network error function
  ZHANG Miao(Air Force Engineering University Engineering College,Shanxi Xi’an 710038,China)
  LEI Hong-li (Xi'an running water main corporation Nanjiao water works,Xi’an 710054,China)
  Abstract BP network is the most pop neural network at present. However,separate error function is often applied in the traditional algorithm of network training,which reduces the training velocity of the network. In this case,a new error function is brought forward. Two functions are considered and the algorithm is optimized,which increase the training velocity. Matlab is used to simulate the new algorithm. And the new algorithm is proved to be advanced from the simulation.
  Key words BP neural network; Error function; Training velocity;Algorithm
  
  人工神经网络作为一种非线性建模和模式识别方法,具有良好的非线性品质、极高的识别精度、灵活而有效的学习方式、完全分布式的存储结构和模型结构的层次性,已广泛地应用于模式识别、语音识别、智能控制、信号处理、生物工程、非线性优化领域,并显示出它的巨大潜力[1]。误差反向传播(Error Back Propagation—BP)算法(1986年由以Rumelhart和McCelland为首的科研小组提出)使得神经网络获得了巨大的生机。但经典的BP算法因为误差函数选取比较单一,使得网络的训练速度比较慢。本文在经典BP的误差函数的基础上提出了一种新的误差函数,从而提高网络的训练速度。
  
  一、BP神经网络模型
  
   BP网络是目前应用最广泛的神经网络之一,是一种正向求解、反向传播并达到修改网络层次之间连接权值的网络模型。BP算法的具体思想是:对一个输入样本,从输入层经隐含层逐层正向计算,得到输出层的输出。然后,让它与期望样本比较,如有偏差,则把输出层单元的误差向输入层逆向传播,由此调整连接权值与阈值,从而使网络输出值逼近期望输出,通常使之达到误差均方值取最小为止[5]。
  典型的BP网络是3层前馈网络,即输入层、隐含层和输出层,其中每层的结点与上下层的结点间都有联系,而同层结点之间不存在联系。其基本的网络结构如图1所示[2]。
  
  其中xj为第j个输入,yi为第i个输出,ωij为所有与第i个神经元相连的权值。
  BP神经网络的工作过程通常由二个阶段组成。第一阶段是学习期,在这阶段中的网络,通过给定的已知数据和已知的目标,调节各层间的权值,调节公式如下:
  
  式中η为学习率,E(n)为第n次迭代期望值与实际输出的均方误差,依次迭代,直到实际输出与期望输出间的误差满足某一设定误差值。
  第二阶段是工作期,在这阶段网络各结点的连接权值及变换函数均不变,利用训练好的网络对输人数据进行正向计算,最后输出识别结果。
  
  二、误差函数的优化算法
  
  (一)经典误差函数算法
  假设BP神经网络结构如图1所示,有N个输入层神经元,M个输出层神经元,P个隐层神经元。选定一个非线性光滑活化函数f1=f2=f:R1→R1,并按照稍候给定的规则确定权值矩阵W={Wmp}1≤m≤M,1≤p≤P和V={Vpn}1≤p≤
  是隐层单元对第m个输出单元的线性输入。
  权值W和V的确定(学习过程)应使误差函数E(W,V)达到极小,我们采用常用的方法即梯度下降法,取得当前权值
  
  (二)改进误差函数算法
  由权值变量的计算可知,选取误差函数时需要考虑到以下两点:首先,函数须满足可微或是局部可微,其次,函数要在Oj=yj处取得极小。根据这两个要求,结合神经元节点函数即非线性光滑函数的特点,我们定义一个新的误差函数:
  
  我们假定f1(x)=f2(x)=f(x)的饱和值为±1(对于常用的S型函数f(x)= 和f(x)=tanh(x)均满足此条件)。
  采用常用的方法即梯度下降法,取得当前权值Wmp和Vpn的改变量为:
  
  (三)误差函数优化算法
  如果我们取改进的S型函数[3]:f(x)=tanh(βx)(17)
  f′(x) =β(1-f2(x))(18)
  利用改进的误差函数在计算权值变量时,对应的式子(14)应为:
  
  此式与式(8)相比较可以看出,(8)式中的导数项f′(H ) 变成了常数项β,而这一改变克服了权值修正公式(7)的如下缺点:当实际输出y 极端错误时(例如:y 由式(18),f′(H )接近于零,从而使本应作较大改变的当前权值W只得到极小的改变。这样直接影响了网络训练时的收敛速度。而如果我们采用改进的误差函数则不存在这些问题,可以明显地提高训练速度,达到训练效果。
  但是改进后的误差函数也有其不足之处,首先,此误差函数存在局部不可微(如当目标输出向量中的元素O =1时,误差函数在此点不可微,使得训练无法进行)。其次,在非局部极限时,对当前权值的改变不够灵活,得到的曲线不够光滑。
  我们综合两种误差函数的特点,在误差判断时我们采用平方型误差函数,而在计算当前权值改变量时,我们把两者结合起来,这样我们可以得到相应于(8)式的公式:
  
  然后再利用上面的算法来计算权值的改变量,进行网络的训练。
  
  三、仿真
  
  根据BP网络算法的原理,我们应用Matlab6.5进行仿真比较[6]。
  (一)设置BP神经网络。
  1.取定一组训练样本
  
  其中I样本输入向量,O为目标输出。
  2.建立一个三层的网络,输入层、隐层、输出层的神经元数目分别为:2、3、1。其中网络隐层神经元数目的选取参阅了文献[4]。
  3.选取网络权值的初值。在Matlab中,用rand产生随机权值矩阵,作为初值。
  
  其中in_num=2;mdl_num=3;out_num=1;分别代表网络的输入层、隐层、输出层的神经元数目。
  4.设定训练误差E=0.001,学习率η=0.01,非线性光滑函数f(x)的β=0.1。
  
  (二)采用平方型误差函数对样本进行训练[7],得出仿真结果如图2。
  (三)采用改进优化的误差函数对样本进行训练,得出仿真结果如图3。
  
  (四)分析比较
  对同一样本在同一BP网络中采用不同的误差函数得到的训练结果进行分析可以看出,当我们把训练误差E设定在相同值的情况下,采用平方型误差函数的算法,需要151次训练才能达到指定误差要求(通过Matlab仿真得到的输出可以直接读出)。而采用改进的误差函数算法,只需要77次训练就能达到误差
  E=0.001的要求(通过Matlab仿真得到的输出可以直接读出)。
  
  四、结论
  作者在文章中对BP神经网络中的经典的误差函数进行了改进,提出一种新的误差函数,并综合了两种误差函数的特点,对神经网络的算法进行了局部优化。通过分析比较两种情况下的结果可以看出,在不影响训练误差精度的情况下,采用改进的误差函数的算法的网络的训练速度明显比采用经典平方型误差函数的算法快。
  参考文献
  [1]刘丙杰,胡昌华,马瑞萍.一种新的神经网络重新学习算法[J].系统工程与电子技术,2005,27(1):131-133.
  [2]唐志芳,时海涛,鲁华祥,王守觉.基于BP神经网络的系统电源管理算法[J].计算机工程,2006,32(4):214-216.
  [3]王金峰,罗省贤.BP神经网络的改进及其在初至波拾取中的应用[J].物探化探计算技术,2006,28(1):14-17.
  [4]吴微.神经网络计算[M].北京:高等教育出版社,2003.
  [5]焦李成.神经网络系统理论[M].西安:西安电子科技大学出版社,1990.
  [6]许东,吴铮.基于MATLAB 6.X的系统分析与设计—神经网络[M].西安:西安电子科技大学出版社,2002.
  [7]曹戈,赵阳.MATLAB实用教程[M].北京:电子工业出版社,2004.
  
  注:“本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。”
其他文献
摘要 作为新形势下的教师,不仅要有健康的体魄,良好的师德、心理素质,还需要有较强的专业素质、科研能力和不断进取的精神。  关键词 素质教育 师德 专业技能 心理素质    振兴民族的希望在教育,振兴教育的希望在教师。只有教育者的高素质,才有素质教育的高质量,才能担负起实施素质教育,培养高素质的一代新人的重担。那么作为历史教师,怎样才能适应素质教育的要求呢?笔者认为,  应具备以下四大基本素质:  
期刊
摘要 本文指出我县教师队伍存在问题及其产生原因,试图提出几点提高我县教师队伍整体素质的建议,以期促进我县新课程改革顺利实施。  关键词 教师素质 课程改革    我县国家基础教育课程改革实验工作已全面展开。当前的新课程改革给教师带来了严峻的挑战和不可多得的机遇,必将促使我县的中小学教师在素质要求上发生质的变化。这里,笔者试图提出几点提高我县教师队伍整体素质的建议,以期促进我县新课程改革顺利实施。 
期刊
摘要 小说是大家都很熟悉的一种文体,在中学的语文教材中选编了一些古今中外的文学名著。名著之所以名垂千古,很大程度上是因为塑造了典型的令人过目难忘的人物形象。因此,小说文本的鉴赏,其核心就是对小说人物的审美鉴赏。可是在我们的教学实践中还存在着诸如标签化,公式化,简单化之类的问题,影响了师生对人物的理解鉴赏。本文试图从文艺鉴赏理论出发,探讨运用新的理论和方法,引领学生学会鉴赏小说人物,丰富学生的精神世
期刊
摘要 加强口语交际训练,提高口语交际能力,是现代社会对人才素质提出的必然要求。教育工作者应给学生创设说话的机会,鼓励学生树立信心,克服胆怯心理。根据学生的实际情况,采取切实可行的方法,加强口语训练。指导学生在日常生活中加强自我训练。师生共同努力,提高表达能力。  关键词 训练 口语 表达能力 时代需要    一个人的口语交际能力,不仅仅是单纯的说话技巧的体现,同时它取决于一个人的思维能力、知识水平
期刊
摘要 新课程标准指出:“培养学生高尚的道德情操和健康的审美情趣,形成正确的价值观和积极的人生态度,是语文教学的重要内容,不应该把它们当作外在的附加任务。应该注重熏陶感染,潜移默化,把这些内容贯穿于日常的教学过程之中。”可见,中学语文教学与德育教育是相辅相成的。  目前,中学生对社会的接触和了解越来越广泛,在一定程度上,社会上不良风气和不正确的思想意识对他们产生了一定的负面影响。当他们一旦接触到不良
期刊
摘要 本文主要概述了元认知知识,元认知调控在学生学习活动中的作用,提出有效的元认知过程有助于促进学生的学习;元认知与学生学习之间的关系值得进一步研究探讨。    元认知(metacognition)是近二十年来西方心理学和教育学领域提出的一个新概念,包括认知主体对自己心理状态、能力、任务、目标、认知策略等方面的知识,以及认知主体对自身各种认知活动的计划、监控和调节。在认知心理学家看来,学生的学习是
期刊
俗话说得好:“一母生九子,连母十个样”。又说“人上一百,形形色色。”确实,学生由于存在先天个体的差异,再加上受后天学习环境、学习方法、学习态度及人生观、价值观等诸多因素的影响,因此在一个班集体里,相对优生来讲,必然会有后进生。  这些学生迫于学校、社会及家庭的压力,再加之自身学习和心理的压力,往往会产生冷漠、孤僻、自卑、畏学、猜疑、悲观、逆反等心理,甚至自暴自弃,破罐子破摔——以烂为烂。跟教师和家
期刊
摘要 教师的自我效能感与教师的教学行为、学生的学业成绩和人格形成之间存在着密切关系。本文在总结概括国内外教师自我效能感的理论研究及实践应用的基础上,提出我国教育改革增进教师自我效能感的有效策略。  关键词 教师 自我效能感 自主发展    Abstract There is a relation among teacher’s perceived self-efficacy and teacher
期刊
摘要 本文从课堂内外激发求知欲,培养创造性思维,开展创造性活动几方面论述创造力的培养。  关键词 创造力 培养    民族振兴,科教兴国,创造力非常重要。师范专业学生是未来的人民教师,作为老师,在传授他们知识的同时,要课堂内外结合,通过适当的,有效的训练,发展学生的创新思维,培养他们的创造力。    一、发挥第一课堂的主导作用    (一)抓好基础教学  基础知识和基本技能是创造力的基础,严格按照
期刊
摘要 亲社会行为是泛指一切符合社会期望而对他人、群体或社会有益的行为,也就是说亲社会行为是任何以他人为目标所采取的行动。它主要包括分享行为、捐献行为、合作行为、助人行为、安慰行为和同情行为等。从已有研究看,青少年很早就已表现出亲社会行为,但这种行为是随着青少年社会化和认知的发展而变化的。青少年的亲社会行为是渐渐确立的,这里父母起了重要作用。学校、社会在培养青少年亲社会行为上具有不可替代的作用。培养
期刊