- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
(采用BP神經网络完成非线性函数的逼近)神经网络
控制系统仿真与模型处理设计报告
(采用BP神经网络完成非线性函数的逼近)
1、题目要求:
(1)确定一种神经网络、网络结构参数和学习算法。
(2)选择适当的训练样本和检验样本,给出选取方法。
(3)训练网络使学习目标误差函数达到0.01,写出学习结束后的网络各参数,并绘制学习之前、第100次学习和学习结束后各期望输出曲线、实际输出曲线。绘制网络训练过程的目标误差函数曲线。
(4) 验证网络的泛化能力,给出网络的泛化误差。绘制网络检验样本的期望输出曲线和网络输出曲线。
(5)分别改变神经网络的中间节点个数、改变网络的层数、改变学习算法进行比较实验,讨论系统的逼近情况,给出你自己的结论和看法。
2、设计方案:
在MATLAB中建立M文件下输入如下命令:
x=[0:0.01:1];
y=2.2*power(x-0.25,2)+sin(5*pi*x);
plot(x,y)
xlabel(x);
ylabel(y);
title(非线性函数);
得到如下图形,即所给的非线性函数曲线图:
构造一个1-7-1的BP神经网络,第一层为输入层,节点个数为1;第二层为隐层,节点个数为7;变换函数选正切s型函数(tansig);第三层为输出层,节点个数为1,输出层神经元传递函数为purelin函数。并且选Levenberg-Marquardt算法(trainlm)为BP网络的学习算法。对于该初始网络,我们选用sim()函数观察网络输出。继续在M函数中如下输入。
net=newff(minmax(x),[1,7,1],{tansig,tansig,purelin},trainlm);
y1=sim(net,x);
figure;
plot(x,y,b,x,y1,r)
title(期望输出与实际输出比较);
xlabel(t);
则得到以下所示训练的BP网络期望输出与实际输出曲线比较:
应用函数train()对网络进行训练之前,需要预先设置训练参数。将最大训练次数为100次,训练精度设置为0.01,学习速度为0.01。
net.trainParam.epochs=100;
net.trainParam.goal=0.001;
net.trainParam.lr=0.01;
net=train(net,x,y);
y2=sim(net,x);
figure;
plot(x,y,-r,x,y2,*g)
title(训练后的结果);
下图为网络训练过程,可以看到,当训练4次以后,就已达要求。
下图为训练后的结果曲线,“*”为学习过后的曲线,红线为期望输出,两条曲线已经很相近了。这说明经过训练后,BP网络对非线性函数的逼近效果相当好。
接着检验网络的泛化能力,在M文件后,继续输入
err=y-y2;
figure;
plot(x,y2,*g,x,err,+c);
得到以下图形,由图可知,网络具有很好的泛化能力。
将神经网络的节点数为3时,相关图形如下。
从上面3个图中我们可以看出,当节点为3时,经过训练后,BP网络对非线性函数的逼近效果明显减弱,并且在经过100次训练后仍然达不到所要求的输出精度。我由此推出,当层数一样多的时候,隐层神经元数目愈多,则BP网络逼近非线性函数的能力越强。
我把上述的层数分布:1-7-1改为1-3-5-1,得到以下的结果:
从三幅图中我们可以看到,在神经元数目一样的情况下,不同的层数对结果是有明显影响的。
我将原训练函数trainlm改为traingd,得到以下输出结果。
从三幅图可以看出,将trainlm改为traingd之后,连所要求的精度都不能达到。我由此推出,训练算法对非线性函数的逼近有一定影响,应当选择适合的训练算法。
3、总结:
通过这次作业,我总算对神经网络有了一定的了解,在实践中学习的确能加深对知识的理解和运用能力。这次我特地没有用nntool工具箱,而是采用M文件编辑,也算对其有了初步的掌握,感觉M文件编写很灵活,分号的作用很明显,和命令窗口相比也更容易修改参数。
4
您可能关注的文档
最近下载
- 教科版(2024)小学科学一年级上册(全册)教案及反思(含目录) .pdf VIP
- 2025年辽宁省初中学业水平考试(锦州市卷)中考英语试题含解析答案.pdf VIP
- 土建工程与基础 13次课第4章地基与基础第一节 土物理性质及工程分类.ppt VIP
- 科学技术是第一生产力创新思想.doc VIP
- JFE++Super-OLAC、HOP、E-WEL.ppt VIP
- 土建工程与基础课件 14次课 4.2 地基中的应力与变形.ppt VIP
- 第5课 美丽河山我们的家 课件 人民版中华民族大家庭.ppt
- 土建工程与基础课件 15次课 第4章 地基与基础 第3节 基础设计.ppt VIP
- 土建工程与基础课件10-1第3章3.6钢筋混凝土构件的裂缝和变形.ppt VIP
- 土建工程与基础课件10-23.7钢筋混凝土受压构件的计算.ppt VIP
文档评论(0)