24小时热门版块排行榜    

查看: 1209  |  回复: 3

YprettyboyB

银虫 (初入文坛)

[求助] 【已完结】BP神经网络程序问题

clc;
clear all;
%原始输入数据
p=[227.3 68.3 1.6 45.2 28.0 13.32;
195.2 67.8 0.5 66.3 27.3 7.12;
243.2 64 1.5 46.0 31.8 13.44;
303.7 42.6 0.8 52.0 31.0 11.20;
154.4 29 0.9 76.7 27.8 4.77;
129 40 0.9 62.0 30.8 8.29;
205.2 43.9 0.9 62.0 28.6 8.44;
751.1 438 2.2 45.5 28.6 13.34;
792.3 477.8 0.7 56.4 28.8 9.69;
757.4 439.8 1.5 44.0 32.6 14.27;
631.4 324.1 0.1 51.9 31.9 11.27;
645.4 318.8 0.9 71.4 29.4 5.92;
692.6 421.3 0.8 59.9 31.5 8.99;
769.4 411.7 0.9 56.6 30.4 10.16;
1119.3 657 2.2 42.9 29.4 14.53;
1317.7 734.1 0.4 54.8 30.5 10.14;
1178.9 660.8 1.3 42.2 33.9 15.22;
995.7 555.6 0.3 46.5 33.1 13.23;
1112.2 643.6 1.0 63.6 30.7 7.85;
1111.3 664.5 0.9 54.2 32.2 10.59;
1240.3 647.2 0.8 53.0 32.5 11.02;
1391.6 738.6 1.6 38.6 30.0 16.07;
1799.8 836.4 0.3 54.9 31.1 10.39;
1537.2 755.2 1.7 41.1 34.7 15.67;
1250.2 686.1 2.4 45.9 33.5 13.53;
1331.1 746.9 1.1 60.2 31.7 8.84;
1310.5 771.9 1.1 60.2 31.7 8.84;
1623.0 751.7 1.0 43.8 33.1 14.36
1341.0 681.2 1.5 41.5 29.8 14.87;
1533.8 792.0 0.2 46.4 34.0 13.75;
1313.8 738.2 1.4 40.4 35.0 15.90;
919.2 517.3 2.6 46.5 33.9 13.23;
1372.9 742.5 1.5 62.6 31.7 8.12;
1344.9 747.0 0.9 42.7 35.0 14.81;
1889.8 699.2 1.3 42.7 33.7 14.81;
970.2 577.5 3.6 36.3 31.1 16.68;
979.2 681.0 0.2 58.2 29.8 9.31;
969.2 685.5 1.4 45.6 32.3 13.51;
646.2 450.2 1.5 47.0 33.8 13.03;
834.3 654.9 1.0 65.1 31.3 7.61;
990.4 643.5 1.1 62.0 33.1 9.85;
1317.1 596.0 0.8 49.3 32.9 12.19;
145.8 421.9 2.7 42.2 27.1 14.32;
76.3 500.0 0.2 63.7 29.6 7.76;
159.1 509.1 1.7 48.4 31.3 12.45;
204.6 379.3 0.8 52.1 31.8 11.22;
72.5 471.4 0.6 70.7 30.7 6.36;
39.8 464.1 1.5 59.9 33.4 9.11;
141.7 423.9 0.9 59.2 31.7 8.97;
131.4 144.9 1.1 57.0 29.3 9.64;
26.4 167.6 0.3 66.9 29.6 6.86;
117.8 171.9 1.6 49.3 30.7 12.16;
143.8 144.6 0.9 54.8 31.5 10.40;
77.5 157.2 1.0 67.2 30.3 6.95;
64.4 155.4 0.7 54.2 32.3 9.57;
107.8 143.6 0.9 59.4 31.3 9.11;
30.7 0 0.7 56.7 28.9 9.66;
32.0 0 1.3 61.1 30.2 8.38;
70.8 0 2.1 50.6 30.0 11.44;
144.1 0 1.1 56.4 31.3 9.85;
65.3 0 0.7 66.7 30.0 7.14;
41.1 0 0.5 46.7 31.6 8.53;
35.6 0 0.7 62.1 31.0 8.30;
29.5 0 0.6 57.7 28.7 9.50;
15.6 0 0.3 63.2 29.4 7.89;
67.1 0 1.1 52.5 29.7 11.02;
227 0 0.5 58.4 31.1 9.38;
71 0 0.7 66.8 29.7 7.10;
28.1 0 0.7 42.7 31.1 7.37;
57.4 0 0.5 62.7 30.3 8.09;
49.4 0 0.5 58.5 28.3 9.16;
31.6 0 0.3 67.7 29.0 6.76;
82.8 0 1.5 54.4 29.5 10.43;
220.9 0 0.5 57.7 30.6 9.16;
61.1 0 0.8 67.4 29.6 6.84;
41.6 0 0.7 65.0 30.8 7.44;
61.5 0 0.5 60.5 30.1 8.55;
122.2 22.2 0.5 54.1 28.0 10.43;
91.9 22.6 0.5 63.9 28.9 7.79;
144.3 21.5 1.8 48.7 30.7 12.37;
199.8 14.8 0.8 65.2 29.4 7.73;
87.7 10.6 0.6 71.7 29.1 5.89;
78.5 13.3 0.9 62.2 30.3 8.11;
107.0 14.2 0.6 64.1 29.8 7.66]';
t=[51; 100.0; 30.0; 53.9; 130.6; 67.2; 72.8; 40; 67.8; 31.1; 47.2; 124.4; 66.1; 76.7; 33; 72.8; 30.0; 40.6; 79.4; 52.8; 93.3; 29; 71.1; 29.4; 40.0; 88.3; 40.0; 48.9; 31; 72.2; 30.6; 52.2; 60.6; 40.0; 40.0; 38; 77.2; 33.3; 50.0; 52.2; 57.8; 48.3; 31; 74.4; 40.0; 48.9; 73.3; 70.6; 37; 83.3; 41.7; 55.0; 59.4; 60.6; 70.0; 48; 70.0; 41.1; 60.0; 75.6; 68.9; 86.1; 72; 65.0; 46.1; 56.7; 82.8; 96.7; 96.7; 41; 107.2; 50.0; 71.7; 83.9; 82.2; 115.6; 29; 80.6; 40.0; 78.9; 116.1; 67.2; 107.2]';
pt=[31.6 0 0.3 67.7 29.0 6.76;
82.8 0 1.5 54.4 29.5 10.43;
220.9 0 0.5 57.7 30.6 9.16;
61.1 0 0.8 67.4 29.6 6.84;
41.6 0 0.7 65.0 30.8 7.44;
61.5 0 0.5 60.5 30.1 8.55;
122.2 22.2 0.5 54.1 28.0 10.43;
91.9 22.6 0.5 63.9 28.9 7.79;
144.3 21.5 1.8 48.7 30.7 12.37;
199.8 14.8 0.8 65.2 29.4 7.73;
87.7 10.6 0.6 71.7 29.1 5.89;
78.5 13.3 0.9 62.2 30.3 8.11;
107.0 14.2 0.6 64.1 29.8 7.66]';
tt=[107.2; 50.0; 71.7; 83.9; 82.2; 115.6; 29; 80.6; 40.0; 78.9; 116.1; 67.2; 107.2]';
[pn,minp,maxp,tn,mint,maxt]=premnmx(p,t);  %将数据归一化   
NodeNum1 =12; % 隐层节点
TypeNum = 1; % 输出节点
TF1 = 'tansig';
TF2 = 'tansig';
net=newff(minmax(pn),[NodeNum1,TypeNum],{TF1TF2},'traingdx'); inputWeights=net.IW{1,1};
%第一层权值输出
inputbias=net.b{1};
%第一层偏置
layerWeights=net.LW{2,1};
%第二次权值输出
layerbias=net.b{2};%第二层偏置
%构建网络
net.trainParam.show=500;  
net.trainParam.epochs=500000; %最长步数  
net.trainParam.goal=0.01; %目标误差
net.trainParam.lr=0.3; %学习率  
net.trainParam.mc=0.9; %动量
net=train(net,pn,tn); %网络模拟仿真
a1=sim(net,pn);
figure;%仿真图
plot(1:length(tn),tn,'D',1:length(a1),a1,'S');
title('ѵÁ•ÍøÂç•ÂÕæ£º¡ó±íʾԤ²âÖµ---¡õ±íʾʵ¼ÊÖµ');
grid on; E=tn-a1;%仿真误差
figure;%仿真误差图
plot(1:length(E),E,'-');
title('ѵÁ•Îó²î±ä»¯Í¼');
grid on;
an=sim(net,pt);%测试检验数据仿真
plot(1:length(tt),tt,'o',1:length(an),an,'+');  
title('¼ìÑéÍøÂç•ÂÕæ£ºo±íʾԤ²âÖµ--- *±íʾʵ¼ÊÖµ');
grid on %增加网格
E1=tt-an; %测试检验数据仿真的误差
figure;%误差图
plot(1:length(E1),E1,'-.');  
title('¼ìÑéÎó²î±ä»¯Í¼');
grid on %网格

