实验二-基于BP神经网络算法的函数逼近.doc

实验二-基于BP神经网络算法的函数逼近.doc

ID:55579611

大小:117.00 KB

页数:6页

时间:2020-05-18

实验二-基于BP神经网络算法的函数逼近.doc_第1页
实验二-基于BP神经网络算法的函数逼近.doc_第2页
实验二-基于BP神经网络算法的函数逼近.doc_第3页
实验二-基于BP神经网络算法的函数逼近.doc_第4页
实验二-基于BP神经网络算法的函数逼近.doc_第5页
资源描述:

《实验二-基于BP神经网络算法的函数逼近.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验二基于BP神经网络算法的函数逼近1、实验目的掌握Matlab子函数的编写与调用。理解BP神经网络算法的原理,并利用程序实现利用 BP算法逼近任意非线性函数。2、实验内容与实验要求掌握BP神经网络算法的原理。掌握matlab子函数的编写方法及调用方法。根据BP神经网络算法的原理,编写Matlab程序,逼近非线性函数。3、实验要求1)自己编写Matlab函数。2)书写实验报告。3)分析实验结果,用图描述出非线性函数的真实曲线以及BP算法逼近的曲线。4、实验设备1)计算机2)Matlab软件5、实验原理BP神经网络算法:神经网络由神经元和权重构成,神经元即为:输入节点

2、,输出节点和隐层结点三部分;权重是各个神经元相互连接的强度。神经网络通过训练,从样本中学习知识,并且将知识以数值的形式存储于连接权中。神经网络的分类过程分成两部分,首先学习网络的权重,利用一些已知的数据训练网络得到该类数据模型的权重;接着根据现有的网络结构和权重等参数得到未知样本的类别。BP算法被称作反向传播算法,主要思想是从前向后(正向)逐层传播信息;从后向前(反向)逐层传播输出层的误差,间接算出隐层误差。6、BP算法具体步骤①前馈计算设隐层的第个节点的输入和输出分别为:其中为激励函数由于隐层的输出就是输出层的输入,则输出层第个节点的总输入和输出分别为:若网络输出

3、与实际输出存在误差,则将误差信号反向传播,并不断地修正权值,直至误差达到要求为止。②权值调整设误差函数定义为:为了简便,以下计算都是针对每个节点而言,误差函数记作。l输出层权值的调整权值修正公式为:定义反传误差信号为:式中所以又由此可得输出层的任意神经元权值的修正公式:或(l隐层权值的调整式中由于误差函数与隐层输入不存在直接的函数关系,因此不能直接求得,所以隐层的反传误差信号为由此可得,隐层权值的修正公式为;或7、程序代码w10=[0.10.2;0.30.15;0.20.4];w11=[0.20.1;0.250.2;0.30.35];w20=[0.2;0.25;0.

4、3];w21=[0.15;0.2;0.4];q0=[0.10.20.3];q1=[0.20.150.25];p0=0.2;p1=0.1;xj=[0.5;0.9];k1=5;k2=;yb=0;e0=0;e1=0;e2=0;fors=1:72yp1=cos(2*3.14*k1*s/360);fork=1:k2fori=1:3x=w11(i,1)*xj(1,:)+w11(i,2)*xj(2,:);z=x+q1(:,i);o=[1-exp(-z)]/[1+exp(-z)];m=1/[1+exp(-z)];m1(i,:)=m;o1(i,:)=o;endfori=1:3yb=0

5、;yb=yb+w21(i,:)*o1(i,:);endyi=yb+p1;n=1/[1+exp(-yi)];y=[1-exp(-yi)]/[1+exp(-yi)];e0=e1;e1=e2;e2=[(yp1-y).^2]/2;xj1=e2-e1;xj2=e2-2*e1+e0;xj=[xj1;xj2];d2=n*(1-y)*(yp1-y);bk=d2;fori=1:3u=w21(i,:)*bk;d1=[1-o1(i,:)]*u;d0=m1(i,:)*d1;qw=q1(:,i)-q0(:,i);q2=q1(:,i)+0.8*d0+0.4*qw;q3(:,i)=q2;forj

6、=1:2dw=w11(i,j)-w10(i,j);w12=w11(i,j)+0.8*d0*xj(j,:)+0.6*dw;w13(i,j)=w12;endendw10=w11;w11=w13;q0=q1;q1=q3;fori=1:3h=w21(i,:)-w20(i,:);w22=w21(i,:)+0.4*d2*o1(i,:)+0.75*h;w23(i,:)=w22;endw20=w21;w21=w23;ph=p1-p0;p2=p1+0.9*d2+0.6*ph;p0=p1;p1=p2;ife2<0.0001,break;elsek=k+1;endende(s)=e2;y

7、a(s)=yp1;yo(s)=y;s=s+1;endw11=w13;w21=w23;s1=s-1;s=1:s1;plot(s,ya,s,yo,'g.',s,e,'rx');title('BP');8、运行结果9、实验结果分析1)此次逼近的函数为y=cosx,蓝线为真实的正弦曲线,绿色为逼近的正弦曲线,红色代表误差曲线,从图像上可以得出逼近结果与原曲线契合程度高,效果良好。2)为了测试程序广泛适用性,对函数进行修改反复测试,效果良好,误差十分小。3)BP算法能很有效的完成数据训练,是一个训练数据的好方法。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。