第二篇 第六章 神经网络(焦)——汤.docx

上传人:夺命阿水 文档编号:1392817 上传时间:2024-06-15 格式:DOCX 页数:17 大小:166.30KB
返回 下载 相关 举报
第二篇 第六章 神经网络(焦)——汤.docx_第1页
第1页 / 共17页
第二篇 第六章 神经网络(焦)——汤.docx_第2页
第2页 / 共17页
第二篇 第六章 神经网络(焦)——汤.docx_第3页
第3页 / 共17页
第二篇 第六章 神经网络(焦)——汤.docx_第4页
第4页 / 共17页
第二篇 第六章 神经网络(焦)——汤.docx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《第二篇 第六章 神经网络(焦)——汤.docx》由会员分享,可在线阅读,更多相关《第二篇 第六章 神经网络(焦)——汤.docx(17页珍藏版)》请在课桌文档上搜索。

1、第八章人工神经网络第一节人工神经网络概述在您阅读这本书的时候,大约有10个相互连接的神经元在帮助您阅读、呼吸、思考,以及完成各种各样的动作。这些神经元中,有些有着与生俱来的功能,比如呼吸、吮吸,有些则是由后天训练得到的,比如阅读、语言。虽然人们并不完全清楚生物的神经网络是如何工作的,但是根据神经元的基本工作原理而构造的“人工神经元”,可以模拟“人脑”的某些功能,这就是本部分所要讨论的内容。人工神经网络(ArtificialNeuralNetwork,ANN)是在人类对大脑神经网络认识理解的基础上人工构造的能够实现某种功能的神经网络。它是理论化的人脑神经网络的数学模型,是基于模仿大脑神经网络结构

2、和功能而建立的一种信息处理系统。它实际上是由大量简单元件相互连接而成的复杂网络,具有高度的非线性,是能够进行复杂的逻辑操作和非线性关系实现的系统。人工神经网络吸取了生物神经网络的许多优点,因而有其固有的特点,包括:(1)高度的并行性;(2)高度的非线性全局作用;(3)良好的容错性与联想记忆功能;(4)十分强的自适应、自学习功能。人脑神经系统的基本构造单元是神经元,它与人体中其它细胞的关键区别在于具有产生、处理和传递信号的功能。每个神经元都包括三个主要部分:细胞体、树突和轴突。树突的作用是向四方收集由其他神经元传来的信息,轴突的功能是传出从细胞体送来的信息。每个神经元所产生和传递的基本信息是兴奋

3、或抑制。在两个神经元之间的相互接触点称为突触。简单神经元模型如图8-1所示。图8-1简单神经元模型从信息的传递过程来看,一个神经元的树突,在突触处从其他神经元接受信号。这些信号可能是兴奋的,也可能是抑制的。所有树突接受到的信号都传到细胞体进行综合处理。如果在一个时间间隔内,某一细胞接受到的兴奋信号量足够大,以至于使该细胞被激活,而产生一个脉冲信号。这个信号将沿着该细胞的轴突传送出去,并通过突触传给其他神经元。神经元通过突触的联接形成神经网络。人们正是通过对人脑神经系统的初步认识,尝试构造出人工神经元以组成人工神经网络系统,来对人的智能,甚至是思维行为进行研究,尝试从理性角度阐明大脑的高级机能。

4、人工神经元仿效生物神经元最基本的特征,与生物原形相对应,其主要结构单元是信号的输入、综合处理和输出,其输出信号的强度大小反映了该单元对相邻单元影响的强弱。人工神经元之间通过相互联接形成网络,称为人工神经网络。神经元之间相互连接的方式成为连接模式,相互之间的连接度由连接权值体现。在人工神经网络中,改变信息处理过程及其能力的过程,就是修改网络权值的过程。目前多数人工神经网络的构造都采用以下原则:(1)由一定数量的基本单元分层连接构成;(2)每个单元的输入、输出信号以及综合处理内容都比较简单;(3)网络的学习和知识的存储体现在各单元之间的联接强度上。随着人工神经网络技术的发展,其用途日益广泛,应用领

