求助:用神经网络做一个数据预测
下列代码为BP神经网络预测37-56周的销售量的代码:
% x为原始序列
load 销售量.mat
data=C
x=data';
t=1:length(x);
lag=2;
fn=length(t);
[f_out,iinput]=BP(x,lag,fn);
%预测年份或某一时间段
t1=fn:fn+20;
n=length(t1);
t1=length(x)+1:length(x)+n;
%预测步数为fn
fn=length(t1);
[f_out,iinput]=BP(x,lag,fn);
P=vpa(f_out,5);
[t1' P']
% 画出预测图
figure(6),plot(t,x,'b*-'),hold on
plot(t(end):t1(end),[iinput(end),f_out],'rp-'),grid on
xlabel('周数'),ylabel('销售量');
str=['BP神经网络预测',num2str(length(x)+1),'-',num2str(length(x)+20),'周的销售量'];
title(str)
str1=['1-',num2str(length(x)),'周的销售量'];
str2=[num2str(length(x)+1),'-',num2str(length(x)+20),'周的预测销售量'];
legend(str1,str2)
运行结果