24小时热门版块排行榜    

查看: 495  |  回复: 2

鲁鲁修

木虫 (小有名气)

[求助] 用BP神经网络预测,求大虫帮助

做一个浓度测试,共有21组数据 1.0000 0.9836 0.9643 0.9509 0.9345 0.9211 0.9048 0.8652 0.8214 0.7792 0.7321 0.6607 0.5595 0.4991 0.4226 0.3571 为输入数据
0.2857 0.2122 0.1369 0.0637 0.0000 后5组为检验数据
小弟刚学MATLAb 做毕业设计,改了多次还是不知道哪里错了 求大侠指导 谢谢了

P=[1.0000 0.9836 0.9643 0.9509 0.9345 0.9211 0.9048 0.8652 0.8214 0.7792 0.7321 0.6607 0.5595 0.4991 0.4226 0.3571];
T=[0.2857 0.2122 0.1369 0.0637 0.0000];
net_1=newff(minmax(P),[5,1],{'tansig','purelin'},'traingdm')
%  当前输入层权值和阈值
inputWeights=net_1.IW{1,1}
inputbias=net_1.b{1}
%  当前网络层权值和阈值
layerWeights=net_1.LW{2,1}
layerbias=net_1.b{2}

%  设置训练参数
net_1.trainParam.show = 50;
net_1.trainParam.lr = 0.05;
net_1.trainParam.mc = 0.9;
net_1.trainParam.epochs = 10000;
net_1.trainParam.goal = 1e-3;
%  调用 TRAINGDM 算法训练 BP 网络
[net_1,tr]=train(net_1,P,T);
test=[1.0000 0.9836 0.9643 0.9509 0.9345 0.9211 0.9048 0.8652 0.8214 0.7792 0.7321 0.6607 0.5595 0.4991 0.4226 0.3571];
y=sim(net,test);
plot(P,y);
title('浓度的预测');
legend('浓度实际值','浓度预测值');
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

有时候,选择比努力更重要
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xiegangmai: 金币-1, 专业版块,请勿灌水 2013-01-24 20:25:11
M
2楼2013-01-21 16:16:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

chenlongzhen

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
xiegangmai: 金币+2, 谢谢参与! 2013-01-29 21:18:41
鲁鲁修: 金币+10, ★★★很有帮助, 不好意思,问题本身的提法有问题,但还是谢谢了 2013-02-15 12:05:15
你对神经网络还是理解的不太好,你需要输入的训练样本是 P T, 经过训练后,只需要给出P,就能预测出y(也就是真实值T)。
你看一下例子~

%一个简单的BP网络拟合问题
%训练样本的生成
P=-1:0.1:1;
T = [-.9602 -.5770 -.0729  .3771  .6405  .6600  .4609 ...
      .1336 -.2013 -.4344 -.5000 -.3930 -.1647  .0988 ...
      .3072  .3960  .3449  .1816 -.0312 -.2189 -.3201];
chois=rand(size(T));
T=T+chois;

PR=minmax(P);
%创建网络
net=newff(PR,[10 1],{'tansig','purelin'},'traingd');
%设置训练参数
net.trainParam.epochs=3000;
net.trainParam.goal=0.001;
%训练网络
net=train(net,P,T);
%仿真
y=sim(net,P);

%作出拟合图形
figure
plot(P,T,'o', P, y,'r*:');
3楼2013-01-27 21:58:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 鲁鲁修 的主题更新
信息提示
请填处理意见