示例程序见附件,其为一个简单的时间序列预测算例。其实所有的预测问题,本质都是一样的,通过对样本的学习,将网络训练成一个能反映时间序列内部非线性规律的系统,最终应用于预测。
BP(Back Propagation)神经网络是86年由Rumelhart和McCelland为首的科学家小组提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入-输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。BP神经网络模型拓扑结构包括输入层(input)、隐层(hidden layer)和输出层(output layer)。
%由于数据比较大,我又懒得用归一化,所以直接把数据降了3个数量级,
%不过我觉得应该没问题,但用归一化结果应该更准确些。。
%由于初始权值和阀值均是随机给的,所以每次仿真都有点点不同,这是正常的。
p=[1183 1303 1278;1303 1278 1284;1278 1284 1187 ;
1284 1187 1154;1187 1154 1267;1154 1267 1241;
1267 1241 1302;1241 1302 1195;1302 1195 1256]'0001;
t=[ 1284 1187 1154 1267 1241 1302 1195 1256 1348]0001;
net=newff(minmax(p),[3,1],{'tansig','purelin'},'traingda');
nettrainParamgoal=0001;
nettrainParamshow=20;
nettrainParamepochs=1000;
nettrainParammin_grad=1e-10;
nettrainParammc=095;
[net,tr]=train(net,p,t);
t1=sim(net,[1302 1195 1256]'0001);
t2013=t11000%2013 的 预测 数据
运行结果:
t2013 =
13019
以上就是关于用MATLAB的BP神经网络时间序列预测编程全部的内容,包括:用MATLAB的BP神经网络时间序列预测编程、求MATLAB的BP神经网络预测程序、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)