5、域也在不断扩展,己在各工程领域中得到广泛应用。人工神经网络技术可用于如下信息处理工作:函数逼近、感知觉模拟、多目标跟踪、联想记忆及数据恢免等。具体而言,主要用于解决下述几类问题:(1)模式信息处理和模式识别。神经网络经过训练可有效地提取信号、语音、图像、雷达、声纳等感知模式的特征,并能解决现有启发式模式识别系统不能很好解决的不变测量、自适应、抽象或概括等问题。神经网络可以应用于模式识别的各个环节,如特征提取、聚类分析、边缘检测、信号增强、噪声抑制、数据压缩等。模式识别是人工神经网络特别适宜求解的一类问题,神经网络模式识别技术在各领域中的广泛应用是神经网络技术发展的一个重要侧面。(2)人工智能。

6、专家系统是人工智能领域研究时间最长,应用最成功的技术,但人们在应用专家系统解决诸如语音识别、图像处理和机器人控制等这类类似于人脑的形象思维的问题时,却遇到很大困难.神经网络为人工智能开辟了一条暂新的途径,成为人工智能研究领域中的后起之秀。(3)控制工程。神经网络在诸如机器人运动控制、工业声场中的过程控制等复杂控制问题方面有独到之处。较之基于传统数字计算机的离散控制方式,神经网络更适于组成快速实时自适应控制系统。(4)联想记忆。联想记忆的作用是用一个不完整或模糊的信息联想出储存在记忆中的某个完整、清晰的模式来。如何提高模式存贮量和联想质量仍是神经网络的热点之一。目前在这方面的应用有内容寻址器、人

7、脸识别器、知识数据库等。(5)信号处理。神经网络的自学习和自适应能力使其成为对各类信号进行多用途加工处理的一种天然工具,主要用于解决信号处理中的自适应和非线性问题。包括自适应均衡、自适应滤波、回波抵消、自适应波束形成和各种非线性问题。虽然神经网络在许多领域都有成功的应用案例,但神经网络也不是尽善尽美的。目前,神经网络的理论研究和实际应用都会在进一步的探索之中,相信随着人工神经网络研究的进一步深入,其应用领域会更广,用途会更大。第二节人工神经网络的基本结构与模型一个人工神经网络的神经元模型和结构描述了一个网络如何将他的输入矢量转化为输出矢量的过程。这个转化过程从数学的角度来看就是一个计算过程。也

8、就是说,人工神经网络的实质体现了网络输入和输出之间的函数关系。通过选取不同的模型结构和激活函数,可以形成各种不同的人工神经网络,达到不同的设计目的。一、人工神经元的模型神经元是人工神经网络的基本处理单元,它一般是一个多输入、单输出的非线性元件。神经元输出除受信号影响外,同时也受到神经元内部其他因素的影响,所以在人工神经元的建模中,常常还加有一个额外的输入信号,成为偏差(bais),有时也称为阈值或门限值。一个具有r个输入分量的神经元如图8-2所示。其中,输入分量PJ(/=1,2,/)通过与和它相乘的权值分量Wj(J=1,2,)相连,以=S吗Pj的形式形成激活函7=1数f()的输入。激活函数的另

9、一个输入是神经元的偏差力。图8-2单个神经元模型权值Wj和输入P,的矩阵形式可以由行向量W和列向量P来表示:W=卬,卬2,叼P=Pl,P2,PrY神经元的输入向量可以表示为:A=f(WP+b)=;=1可以看出偏差被简单的加在WP上作为激活函数的另一个输入分量。实际上偏差人也是一种权值,只是它的输入为恒为1,这就保证了输入与权值的乘积仍为人。在网络设计中,偏差起着重要的作用,它使得激活函数的图形可以左右移动而增加了解决问题的可能性。二、激活转移函数激活函数(ACtiVatiOntransferfunction)是一个神经元及网络的核心。网络解决问题的能力与功效除了与网络结构有关,在很大程度上取决

