我想用BP人工神经网络做个预测,已知2000-2012的值,预测2013-2020年的,数据如下:0.410.430.440.450.500.510.550.610.650.610.670.750.72
用前三年的预测第四年的,写了MATLAB代码,但效果不好,所以请懂的的大师帮忙看一下,是不是哪里写错了?
实在没办法了,写论文急用,非常感谢!
p=[0.41 0.43 0.44 0.45 0.50 0.51 0.55 0.61 ;
0.43 0.44 0.45 0.50 0.51 0.55 0.61 0.65 ;
0.44 0.45 0.50 0.51 0.55 0.61 0.65 0.61];
t= [0.45 0.50 0.51 0.55 0.61 0.65 0.61 0.67];
input_test=[ 0.65 0.61 ;
0.61 0.67 ;
0.67 0.75];
output_test=[0.75 0.72];
net=newff(minmax(p),[6 1],{'tansig','purelin'},'traingdm');
inputWeights=net.IW{1,1};
inputbias=net.b{1};
layerWeights=net.LW{2,1};
layerbias=net.b{2};
net.trainParam.show=50;
net.trainParam.lr=0.05;
net.trainParam.mc=0.9;
net.trainParam.epochs=1000;
net.trainParam.goal=0.001;
net=train(net,p,t);
output_test1=sim(net,input_test)