关于神经网络程序问题p=[3 6 15 18 30 32 7; 4 5 13 23 27 30 9;16 17 18 24 15 30 8;4 11 14 15 22 31 11;1 2 4 12 21 24 12;7 8 14 25 26 28 13;6 7 10 19 23 29 12;7 14 18 25 26 29 6;3 13 14 15 21 33 3;4 21 25 29 30 33 3;];t=[4 5 13 23 27 30 9;16 1

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 04:55:41

关于神经网络程序问题p=[3 6 15 18 30 32 7; 4 5 13 23 27 30 9;16 17 18 24 15 30 8;4 11 14 15 22 31 11;1 2 4 12 21 24 12;7 8 14 25 26 28 13;6 7 10 19 23 29 12;7 14 18 25 26 29 6;3 13 14 15 21 33 3;4 21 25 29 30 33 3;];t=[4 5 13 23 27 30 9;16 1
关于神经网络程序问题
p=[3 6 15 18 30 32 7; 4 5 13 23 27 30 9;
16 17 18 24 15 30 8;
4 11 14 15 22 31 11;
1 2 4 12 21 24 12;
7 8 14 25 26 28 13;
6 7 10 19 23 29 12;
7 14 18 25 26 29 6;
3 13 14 15 21 33 3;
4 21 25 29 30 33 3;];
t=[4 5 13 23 27 30 9;
16 17 18 24 15 30 8;
4 11 14 15 22 31 11;
1 2 4 12 21 24 12;
7 8 14 25 26 28 13;
6 7 10 19 23 29 12;
7 14 18 25 26 29 6;
3 13 14 15 21 33 3;
4 21 25 29 30 33 3;
5 6 13 17 19 28 1;]
d1=0.998;
d2=0.001;
pmax=max(p);pmax1=max(pmax);
pmin=min(p);pmin1=min(pmin);
for i=1:10 %归一化处理
p1(i,:)=(p(i,:)-pmin1)/(pmax1-pmin1)*d1+d2;
end
for i=1:10 %归一化处理
t1(i,:)=(t(i,:)-pmin1)/(pmax1-pmin1)*d1+d2;
end
net=newff(minmax(p1),[18 7],{'tansig','logsig'},'trainlm');
net.trainParam.epochs=15000;net.trainParam.goal=0.01;
LP.lr=0.1;
net=train(net,p1,t1);
y=sim(net,[5 6 13 17 19 28 1]');y1=(y-d2)/d1*(pmax1-pmin1)+pmin1;
出现错误
Error using ==> trainlm at 109
Output data size does not match net.outputs{2}.size.
Error in ==> network.train at 107[net,tr] = feval(net.trainFcn,net,X,T,Xi,Ai,EW,net.trainParam);
Error in ==> lianxi at 36net=train(net,p1,t1);

关于神经网络程序问题p=[3 6 15 18 30 32 7; 4 5 13 23 27 30 9;16 17 18 24 15 30 8;4 11 14 15 22 31 11;1 2 4 12 21 24 12;7 8 14 25 26 28 13;6 7 10 19 23 29 12;7 14 18 25 26 29 6;3 13 14 15 21 33 3;4 21 25 29 30 33 3;];t=[4 5 13 23 27 30 9;16 1
你的数组行列搞反了,把p和t转置一下.还有,p1和t1不需用for循环,直接写成下式:
p1=(p-pmin)/(pmax1-pmin1)*d1+d2;
t1=(t-pmin1)/(pmax1-pmin1)*d1+d2;
这样就可以了!
还有啊,这种方法预测是不行的,我都试过了,哈哈!