10、于网络所采用的激活函数。激活函数的基本作用是:(I)控制输入对输出的激活作用;(2)对输入、输出进行函数转换;(3)将可能无线域的输入变换成制定的有限范围内的输出。下面是几种常用的激活函数:(1)阈值型这种激活函数将任意输入转化为。或1输出,函数/()为单位越阶函数,具有此函数的神经元的输入输出关系为:1A=/,+。)/VVP+Z?0WP+b-2(nZ?)S型激活函数具有非线性放大增益,对任意输入的增益等于在输入输出曲线中该输入点处的曲线斜率值。利用该函数可以使同一神经网络既能处理小信号,又能处理大信号。如果网络神经元中所具有的激活函数是线性的,则称这个神经网络是线性的,反之则称之为非线性的。

11、例1设尸=23-54r,W=().1().3().50.1r,6=0.2,求其阈值型输出结果和线性型输出结果。解:WP+b=ZWjP/+Z?=0.2+0.92.5+0.4+0.2=-0.8;=1由于WP+7V,所以阈值型输出结果/(WP+力=0线性型输出结果/(WP+h)=-0.8三、单层与多层神经网络模型结构将两个或更多的简单的神经元并联起来,使每个神经元具有相同的输入矢量P,即可组成一个神经元层,其中每一个神经元产生一个输出,图8-3给出了一个具有个输入分量,S个神经元组成的单层神经元网络。图8-3单层神经网络模型结构从结构图中可以看出,输入矢量P的每个元素Pj(I/=1,2,j),通过权

12、矩阵W与每个输出神经元相连,每个神经元通过一个求和符号,再与输入矢量进行加权求和运算,形成激活函数的输入矢量,并经过激活函数了()作用后得到输出矢量A,它可以表示为:Avxl=(11)其中S为神经元个数,上式字母的下标给出了矢量矩阵的维数。一般情况下,输入分量数目r与神经元数目S不一定相等。网络权矩阵为:其中行表示神经元的个数,列表示是入矢量的维数,例如“2表示第二个输入的数值到第一个神经元之间的连接权值。将两个以上的单层神经网络连接起来,就组成了多层神经网络。一个人工神经网络可以有许多层,每层都有一个权矩阵W,一个偏差矢量3和一个输出矢量A,一般称第一层的权矩阵和输出矢量为Wl和Al,第二层

13、的权矩阵和输出矢量为W2和A2,以此类推。以三层神经网络为例,其简化的网络结构见图8-4,第一层的输出结果为第二层的输入矢量,第二层的输出结果又为第三层的输入矢量,第三层则输出最终的结果。一般情况下,不同层有不同的神经元个数,每个神经元都带有一个输入为常数I的偏差值。多层神经网络的每一层起着不同的作用,最后一层为网络的输出,称为输出层,所有其它层称为隐含层,因此一个三层的神经网络是包含两个隐含层和一个输出层的。第三节线性神经网络自适应线性神经元ADA1.INE(ADAptive1.inearNEuron)是在1960年由斯坦福大学教授B.Widrow和MHoiT提出的,它是线性神经网络最早的典

14、型代表,其学习算法称之为1.MS(leastmeansquares)算法或W-H(Widrow-Hoff)学习规则。一、线性神经网络模型及学习规则线性神经网络模型如图8-4所示。图8-4线性神经网络层模型线性神经元的传输函数为线性函数,线性神经网络层的输出为A=f(WP+b)=WP+b线性神经网络层的输出可以取任意值,而且可以是多层的,但是只能求解线性问题,而不能用于非线性计算。自适应线性神经元是一个自适应可调的网络,适用于信号处理中的自适应滤波、预测和模式识别。对线性神经网络可以不经过训练直接求出网络的权值和阈值,如果网络由多个零误差解,则取最小的一组权值和阈值;如果网络不存在零误差解,则取

15、网络的误差平方和最小的一组权值和阈值。因为线性系统有唯一的误差最小值,在这种情况下,根据给定的一组输入向量和目标向量,可以计算出实际输入向量和目标向量的误差最小值。另外,当不能直接求出网络权值和阈值时,线性神经网络及自适应线性神经网络可采用使均方误差最小的学习规则,即1.SM算法,或称之为W-H学习规则来调整网络的权值和阈值,它是一种沿误差的最陡下降方向对前一步权值向量进行修整的方法。对于r个训练样本(P1,。),(P22)(Pr/r)W-H学习规则的基本思想是要寻找最佳的W,b,使各设神经元输出的均方误差最小。神经元的均方误差为f&-氏)2_=lI上式中:r一训练样本数;。一神经元输出的实际

