- 在线时间
- 3 小时
- 最后登录
- 2017-7-6
- 注册时间
- 2009-8-27
- 听众数
- 6
- 收听数
- 0
- 能力
- 0 分
- 体力
- 123 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 56
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 39
- 主题
- 2
- 精华
- 0
- 分享
- 0
- 好友
- 0
升级   53.68% 该用户从未签到
 |
以下是一段BP神经网络的代码,为什么运行时总是出现Index exceeds matrix dimensions的错误提示,麻烦哪位大侠帮忙下...# Y+ Y% A3 D6 B
0 W4 S5 }- k* M& s- D6 K0 wP=[27000 297.35 327.53 2658 6.31 68.3 15948 737 16316 583.89 1.96;
4 T6 c/ E2 Y* a3 S1 ~9 j* k30619 325.00 390.51 2763 6.94 69.6 17130 789 18600 707.67 2.28;. n2 i ?, c: u1 U
33282 423.00 474.63 2801 5.73 69.7 17866 894 19886 861.88 2.32;
$ i. C4 ~. @/ W33689 467.57 569.55 2887 7.76 69.8 18961 1015 20249 941.99 2.38;
0 L- r, Z$ Y8 n41020 538.17 616.25 2920 8.23 69.7 19688 1198 21626 1082.6 2.73;
* ^" `3 ?9 i2 A2 J; O; r" K4 B3 T; B43344 832.04 686.37 3495 8.87 68.3 24465 1361 23544 1373.4 2.89;
: |. ?0 s4 \6 j9 Q7 S, f46030 941.94 788.15 3495 9.57 68.2 24814 1710 24941 1756.5 2.82;: ] _* R+ Q. ~6 E* ~$ x
53887 1095.13 969.1 4885 9.65 68.7 36149 2100 25936 2199.5 3.08;
1 }8 T5 w! K# {' D0 v9 C5 g59271 1250.64 1092.6 5376 10.11 69.2 43008 2314 26596 2625.4 3.56;5 n7 L% @) q2 [$ e+ V
64507 1437.67 1176.1 6091 15.05 69.2 51946 2500 28494 3229.4 3.98;% l+ K1 Y8 g+ _# w+ k- [5 `
70597 1671.29 1273.7 7305 16.81 69.2 65745 2614 29628 3744.7 4.98;
$ `9 b* G. i( L: n* B" E- y8 s79221 1905.03 1345 8023 18.6 69.1 70346 2798 30063 3792.6 5.1;
2 `* b( x0 e) \! y78812 2207.88 927.16 8328 20.52 69.3 71088 2964 30904 3951.64 5.21];
! N# j. v( B; M- F" { JT=[3.1,3.6,4.2,4.8,6.7,9.1,13,18.9,29,51.1,78.2,103.5,128];
" z+ w+ @- Z1 Y6 K. y. C[pn,minp,maxp]=premnmx(P);
9 T3 V. [; o$ d[tn,mint,maxt]=premnmx(T);- j, H4 p2 @- s- A
net=newff(minmax(pn(:,1:12)),[5,1],{'tansig','purelin'},'trainlm');
# f2 p! v' d5 H( Hnet=init(net);
5 O2 I3 r& B- u' n, t; d% Enet.trainParam.epochs=20000;, O) P! g$ b# ~: |9 X
net.trainParam.goal=0.0001;
L$ \ ^% P( g4 F' ynet.trainParam.lr=0.05;
8 S) e- {) v8 }( l; a2 G0 M$ t" ? Dnet=train(net,pn(:,1:12),tn(1:12));
- w5 G7 _9 ]( f+ Rt_sim=sim(net,pn);
" Y; b: H b9 ^: N! T( k* h. j: Ot_sim=postmnmx(t_sim,mint,maxt), @! h# y. ?, {8 ]- B: A* G4 f
relative_error=abs(t_sim(1:13)-T)./T
6 b, d- O+ v8 T% D2 Sfigure(1)
1 \9 U2 x3 I2 ci=1:1:length(t_sim);
# r4 w; u+ C% t$ f6 E3 tj=1:length(T);0 [/ h4 m6 X) C& d! I1 M
plot(i,t_sim,'r',j,T,'bo')9 G, J' u& g8 _9 A0 s
legend('test value','true value','relative_error')
' Z% O/ ~1 V' D& @4 e2 ltitle('result compare between test value and true value') |
zan
|