在线时间 0 小时 最后登录 2009-9-15 注册时间 2009-6-21 听众数 4 收听数 0 能力 0 分 体力 188 点 威望 0 点 阅读权限 20 积分 65 相册 0 日志 0 记录 0 帖子 18 主题 2 精华 0 分享 0 好友 0
升级 63.16%
该用户从未签到
本帖最后由 李食其 于 2009-8-11 09:00 编辑
( |: l; i9 o* n" m. R8 b; c7 F! n
! |' g4 }0 {8 W: z5 w0 w 现在已知一种产品的库存记录,预测下个月的库存/ R! @1 w n7 _( e
我查找了各种预测的资料,也编程算了,用了灰度预测,神经网络,拟合,时间序列,能用的都用了,可是没一个准的。我要疯了) J& B4 |+ O( s2 i( g# W
我的神经网络程序如下' i; Y2 o3 a% r" ~7 X$ b$ ?
T=[...];0 @0 |) S; w" I3 R
n=length(T);. \! E. A- q# w- X% W% {+ I9 y
P=1:n;
! i J2 ] g1 N# p7 J- Z2 d/ k$ I % 创建一个新的前向神经网络 : H! ~ `4 v( |
net_1=newff(minmax(P),[49,1],{'tansig','purelin'},'traingdm')8 r1 y# ^0 ^( Z
% 当前输入层权值和阈值
) U$ @9 l# I" s4 X% N1 {+ m inputWeights=net_1.IW{1,1};. t" F( w# W1 b! f6 A
inputbias=net_1.b{1};
& K# @/ o: D" e % 当前网络层权值和阈值3 G8 Q% U! V7 s5 p# B* S) o
layerWeights=net_1.LW{2,1};
. f- Z/ S! C" ^. C' K/ [/ Y! e layerbias=net_1.b{2};
3 |. Q+ H6 A+ _3 W8 G % 设置训练参数
! N/ I( U- I2 F" ` net_1.trainParam.show = 50;
m2 B" x/ Z+ O1 _* R net_1.trainParam.lr = 0.05;- p! s [6 M, r; V& b7 R% ^# K
net_1.trainParam.mc = 0.9;
( u; |; \/ J8 f3 g" c0 Z& B8 n net_1.trainParam.epochs = 3000;
9 U8 F I/ u1 H net_1.trainParam.goal = 0.0001;0 u" Q9 {) G6 i" d+ k2 C
% 调用 TRAINGDM 算法训练 BP 网络3 A0 W9 z& N. e3 f0 d* @
[net_1,tr]=train(net_1,P,T);
# a% _. ~8 N3 i9 J5 _$ ?0 C % 对 BP 网络进行仿真
3 c4 ^' E1 ^' @9 s( ]5 l; y A = sim(net_1,P)
L5 P$ T- Z$ \! C4 k4 H % 计算仿真误差 " P6 S- d3 v1 D6 Q9 ~- z
E = T - A;
$ R! C. J5 g3 v MSE=mse(E)
2 G8 w/ E" Q; Q' H x=[n+1];%测试
7 ~; M* j6 e$ W. M' Z% x( m kn=sim(net_1,x)7 g4 X" o& @. H+ E: n( j
0 ]$ C$ y: `4 `
每一次运行的结果都不一样,而且没一次准的,有的时候差的还特别多。9 N$ ]4 t6 r- W4 I3 I7 n
我的数据量挺大的,从2007年至今,而且数字比较大
3 R9 u8 d0 Q1 R/ h; q 有没有懂得,帮帮我。
) k: I3 Q! O1 ] m 献上资料先
zan