matlab神经网络(20页).docVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
matlab神经网络(20页),bp神经网络matlab实例,matlab神经网络,matlab神经网络工具箱,matlab神经网络30例,精通matlab神经网络,rbf神经网络matlab,bp神经网络matlab程序,卷积神经网络matlab,matlab神经网络编程

Matlab神经网络工具箱 2010-7-21 今天学的是BP神经网络,首先看的是一个关于非线性函数逼近的例子,最后得出一个心得:在使用newff函数生成一个新的网络时,神经元的层数和每一层的神经元数会对结果造成不小的影响,一般都采用[n,1]的建立方法,其中n为隐层的神经元数,1为输出层的神经元数。 然后是做了一个识别系统,算是一个较大的神经网络,具体的代码解释和分析如下: [alphabet,targets]=prprob; [R,Q]=size(alphabet); [S2,Q]=size(targets); S1=10; [R,Q]=size(alphabet); [S2,Q]=size(targets); P=alphabet; net=newff(minmax(P),[S1,S2],{logsig,logsig},traingdx); net.LW{2,1}=net.LW{2,1}*0.01; net.b{2}=net.b{2}+0.01; 其中的proprob是matlab自带的一个生成字母表布尔值的函数。可以具体查看。 T=targets; net.performFcn=sse; net.trainParam.goal=0.1; net.trainParam.show=20; net.trainParam.epochs=5000; net.trainParam.mc=0.95; [net,tr]=train(net,P,T) 接下来首先进行无噪声训练。 netn.trainParam.goal=0.6; netn.trainParam.epochs=300; T=[targets targets targets targets]; for pass=1:10 ????????? P=[alphabet,alphabet,(alphabet+randn(R,Q)*0.1),(alphabet+randn(R,Q)*0.2)]; ????????? [netn,tr]=train(net,P,T); end 接下来是有噪声训练,采用随机数生成影响输入矩阵的方式。这里收敛的有点慢,在应用于其他系统的时候值得注意。 netn.trainParam.goal=0.1; netn.trainParam.epochs=500; netn.trainParam.show=5; P=alphabet; T=targets; [net,tr]=train(netn,P,T) 接下来还进行无噪声训练,可能是前面的逼近情况已经很了理想了,这里只用了0次循环。。。。。。 noise_range=0:.05:.5;?????????? %标准差范围 max_test=100;???????????????????????????????? %噪声信号总数 network1=[]; network2=[]; T=targets; for noiselevel=noise_range ?????????? errors1=0; ?????????? errors2=0; ?????????? for i=1:max_test ??????????????? P=alphabet+randn(35,26)*noiselevel; ??????????????? A=sim(net,P); AA=compet(A);?????????? ??????????????? errors1=errors1+sum(sum(abs(AA-T)))/2; ??????????????? An=sim(netn,P); ??????????????? AAn=compet(An); ??????????????? errors2=errors2+sum(sum(abs(AAn-T)))/2; ?????????? end network1=[network1 errors1/26/100]; network2=[network2 errors2/26/100]; end plot(noise_range,network1*100,--,noise_range,network2*100); plot(noise_range,network1*100,--,noise_range,network2*100,+); title(识别误差); xlabel(噪声指标); ylabel(不同的训练方式); legend(无噪声训练,有噪声训练); 以上是对系统性能的分析。 这里的compet函数从help上来更像是一个滤波函数,而sum函数则是用来求一个多维矩阵中各行列的和值。 noisyJ=alphabet(:,1)+randn(35,1)*0.2; plotch

您可能关注的文档

文档评论(0)

yaobanwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档