MATLAB神经网络预测的问题
发布网友
发布时间:2022-05-01 07:27
我来回答
共2个回答
热心网友
时间:2022-06-26 02:29
%神经网络算法
%这是我以前数模校内选拔赛的猪肉价格预测模型的算法,你参考下
clear;clc;
%P=0:0.1:2*pi;T=sin(P);pnew=0:0.01:2*pi;
P=1985:2009;
T=[33139.6,...
33719.1,32773,34221.8,35281,36240.8,36964.6,38421,39300,41461.9,...
44169.2,36283.6,40034.8,42256.3,43144.2,41633.6,41950.5,41776.2,...
41381.8,42123.4,43319.1,41850.4,43989.5,46264,48204.8];
[pn,minp,maxp,tn,mint,maxt]=premnmx(P,T);%
net = newff(minmax(pn),[5 6 1],{'tansig' ,'logsig', 'purelin'},'trainlm');
%net=init(net);
net.trainParam.show=50;%显示训练结果的间隔步数
net.trainParam.epochs=10000; %最大训练步数
net.trainParam.goal=0.01; %训练目标误差
net.trainParam.lr=0.05;
[net,tr]=train(net,pn,tn);
pnew=1985:2010;
pnewn=tramnmx(pnew,minp,maxp);
anewn=sim(net,pnewn);
tnew=postmnmx(anewn,mint,maxt)
%tnew=sim(net,pnew);
plot(P,T,'*',pnew,tnew,'r');
%P=0:2*pi;T=sin(P);pnew=0:0.1:2*pi;
%
%
是否可以解决您的问题?追问这里的P是年份,T是每年的猪肉价格吗?
热心网友
时间:2022-06-26 02:30
MATLAB神经网络预测的问题
根据你的数据,假设
t=1990:2009; %年份
x=[11 28 30 42 44 56 49 60 50 63 56 74 76 65 92 105 124 117 132 128]; %某地区人口数
预测2010-2016年的某地区人口数。
预测结果:
[ 2010, 132.15367]
[ 2011, 131.89526]
[ 2012, 132.17983]
[ 2013, 132.16886]
[ 2014, 132.18187]
[ 2015, 132.18142]
[ 2016, 132.18200]