QQ登录

只需要一步,快速开始

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

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

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

1

主题

0

听众

27

积分

升级  23.16%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2009-9-10 00:20 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
神经网络预测! O# R7 V" ?; C9 Q
% 数据为1986年到2000年的交通量 ,网络为3输入,1输出& k/ q+ k+ @4 n0 s* d
% 15组数据,其中9组为正常训练数据,3组为变量数据,3组为测试数据% ~- ~6 c) K$ Y) J
%by akjuan
$ y+ b$ O8 d; ^& q) j%all rights preserved by www.4math.cn
/ _& f+ A) Q2 g) I2 HAll_error=[];%所有误差存储; |  E! J0 \& X& |
year=1986:2000;%数据是从1986到2000年的0 o/ g2 _3 D: L& B; G
p=[493 372 445;372 445 176;445 176 235;176 235 378;235 378 429;...
0 P# ^# ]: ?8 e   378 429 561;429 561 651;561 651 467;651 467 527;467 527 668;...- g+ a+ l0 i" [
   527 668 841; 668 841 526;841 526 480;526 480 567;480 567 685]';%输入数据,共15组,每组3个输入) g& x3 L. I" O& v3 J5 R
t=[176 235 378 429 561 651 467 527 668 841 526 480 567 685 507];%输出数据,共15组,每组1个输出
6 `! G+ f$ \4 X. v/ ?[normInput,ps] = mapminmax(p);, ^5 T$ ^. f2 B; o6 ^( z0 t
[normTarget,ts] = mapminmax(t);
3 X0 Z( X/ N9 s& N1 |testPercent = 0.20;  % Adjust as desired
3 E$ h- b# G$ G9 F! m$ AvalidatePercent = 0.20;  % Adust as desired6 p6 r+ O) S. o
[trainSamples,validateSamples,testSamples] = dividevec(normInput,normTarget,validatePercent,testPercent);
: \. ?& G4 W) o; K1 M. ]  tfor j=1:200
7 E. y4 v9 c' h* d3 rNodeNum1 = 20; % 隐层第一层节点数: R1 M2 r( W- @/ `
NodeNum2=40;   % 隐层第二层节点数
  X8 z! X+ L" ]" ^& O+ JTypeNum = 1;   % 输出维数' ^9 M) d% u/ T4 \( ^: R
TF1 = 'tansig';TF2 = 'tansig'; TF3 = 'tansig';
% r3 c  J9 w- A+ h( x* q! R" `net=newff(minmax(normInput),[NodeNum1,NodeNum2,TypeNum],{TF1 TF2 TF3},'traingdx');%网络创建net.trainParam.epochs=10000;%训练次数设置
+ P8 J, R  m5 j! Y, T1 M3 Unet.trainParam.goal=1e-6;%训练目标设置# ~' j: X) d) D
PL.lr=0.01;net.trainfcn='traingdm';
2 u! Q( p4 P" ^, w% h) G[net,tr] = train(net,trainSamples.P,trainSamples.T,[],[],validateSamples,testSamples);
1 `2 x' ?; z5 P3 a[normTrainOutput,Pf,Af,E,trainPerf] = sim(net,trainSamples.P,[],[],trainSamples.T);%正常输入的9组p数据,BP得到的结果t$ o7 F0 D! P; p) p/ x0 K1 s
[normValidateOutput,Pf,Af,E,validatePerf] = sim(net,validateSamples.P,[],[],validateSamples.T);%用作变量3的数据p,BP得到的结果t
) D" j2 P% S2 S1 `[normTestOutput,Pf,Af,E,testPerf] = sim(net,testSamples.P,[],[],testSamples.T);%用作测试的3组数据p,BP得到的结果t
. M7 n% O& `9 D' t% ?trainOutput = mapminmax('reverse',normTrainOutput,ts);%正常输入的9组p数据,BP得到的归一化后的结果t0 N' o: v4 n7 ?
trainInsect = mapminmax('reverse',trainSamples.T,ts);%正常输入的9组数据t' Q/ Y* C& h9 T+ f# [, B
validateOutput = mapminmax('reverse',normValidateOutput,ts);%用作变量3的数据p,BP得到的归一化的结果t7 X: E$ Y7 W* K9 K+ y# b
validateInsect = mapminmax('reverse',validateSamples.T,ts);%用作变量3的数据t  [+ {5 b2 s) Y9 E
testOutput = mapminmax('reverse',normTestOutput,ts);%用作变量3组数据p,BP得到的归一化的结果t
- G$ }4 i& w, V$ x1 DtestInsect = mapminmax('reverse',testSamples.T,ts);%用作变量3组数据t
* i" j4 N8 C% u, ]5 s1 u1 m%绝对误差计算3 N- n# B& k8 @( j4 q0 p
absTrainError = trainOutput-trainInsect;
$ R& K' [8 M! k- @+ {absTestError = testOutput-testInsect;, o0 V' H; r, b6 ]+ Y0 O
error_sum=sqrt(absTestError(1).^2+absTestError(2).^2+absTestError(3).^2);
& \, F8 R. h1 L& EAll_error=[All_error error_sum];
- a  H3 l& c/ j. O! ^8 T+ Ceps=90;%其为3组测试数据的标准差,或者每个数据偏差在一定范围内而判别2 W9 P) d$ u, @- e' _, j# _
if ((abs(absTestError(1))<=30 )&(abs(absTestError(2))<=30)&(abs(absTestError(3))<=30)|(error_sum<=eps))+ ]9 Q# U* a; C+ q1 `" s* W
save mynetdata net. _4 v( ?" e! n% h' q
     break
/ J4 \# E$ r* ?- @: Pend
" f* [9 M* S4 g8 f* `j
7 o+ h1 \/ J( r& Vend7 k* \7 a# p6 `  j* y  n
问题是:; ]. D: ~+ R* h. @9 ]6 Z% S* ?4 D
if ((abs(absTestError(1))<=30 )&(abs(absTestError(2))<=30)&(abs(absTestError(3))<=30)|(error_sum<=eps))
* f+ x6 s& S2 K5 A$ L中的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, 2026-4-11 11:24 , Processed in 0.420961 second(s), 63 queries .

回顶部