登录
首页 电力自动化
回帖 发帖
正文

主题:谁来帮我把这个MATLAB程序纠正一下,谢谢了

点击:432 回复:0

p=[ 35.20000076 170 9.699999809;
   35.20000076 137 9.699999619;
   34.09999847 155 9.699999809;
   35.20000076 178 9.899999619;
   35.09999847 176 9.800000191;
   35.20000076 168 9.699999809;
   35.20000076 170 9.800000191;
   3.9 96 7.800000003;
   0 0 0.200000003;
   0 0 0.200000003;
   12.69999981 177 9.800000191;
   26.29999924 196 13.30000019;
   35.20000076 187 14.80000019;
   35.09999847 182 15.69999981;
   35.20000076 171 15.39999962;
   35.20000076 164 13.30000019;
   35.20000076 171 10.30000019;
   35.20000076 170 10.89999962;
   35.20000076 167 10.30000019;
   37.09999847 180 9.699999809 ];
t=[0 0 0;1 0 0;1 0 0;0 0 0;0 0 0;1 0 0;0 0 0;0 0 1;0 0 1;0 0 1;1 0 0;0 0 1;0 0 1;0 0 1;0 0 1;0 0 1;0 0 0;0 0 0;0 0 0;0 1 0];
for i=1:20
   p(i,:)=(p(i,:)-min(p(i,:)))/(max(p(i,:))-min(p(i,:)));%数据归一化
end
threshold=[0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1; 0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1;0 1]; %输入向量的最大、最小值
net=newff(threshold,[31,1],{'tansig','logsig'},'trainlm');%创建一个BP网络
net.trainParam.epochs=10000;  %训练次数
net.trainParam.goal=0.01;%训练目标
LP.lr=0.1;%学习速率
net=train(net,p,t); %网络训练
p_test=[ 37.09999847 180 9.699999799;
        31.09999847 160 9.600000381;
        35.29999924 166 12.10000038;
        35.20000076 170 10.89999962];
for i=1:4
p_test(i,:)=(p_test(i,:)-min(p_test(i,:)))/(max(p_test(i,:))-min(p_test(i,:)));
end
Y=sim(net,p_test);
表情表情
11-05-18 12:05

工控新闻

更多新闻资讯