MATLAB 利用BP神经网络预测数据遇到问题 50

我想对一组数据进行预测,需要得出它的后10个值,程序如下:p=[9393.185.3;93.185.380.7;85.380.788.4;80.788.480.2;88.... 我想对一组数据进行预测,需要得出它的后10个值,程序如下:p=[93 93.1 85.3;
93.1 85.3 80.7;
85.3 80.7 88.4;
80.7 88.4 80.2;
88.4 80.2 74;
80.2 74 73.7;
74 73.7 76.7;
73.7 76.7 77.5;
76.7 77.5 68;]
t=[80.7 88.4 80.2 74 73.7 76.7 77.5 68 66.76];
pmax=max(p);pmax1=max(pmax);
pmin=min(p);pmin1=min(pmin);
for i=1:9 %归一化处理
p1(i,:)=(p(i,:)-pmin1)/(pmax1-pmin1);
end
t1=(t-pmin1)/(pmax1-pmin1);
t1=t1';
net=newff([0 1;0 1;0 1],[7 1],{'tansig','logsig'},'traingd');
for i=1:9
net.trainParam.epochs=15000;
net.trainParam.goal=0.01;
LP.lr=0.1;
net=train(net,p1(i,:)',t1(i));
end
y=sim(net,[77.5 68 66.76
]');
y1=y*(pmax1-pmin1)+pmin1
我第一次预测,得出y1=90.7775,代入这个值令y=sim(net,[68 66.76 90.7775]'),再进行预测,往后的结果就一直是84.1922了,这是为什么呢?而且这个值也比现实的预期要高,所以,该怎么修改这个程序呢?希望能得到大家的解答,谢谢。
展开
 我来答
we...7@163.com
2012-09-06 · TA获得超过373个赞
知道小有建树答主
回答量:538
采纳率:60%
帮助的人:69.8万
展开全部
我将你的程序做了修改,现在可以运行了

p=[93 93.1 85.3;
93.1 85.3 80.7;
85.3 80.7 88.4;
80.7 88.4 80.2;
88.4 80.2 74;
80.2 74 73.7;
74 73.7 76.7;
73.7 76.7 77.5;
76.7 77.5 68;];
t=[80.7 88.4 80.2 74 73.7 76.7 77.5 68 66.76];
p=p';
[pn,inputps]=mapminmax(p);
[tn,outputps]=mapminmax(t);
net=newff(pn,tn,7,{'tansig','purelin'},'traingd');

net.trainParam.epochs=15000;
net.trainParam.goal=0.01;
net.trainParam.show=50;
net.trainParam.lr = 0.01;
net=train(net,pn,tn);

p1=[77.5 68 66.76];
p1=p1';
p1n=mapminmax('apply',p1,inputps);
y=sim(net,p1n);
y1=mapminmax('reverse',y,outputps)
追问
谢谢,从预测结果上来看,还是不太理想,结果并没有按预期那样逐渐减小。不过已经不会出现预测两次就重复结果的情况了。请问我的问题是出在哪里呢?
追答
神经网络预测效果好的话,需要大量的数据,可能是你的数据太少了吧!
归一化处理我用的是matlab自带的归一化函数,效果应该比自己编的归一化好一些!
另外你还可以提高预设精度,再看看效果!
lilili213213
2012-09-03 · TA获得超过455个赞
知道小有建树答主
回答量:651
采纳率:0%
帮助的人:372万
展开全部
归一反归一的不对
更多追问追答
追问
请问该如何改进呢?谢谢。
追答
你联系方式发来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wolf_Alex
2012-09-04 · 超过12用户采纳过TA的回答
知道答主
回答量:26
采纳率:0%
帮助的人:26.5万
展开全部
楼上说的对~你们QQ解决吧。。。。
追问
呵呵,我就不说楼上的加了我的QQ说了两句就说让我自己想,然后也懒得理我了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式