QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 3024|回复: 1
打印 上一主题 下一主题

[代码资源] 一matlab程序中一点点的小问题

[复制链接]
字体大小: 正常 放大
yychanaz        

1

主题

0

听众

27

积分

升级  23.16%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2009-9-10 00:20 |只看该作者 |正序浏览
|招呼Ta 关注Ta
神经网络预测
1 N6 s7 ^9 `  M& x8 }* z$ f% 数据为1986年到2000年的交通量 ,网络为3输入,1输出
' R/ ?. E% i: j/ D, Q) R% t% 15组数据,其中9组为正常训练数据,3组为变量数据,3组为测试数据
# u; m9 f0 W: a8 |: F5 k" |1 x0 J%by akjuan
- k$ L3 P+ }8 X- A%all rights preserved by www.4math.cn
( I  n% \  `( Y0 x/ z- T- W. [All_error=[];%所有误差存储3 o2 H; ~' Y5 \4 z7 @5 b
year=1986:2000;%数据是从1986到2000年的( `( c# d' }$ l+ `
p=[493 372 445;372 445 176;445 176 235;176 235 378;235 378 429;...& c3 Z# _: C0 R3 z) h" R( y4 v/ C
   378 429 561;429 561 651;561 651 467;651 467 527;467 527 668;...
" B- A% q( u4 D   527 668 841; 668 841 526;841 526 480;526 480 567;480 567 685]';%输入数据,共15组,每组3个输入
- J5 f8 r$ n! n: L1 m# Kt=[176 235 378 429 561 651 467 527 668 841 526 480 567 685 507];%输出数据,共15组,每组1个输出0 U4 F' a9 w& j3 b1 s
[normInput,ps] = mapminmax(p);# y6 d6 D# v7 }- w2 q. S
[normTarget,ts] = mapminmax(t);! B. U. f0 M. n- C; m/ ^
testPercent = 0.20;  % Adjust as desired; [0 z1 H( o  A8 m  j4 \6 p7 l3 N
validatePercent = 0.20;  % Adust as desired8 u4 i! G3 f+ g1 c! Y2 r
[trainSamples,validateSamples,testSamples] = dividevec(normInput,normTarget,validatePercent,testPercent);
; ]/ c, G3 P# M; @/ Z' i8 rfor j=1:200' d) ^% x! V) ?5 N5 Q# G
NodeNum1 = 20; % 隐层第一层节点数/ H% w+ F! r9 q* D6 ?
NodeNum2=40;   % 隐层第二层节点数
! W- `5 S- _  V/ s, M" u% uTypeNum = 1;   % 输出维数# T6 a+ c- o7 k# l7 G7 I) h: G$ H
TF1 = 'tansig';TF2 = 'tansig'; TF3 = 'tansig';& f3 w5 C; k- g* K( x9 W+ {2 J. R
net=newff(minmax(normInput),[NodeNum1,NodeNum2,TypeNum],{TF1 TF2 TF3},'traingdx');%网络创建net.trainParam.epochs=10000;%训练次数设置# a* }% @) b$ ]4 v+ M% ~
net.trainParam.goal=1e-6;%训练目标设置
' |+ T: X6 J6 ^& }) B! n$ p2 Q* b7 [PL.lr=0.01;net.trainfcn='traingdm';
; |+ A; Z( r( ^* Z& a2 s[net,tr] = train(net,trainSamples.P,trainSamples.T,[],[],validateSamples,testSamples);4 W3 s9 ^7 ?. L" W2 M! [4 g$ I
[normTrainOutput,Pf,Af,E,trainPerf] = sim(net,trainSamples.P,[],[],trainSamples.T);%正常输入的9组p数据,BP得到的结果t  H$ e+ U$ F6 z
[normValidateOutput,Pf,Af,E,validatePerf] = sim(net,validateSamples.P,[],[],validateSamples.T);%用作变量3的数据p,BP得到的结果t
7 Z" L  b/ H1 j; [% E5 b[normTestOutput,Pf,Af,E,testPerf] = sim(net,testSamples.P,[],[],testSamples.T);%用作测试的3组数据p,BP得到的结果t" B- v& c$ A  P$ f1 h0 g6 N
trainOutput = mapminmax('reverse',normTrainOutput,ts);%正常输入的9组p数据,BP得到的归一化后的结果t
3 @$ O" A0 t' Q! N& i# g3 E2 O. [trainInsect = mapminmax('reverse',trainSamples.T,ts);%正常输入的9组数据t
+ S  j/ ?/ S9 T" X, H: `/ |validateOutput = mapminmax('reverse',normValidateOutput,ts);%用作变量3的数据p,BP得到的归一化的结果t$ N* e2 K& Y; n) G9 l! U* ]/ z
validateInsect = mapminmax('reverse',validateSamples.T,ts);%用作变量3的数据t1 e  u/ W( R* O! z# @0 W6 M2 F" Y9 a
testOutput = mapminmax('reverse',normTestOutput,ts);%用作变量3组数据p,BP得到的归一化的结果t& u- \; S! v0 Y
testInsect = mapminmax('reverse',testSamples.T,ts);%用作变量3组数据t
6 U* h! A6 [" k; o  Q4 H' N%绝对误差计算
" t1 Q  m" i" Y4 z% X* a2 kabsTrainError = trainOutput-trainInsect;
# U+ p' ^2 i2 V4 l- r0 P* Y, AabsTestError = testOutput-testInsect;3 }3 S, {, n4 s  n/ p8 T
error_sum=sqrt(absTestError(1).^2+absTestError(2).^2+absTestError(3).^2);9 k/ S' v3 X) J6 O: r
All_error=[All_error error_sum];
; i1 K2 U- R+ G$ n9 I7 Peps=90;%其为3组测试数据的标准差,或者每个数据偏差在一定范围内而判别
  o% b" n/ x. e) uif ((abs(absTestError(1))<=30 )&(abs(absTestError(2))<=30)&(abs(absTestError(3))<=30)|(error_sum<=eps)), F; i" }/ Y* k% x" z7 Q
save mynetdata net6 Q. R! r: f. n$ {2 e' o
     break
3 y% i$ q* q$ Z$ eend" E7 H; C5 V% g* `2 L* i  e5 |
j
0 A7 S& N0 Q2 B' p6 B8 m! Q2 Gend
9 b/ ?& E: ]4 C- B) [. [) J- W问题是:% H0 e' H9 ?; p: g7 t2 j
if ((abs(absTestError(1))<=30 )&(abs(absTestError(2))<=30)&(abs(absTestError(3))<=30)|(error_sum<=eps))( E  i& b! i. q1 e# a( Y
中的30是怎么算出来的啊
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏1 支持支持1 反对反对0 微信微信

10

主题

4

听众

108

积分

升级  4%

该用户从未签到

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2025-8-23 02:35 , Processed in 0.777506 second(s), 63 queries .

回顶部