这是BP神经网络的源程序,不知道哪里出错了,用matlab运行时一直出现这个错误:
??? Error using ==> minus
Matrix dimensions must agree.

Error in ==> premnmx at 105
  tn = 2*(t-mint0*oneQ)./((maxt0-mint0)*oneQ) - 1;想请各位大虾帮帮忙!!!!!万分感谢!!!!!!!!!!!!!

[ Last edited by 1592203609 on 2013-12-8 at 14:07 ]
回复此楼

» 收录本帖的淘帖专辑推荐

国基、SCI投稿精华集 matlab

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

创新加实干
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

外来户

银虫 (正式写手)

【答案】应助回帖


1592203609: 金币+1, 谢谢回帖! 2013-12-08 14:06:26
看看输入输出的维数弄准了没有。。。
2楼2013-11-30 16:11:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

achilFes1990

木虫 (著名写手)

【答案】应助回帖


1592203609: 金币+1, 谢谢回帖! 2013-12-08 14:06:34
1.变量 t 中你少输入了一个数值,应该是84个值;
2.net=newff(minmax(pn),[NodeNum1,TypeNum],{TF1TF2},'traingdx'); inputWeights=net.IW{1,1};这句中{TF1TF2}少了一个逗号,应该为{TF1,TF2};
3.另外,premnmx和newff在新版本Matlab中已经不用了,建议更改。
扫一扫关注我的微信公众号,共同学习船舶CFD
3楼2013-11-30 22:13:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

qfqfqf

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
YprettyboyB: 金币+100, ★★★★★最佳答案 2013-12-08 12:11:23
1592203609: 金币+1, 谢谢回帖! 2013-12-08 14:06:17
p=[
......
1310.5 771.9 1.1 60.2 31.7 8.84;
1623.0 751.7 1.0 43.8 33.1 14.36
1341.0 681.2 1.5 41.5 29.8 14.87;
....
]
p中少一个分号
4楼2013-12-03 12:25:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 YprettyboyB 的主题更新
信息提示
请填处理意见