数学建模社区-数学中国

标题: BP神经网络 [打印本页]

作者: 狼之魂汪洋    时间: 2014-8-12 19:46
标题: BP神经网络
写了个BP神经网络的小程序,但进行预测的时候总是误差太大,不知道从何改起,求助大神帮助,程序如下。谢谢) b- s1 u; I. ?  D" P$ A
Te=[900.00,1000.00,900.00,900.00,1000.00,1000.00,866.00,1034.00,950.00,950.00,950.00,950.00,950.00,950.00,950.00,950.00];
! o5 {6 U! o( f0 o* {: z0 jTe1=[1000.00,900.00,950.00,950.00];
0 B# Q; I, {5 e. J, ^" |Ti=[50.00,50.00,70.00,50.00,50.00,70.00,61.00,60.00,43.00,77.00,60.00,60.00,60.00,60.00,60.00,60.00];
, {5 N% N# E+ r! b4 f2 cTi1=[70,70,60,60];/ v* l7 z3 {% F% y5 F% D) W6 L
S=[2.00,2.00,2.00,3.00,3.00,3.00,2.50,2.50,2.50,2.50,3.34,2.50,2.50,2.50,2.50,2.50];
* Z: M  c' ?& ?1 T% Y* ]8 _1 m$ aS1=[2.00,3.00,1.66,2.50];9 h/ i6 J3 T% R- d' t3 |
I=[900.00,950.00,960.00,953.00,1060.00,1011.00,899.00,1023.00,942.00,1025.00,1000.00,1103.00,1100.00,1104.00,1100.00,1101.00];
' F; W/ d5 |$ N  m2 `% M* n/ G3 RI1=[995.00,1050.00,945.00,1101.00];' e7 l7 k. m$ N9 u
Y=[80.23,77.35,74.59,75.24,66.30,60.49,83.27,63.34,78.12,70.11,55.40,68.10,68.21,68.03,68.30,68.17];
+ v: Y2 Y0 O) D( s' K/ TY1=[72.01,65.65,78.63,68.11];  |% a* N: V4 I5 R0 L, e
P=[Te;Ti;S];%输入数据, R( N$ Z) d# g3 G/ K! W1 o
P1=[Te1;Ti1;S1];%检测的输入数据) ~! j9 L- q0 T  n' z1 E
T=[I;Y];  %输出数据4 [8 h+ v4 L/ m3 W" e9 l& P( N
T1=[I1;Y1];  %检测的的输出实际数据
; B1 t" {' S# S! `! [[Pn,minp,maxp,Tn,mint,maxt]=premnmx(P,T);  %归一化; ^. d  z1 n3 I; o2 c0 |) H* |0 Q
net=newff(minmax(Pn),[3,3,2],{'tansig', 'tansig','purelin'},'trainlm');  %建立神经网络2 s; e, }5 I, b- {0 J3 p- D7 A
net.trainParam.goal=0.000001;      # p4 Z4 i. T2 Q  l6 L, N
net.trainParam.show=50;
; f; {$ y0 X8 Y) j! c. |7 Dnet=train(net,Pn,Tn);    %网络训脸/ n$ P7 \2 p* ]4 n7 d( F
[Pn1]=tramnmx(P1,minp,maxp)    %检测输入数据的归一化
# {; P  c3 P% Pt_sim1=sim(net,Pn1);    %模拟输出
& m% e' B: O5 _6 F5 m$ _: p# A. zt_sim2=postmnmx(t_sim1,mint,maxt);   %模拟数据的反归一化5 y) {, z2 k  j
E1=t_sim2-T1    %模拟值与实际值的差值# _4 j* ]3 u0 X
M1=mse(E1)6 w# n! q8 v. C) ?; s





欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5