16、值;t神经元输出的期望值。为了寻找最佳的W,,使每个神经元输出的均方误差最小,以X代表W或力,求机便对X的偏导:ednse_念)xx令上式等于。即可求出团56的极值点。当然,极值点可以是极大值,也可以是极小值,但Ame只能是正值,即Ame-,曲面一定是凹向上的,所以极值点必为极小值。采用搜索优化法,假设获得第2次训练得到权值或阈值X(Z),然后找出如e-X曲面上在该点的最陡下降方向,再沿此方向对权值进行修正。对于单个线性神经元(%)=吗(Z)P+仪左),有e(k)_t-a(k)_41一(吗(&)+仇4)_wj(k)wj(k)wj(k)P同理阳2)=加-.()=加一(叼(+/)=Tb(k)b(k

17、)b(k)为避免求均方误差梯度的麻烦,以误差平方的梯度代替均方误差的梯度,则dmse*)n&(*)二2e伏)Se(Q=e(k)pwj(k)wj(k)w.(k)mse(k)e2(k)2小阳外=2e(k)=-2e()b(k)b(k)b(k)所谓最陡梯度下降就是梯度的反方向,即W(k+1)=VVj(k)+2ae(k)pb(k+1)=-+2ae(k)式中。是决定权值和阈值收敛速度和稳定性的参数,称之为学习速率。学习速率越大,学习的速度越快,但过大的学习速率会使修正过渡,造成不稳定,反而使误差更大。线性神经网络的1.SM学习规则是建立在均方误差最小化基础上的,其学习过程表现为曲面上的梯度下降。同时,由于

18、误差与权值构成的抛物面只有一个极小值点,因此1.SM算法可以保证误差函数最小,但这需要无限次的学习,所以实际应用中有限次的学习结果只能得到近似解。二、线性神经网络的Matlab仿真程序设计从神经网络的程序设计来说,线性神经网络的Matlab仿真程序设计主要包括以下几个方面:(1)以命令newlin创建线性神经网络。首先根据所要解决的问题确定输入向量的取值范围和维数、网络层的神经元数目等;然后以线性神经网络的创建函数newlin创建网络。(2)以命令train训练网络,或以adapt自适应调整权值和阈值。构造训练样本集,确定每个样本的输入向量和目标向量,调用函数train对网络进行训练,或以ad

19、apt自适应调整权值和阈值,并根据训练的情况,决定是否调整训练参数,以得到满足误差性能指标的神经网络。(3)用Sim对训练后的网络进行仿真,如果所要解决的问题需要得到网络的仿真结果,则需要构造测试样本集,加载训练后的网络,调用函数sim,以得到网络的仿真结果。线性神经网络的指令格式为:(1)net=newlind(P,T)其中:P输入向量;T目标输出向量。(2)net=newlin(PR,SJD,1.R)其中:PRR个输入向量的取值范围;S神经元个数;ID深入延迟向量,缺省值为0;1.R学习速率,缺省值为0.01。例8.2以单层线性网络模拟函数,函数真值表见表8-1。表8-1函数真值表输入Pl

20、输入P2输出。000100010111若把函数看成平面Pi-上的点,则点(0,。),(1,。),(0,1)表示输出为0的点,而点(U)表示输出为1的点。可以看出,这是一个简单的线性划分的问题,用一个线性神经元的网络就可以实现,程序代码如下:functionexp82;clearall;p=010l;0011t=000nnet=newlind(p,t);w=net.IW11b=net.b1a=sim(net,p)y=a0.5%给m文件命名为ep82%清除所有内存变量%输入向量%输出向量%设计线性神经网络%输出训练后的权值%输出训练后的阈值%输出仿真结果%将仿真结果转化为整数值其输出结果如下:W=

21、0.50000.5000-0.2500a=-0.25000.25000.25000.7500V=0001结果中的a是将输入P带入己经训练好的线性神经网络后,计算出的结果,y是取整后的数值。线性神经网络还可以实现噪声对消,下面的例子利用加入噪声的正弦函数来检验线性神经网络的噪声对消功能。例8.3设计线性神经网络,实现对正弦函数的噪声对消。解:输入向量为正弦波信号与随机噪声之和,输出信号为网络调整过程中的误差信号。程序代码如下:functionexp83clearall;%给m文件命名为ep83%消除所有内存变量time=0.01:0.01:10;noise=(rand(1,1000)-0.5)*

22、4;input=sin(time);p=noise;t=input+noise;net=newlin(-1,1,1,0,0005);net.adaptParam.passes=70;net,y,output=adapt(net,p,t);holdonsubpiot(3JJ);plot(time,inputb);xlabel(t,position,10.5,-1);%输入自变量time的取值%设置噪声值%对自变量取正弦函数值%输入因变量t的取值%创建神经网络%设置网络自适应函数%绘制图像ylabel(1S号波形sin(t),fontsize,8);subplot(3J,2);plot(time,

23、t,m,);xlabel(t,position,l0.5,-5);ylabelC随机噪声波形sin(t)+noise(t),fontsize1,8);SUbPIOt(3J,3);plot(time,output,r);xlabel(t,position,10.5,-2);ylabelC输出信号波形y(t)7fontsizeholdoff,8);其结果如图8-51图8-5运行结果另外,在程序设计中,需要注意学习率和训练步长的选择,学习率过大,学习的过程将不稳定,而且误差会更大;学习率过小,学习的过程将变慢,需要的训练步长数将加大。第四节BP神经网络线性神经网络的1.MS学习算法只能训练单层神经网

