matlab程序错位,求教
%构建训练样本中的输入向量p
p1=[0.22031 0.22031 0.22031;
74.96001 74.40001 74.04;
70.0271 70.55176 71.05591;
-417.259 -420.669 -426.11;
1.27176 1.26436 1.26586;
438.07 437.79 455.62];
p2=[22.55469 21.33047 20.47891;
71.08 71.72 71.52;
65.57788 65.57788 65.57788;
-403.089 -412.159 -396.946;
1.11052 1.08386 1.15637;
453.7 497.56 482.64];
p3=[30.19062 31.39063 29.76719;
73.56001 73.86 73.08001;
70.80371 70.25708 70.25708;
-342.342 -358.238 -333.289;
1.28878 1.20219 1.29165;
458.94 444.14 409.89];
p4=[41.66719 41.17969 41.17969;
76.84 77.56001 77.82;
67.66968 67.66968 67.66968;
-265.719 -245.223 -257.576;
1.70296 1.72476 1.65899 ;
360.7 286.27 294.35];
p5=[46.42031 46.09532 46.53906;
79.04 78.72 78.72;
71.90698 71.90698 71.90698;
-197.014 -186.616 -178.263;
1.80305 1.81196 1.8251;
373.28 344.28 401.61];
p=[p1 p2 p3 p4 p5];
%构建训练样本中的目标向量t
t1=[0 0 0];
t2=[0.2 0.2 0.2];
t3=[0.3 0.3 0.3];
t4=[0.5 0.5 0.5];
t5=[0.7 0.7 0.7];
t=[t1 t2 t3 t4 t5];
%创建一个BP网络,隐含层有10个神经元,传递函数为tansig
%中间层有6个神经元,传递函数logsig,训练函数为trainlm
net=newff(minmax(p),[10,6],{'tansig','logsig'},'trainlm');
%训练步数位50
%目标误差为0.001
net.trainParam.epochs=50;
net.trainParam.goal=0.001;
net=train(net,p',t);
%预测球磨机料位
p_test=[0.22031 0.22031 0.22031 20.28281 20.28281 20.28281 31.2875;
69.88 69.28001 69.8 73.44 74.04 73.52 74.8;
66.11938 65.57788 65.57788 71.37207 71.37207 71.37207 64.79443;
-503.231 -504.634 -475.77 -345.999 -357.992 -347.294 -317.085;
0.96545 0.99251 0.99702 1.23175 1.20612 1.24721 1.34716;
510.44 509.9 528.23 452.45 424.78 461.38 429.75];
y=sim(net,p_test);
出现错误:??? Error using ==> network.train at 146
Inputs are incorrectly sized for network.
Matrix must have 6 rows.
Error in ==> BPq at 49
net=train(net,p',t);
追问:
非常感谢,不过依旧有出现错误:??? Error using ==> network.train at 146
I nputs are incorrectly sized for network.
Matrix must have 6 rows.
Error in ==> BPq at 49
net=train(net,p',t);
net=newff(minmax(p),[6,15],{'tansig','logsig'},'trainlm');
应当是输入输出反了,这样试一下
答案:net=newff(minmax(p),[10,6],{'tansig','logsig'},'trainlm');改为
net=newff(minmax(p),[15,6],{'tansig','logsig'},'trainlm');
上一个:求用matlab gui 图形制作车牌切割的用户界面并有源程序
下一个:利用matlab将一张图片分割成10×10的小图片,求程序!