- 在线时间
- 3 小时
- 最后登录
- 2013-5-18
- 注册时间
- 2008-12-16
- 听众数
- 3
- 收听数
- 0
- 能力
- 0 分
- 体力
- 40 点
- 威望
- 0 点
- 阅读权限
- 20
- 积分
- 16
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 16
- 主题
- 3
- 精华
- 0
- 分享
- 0
- 好友
- 2
升级   11.58% TA的每日心情 | 开心 2013-5-18 14:52 |
|---|
签到天数: 1 天 [LV.1]初来乍到
- 自我介绍
- 开朗 活泼
 |
本帖最后由 hanyunxiang 于 2010-5-25 17:03 编辑
c: n$ V( s# y3 o! Z% B$ V6 k) t: z
关于BP神经网络预测
& S- v: k7 M# u/ {& S
% V- Q/ C2 U8 b% q8 E注:里面的笑脸代表冒号(不知道会出现笑脸)
+ k# Y2 y* A7 t3 O9 s1 h8 t+ {) S5 `9 L( n2 Q
# `4 Z# o. F, ~* H9 k关于BP时间序列预测
! p; Q; n# S2 e& D- }( \程序中x是已知的运输量数值(2000年-2009年),以4个数据为一组,前三个数据作为输入,第四个作为输出,共分7组,前六组训练,隐层节点为7,最后一组检验:
L* G$ t; J% e- O' @x=[13369.2 14873.7 17137.3 17432.5 24193.5 28435.1....6 x8 M M& B3 I9 x( \
33197.3 38758.6 40576.2 48606.3];$ L+ y; t) o5 g
X(1, =(x(1, -min(x(1, ))/(max(x(1, )-min(x(1, ));(归一化)
0 p3 N# U! @3 E( h7 pfor i=1:7
* k! F9 h; H! @7 ~$ Z X1(i, =[X(i) X(i+1) X(i+2) X(i+3)];" v$ S7 T9 {- M& A( N
end
8 S$ H0 j8 d$ |1 q5 q' F m4 y# QX2=(X1(:,1:3))';
k6 p9 h" T, I4 @T2=(X1(:,4))';
1 j* J2 N, _* \4 k( Z7 |* EX3=X2(:,1:6);
" C+ x2 k, [( dT3=T2(:,1:6);4 a: L& S- n! a$ `3 w7 ]
net=newff(minmax(X3),[7 1],{'logsig','tansig'},'trainlm');# N$ x" G9 z- o+ _$ G" c
net.trainParam.epochs=1000;1 R: S* c$ `$ ]% U" Y* C
net.trainParam.goal=0.000001;
+ |1 J: Z; [2 tLP.lr=0.1;
* ^- m0 ^8 p7 o& h \; b0 q2 _net=train(net,X3,T3);
% ]1 r+ L& i7 }y1=sim(net,X3);
: h/ W5 K ?2 k+ U% X3 F6 L
/ e/ C5 @7 b* d, [) P! E/ t4 @以下是检验:
. i) c6 r- W7 i: \6 u/ j
( B+ o5 I: T0 q l) f; I0 cx_test=X2(:,7);
' f7 v9 j4 L5 Py_test=sim(net,x_test)
! ]( Q5 P0 e% h/ Z, S4 rY_test=y_test*(max(x(1, )-min(x(1, ))+min(x(1, )(反归一化)
8 a$ V# w2 p" K6 c检验效果还不错;
2 N, x& B( P6 L, d+ l6 \) |2 z1 I' M% H3 s
但运用以下命令在预测2010年运输量时,向量yc1为2007、2008、2009年运输量归一化的数值;
4 }- {* o$ ~. S' S为什么反归一化输出和2009年数值一样,怎么回事呢???初学者盼解答??8 Z' `/ w) r& b' J- K
' E$ y9 [0 u; c( _8 [4 ~
yc1=[0.7205 0.7721 1.0000]';+ N( m4 ^6 G* [7 K3 h( K3 T
jg1_test=sim(net,yc1(:,1))$ P1 [% i! G- u7 Y, f2 r9 u
Jg1_test=jg1_test*(max(x(1, )-min(x(1, ))+min(x(1, )(反归一化). ] v& v! W3 A1 ]
|
zan
|