24、络,而单层神经网络只能解决线性可分的分类问题。多层神经网络可以用于非线性分类问题,但需要寻找训练多层神经网络的学习算法。1974年RWerbos提出了一个适合多层网络的学习算法,1986年美国加州的PDP小组将该算法用于神经网络的研究,才使之成为迄今为止最著名的多层网络学习算法BP算法,由此算法训练的神经网络,称之为BP神经网络。在人工神经网络的实际应用中,BP网络广泛应用于函数逼近、模式识别、数据压缩等。一、BP神经网络模型BP神经元与其它神经元的不同之处是BP神经元的传输函数为非线性函数,最常用的函数是Iogsig和tansig函数,有的输出层也采用线性函数PUreIin。其输出为A=lo

25、gsig(Wp+b)BP神经网络一般为多层神经网络。由BP神经元构成的二层神经网络如图8-?所示。BP网络的信息从输入层流向输出层,因此是一种多层前馈神经网络。如果多层BP网络的输出层采用S形传输函数,其输出值将会限制在一个较小的范围内,而采用线性传输函数则可以取任意值。在确定BP网络的结构后,要通过输入和输出样本集对网络进行训练,亦即对网络的阈值和权值进行学习和修正,以使网络实现给定的输入输出映射关系BP神经网络的学习过程分为两个阶段:第一阶段是输入己知学习样本,通过设置的网络结果和前一次迭代的权值和阈值,从网络的第一层向后计算出各神经元的输出。第二阶段是对权值和阈值进行修改,从最后一层向前

26、计算各权值和阈值对总误差的影响,据此对各权值和阈值进行修改。以上两个过程反复交替,直到达到收敛为止。由于误差逐层往回传递,以修正层与层间的权值和阈值,所以称该算法为误差反向传播算法。标准的BP算法和W-H学习规则一样是一种梯度下降学习算法,其权值的修正是沿着误差性能函数梯度的反方向进行的。针对标准BP算法出现了几种给予标准BP算法的改进算法,如变梯度算法、牛顿算法等。BP神经网络的主要改进算法见表8-2表8-2BP神经网络主要改进算法算法函数最速下降BP算法traingd动量BP算法traingdm学习率可变BP算法traingda/traingdx弹性BP算法trainrp变梯度算法F-R修

27、正函数traincgf变梯度算法P-R修正函数traincgp变梯度算法P-B修正函数traincgb变梯度SCG算法trainscg黄金分割搜索srchgolBrent搜索srchbre对分三次插值混合搜索srchhybCharaIambous搜索srchcha反向跟踪搜索srchbac拟牛顿BFGS算法trainbfg拟牛顿OSS算法trainoss1.M算法trainlm对于一个给定的问题,到底采用哪种训练方法,其训练速度是最快,这是很难预知的,因为这取决于许多因素,包括给定问题的复杂性、训练样本集的数量、网络权值和阈值的数量、误差目标、网络的用途等。BP神经网络的指令格式为:net=n

28、ewffnet=newff(PR,SlS2.SN,TflTf2.TfN,BTF,B1.F,PF)其中:PR输入向量的取值范围:Si第i层神经元个数,总共N层;Tfi第i层的传递函数,缺省值为tansig;BTFBP网络训练函数,缺省值为trainlm;B1.F一BP网络权值和阈值学习函数,缺省值为Iearngdm;PF性能函数,缺省值为mse。二、BP神经网络的Matlab仿真程序设计例8.4建立一个两层的BP神经网络,输入范围是0,10,网络第一层采用正切函数,第二层采用线性神经元,样本输入P和目标输出T为:P=012345678910;T=01234321234ofunctionexp84

29、;clearall;p=012345678910;t=01234321234;net=newff(O10,5l,tansig,purelin);net.trainParam.epochs=50;net=train(net,p,t);y=sim(net,p);plot(p,t,p,y,o,)%设定输入向量%设定目标输出%创建网络,输入范围是010,两层神经元个数为51%训练次数N训练神经网翻%对训练好的网络进行拟和,拟和结果为y%绘制图像解:创建BP神经网络程序代码如下:训练后得到的拟和结果见图8-6。图8-6BP神经网络训练结果比较在BP神经网络的训练中往往会出现这样的情况,当网络的训练误差很

30、小的时候,一个新的输入会使网络的训练误差迅速增大。这是因为网络记忆了已被训练的样本,而对新的输入没有良好的泛化能力,也就是说网络对新输入的计算结果与真实值有较大的误差。提高网络泛化能力的一个办法就是适当的增大网络的规模,但是对于一个具体的问题,要事先就很好的确定网络的规模是很困难的。而在MaUab神经网络工具箱中,提供了提高网络的泛化能力的方法规则化调整(RegUIariZation).规则化调整方法是通过调整网络的性能函数来增强网络泛化能力。普通的BP神经网络都采用网络误差的均方根之和作为性能函数:/=36=:(,)2=ti-ai)2NZ=IN/=1其中4、ti.%分别表示第i个训练样本的训

31、练误差、目标输出和网络输出。而调整后的网络性能函数为:msereg-mse+(1-)msvv1N其中7为性能函数,msw=yO使用该性能函数可以减少网络的有效权值和阈值,并且使网络的训练输出更加平滑,从而增强网络的泛化能力。在Mauab工具箱中,提供了自动设置最优性能参数7的函数trainbr,该函数假设网络的权值和阈值是特殊分布的随机变量,然后用统计学方法估计出了产值。例8.5检验一个1-20-1的BP神经网络逼近一个带噪声的正弦函数的情况。解:若采用trainrp函数逼近,得到的结果如图8-7所示图8-7BP神经网络trainrp逼近结果如果采用trainbr函数,程序代码如下:funct

32、ionexp85;clearall;p=-1:0.05:1;tt=sin(2*pi*p);t=sin(2*pi*p)+0.1*randn(size(p);net=newff(minmax(p),2)1,tansig,purelin)trainrp,);D;1;%minmax命令表示取p的极值net.trainParam.show=10;net.trainParam.cpochs=5net.trainParam.goal=0.00net=train(net,p,t);y=sim(net,p);Plot(P,tt,p,y,)%每训练10次显示一次结果%误差达到0.001则停止训练训练后得到的拟和结

33、果见图8-8。图8-8BP神经网络trainbr逼近结果比较图8-7和图8-8可以看出,函数的拟和程度有了明显的提高。在实际应用中,经常会遇到一些非线性的输入输出曲线,且没有明确的函数关系,借助神经网络可以实现曲线拟和,从而方便的解决这一问题。例8.6已知某系统输出y与输入X的部分对应关系如表8-3所示,设计一BP神经网络,完成y=()的曲线拟和。表8-3函数的部分对应关系Xy-1-0.832-0.9-0.423-0.8-0.024-0.70.344-0.61.282-0.53.456-0.44.02X-0.3-0.2-0.100.10.20.3y3.2322.1021.5040.2481.2

34、422.3443.262X0.40.50.60.70.80.91y2.0521.6841.0222.2243.2021.9842.542解:以隐层节点数为15的两层BP网络来实现其曲线拟利。程序代码如下:functionexp86;clearall;p=-k.l:1;l=-0.8322.5421;net=newff(-l1,151,tansig,purelin),traingdx,leamgdm);net.trainParam.epochs=2500;net.trainParam.goal=0.001;net.trainParam.show=50;%这里省略了输入,读者可自行补全net=tra

35、in(net,p,t);r=sim(nel,p);PIOl(P,t,p,r,*)在训练的过程中,MatIab会给出误差的变化情况,在主程序窗口中,显示为;:TRAlNGDX,Epoch0/2500,MSE14.5069/0.001,Gradient19.2415/Ie-006TRAINGDX,Epoch50/2500,MSE0.570044/0.001,Gradient0.493064/le-006TRAINGDX,Epoch100/2500,MSE0.0738583/0.001,Gradient0.0616707/le-006TRAINGDX,Epoch150/2500,MSE0.01315

36、6/0.001,Gradient0.0519979/1e-006TRAINGDX,Epoch200/2500,MSE0.00824782/0.001,Gradient0.017902/le-006TRAINGDX,Epoch229/2500,MSE0.000974131/0.001,Gradient0.0223226/1e-006TRAINGDX,Performancegoalmet.根据上面的信息可以看到,训练在进行到229次的时候(程序代码要求进行2500次),由于误差已经达到了精度要求(0.001),网络提前结束了训练。同时,MaUab还给出了图形化的显示,如图8-9。-5Bm-098n

37、m三BJl图8-9网络训练误差递减的情况上图中10一3处有一条横线,表示误差减小到这天横线之下则训练自动停止。程序最后给出了仿真情况的拟和图像,见图8-10。图8-10BP网络方针情况观察以上的结果可以看出,网络仿真的情况还是很好的。BP网络式多层网络,从理论上讲,只要对隐层中神经元的数目不加限制,两层BP网络就可以实现从输入到输出的任意函数映射,所以与线性神经网络比较,BP网络的功能更强,应用更广,BP网络的学习规则与1.SM学习规则一样,都是采用使均方误差最小的最速下降算法,不同的是梯度的计算方法不同。最速下降BP算法存在收敛速度慢,易陷入局部最小、易产生振荡等不足,但BP网络仍然是目前应

38、用最广、最成功的神经网络模型。课后习题1 .生物神经元包含哪三个基本部分,其主要功能都是什么?2 .人工神经网络有哪些特点,主要可以解决哪些问题?3 .简述激活函数的三种类型。4 .设尸=-36497,W=0.20.10.30.4f,b=0.25,求其激活函数的阈值型输出结果和线性型输出结果。5 .以单层线性网络模拟函数,函数真值表见表8-1。表8-4函数真值表输入PI输入P2输出。0.20.301.30.110.11.111.21.416 .编写神经网络程序,实现区间J内指数函数y=的噪声对消。7 .已知某系统输出y与输入X的部分对应关系如表8-5所示,设计一BP神经网络,完成y=(x)的曲线拟和。表8-5函数的部分对应关系X1234567y0.2350.9741.2832.3573.2612.5984.632X891011121314y3.2923.1752.3141.6650.2770.8541.3268.若下列数据表示一组时间序列,试设计个BP神经网络,实现对数据的拟和,并对下一时间的数值进行预测。0.4510135900.22400.05400.06500.05200.03800.05700.02200.00800.01600.14500.29200.01300.06000.56300.0580

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号