声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1159|回复: 0

[图像处理] 神经网络训练终止的问题~~~~

[复制链接]
发表于 2012-5-17 17:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
clear,clc;
global L;%输入的训练样本
global R;
global T;
for i=1:588
W(:,i)=[L(:,i);R(:,i)];
end
%m=length(W)/2
%for j=1:2*m;
%W1=W(:,j);
%end
[Wn,minW,maxW,Tn,minT,maxT] = premnmx(W,T);
m=1:(length(W)/2);
W1=Wn(:,2*m);
T1=Tn(:,2*m);

EPOCHS=4000;
GOAL=0.0002;

s=14:2:25;
res=zeros(size(s));

for i=1:length(s)
    net=newff(minmax(W1),[s(i) 3],{'tansig' 'purelin'},'trainlm');
    net.iw{1,1}=zeros(size(net.iw{1,1}))+0.5;
    net.lw{2,1}=zeros(size(net.lw{2,1}))+0.75;
    net.b{1,1}=zeros(size(net.b{1,1}))+0.5;
    net.b{2,1}=zeros(size(net.b{2,1}));
    net.trainParam.epochs=EPOCHS;
    net.trainParam.goal =GOAL;
    net.trainParam.show=50;
    net=train(net,W1,T1);
    y=sim(net,W1);
e=T1-y;
error=mse(e,net);
res(i)=norm(error);
end

number=find(res==min(res));
if(length(number)>1) no=number(1)
else no=number
end

clear error,res
tic
net=newff(minmax(W1),[14+2*(no-1),3],{'tansig','purelin'},'trainlm');
    net.iw{1,1}=zeros(size(net.iw{1,1}))+0.5;
    net.lw{2,1}=zeros(size(net.lw{2,1}))+0.75;
    net.b{1,1}=zeros(size(net.b{1,1}))+0.5;
    net.b{2,1}=zeros(size(net.b{2,1}));
    net.trainParam.epochs=EPOCHS;
    net.trainParam.goal =GOAL;
net=train(net,W1,T1);
y=sim(net,W1);
e=T1-y;
error=mse(e,net)%error为网络的误差向量
r=norm(error);%r为网络的整体误差
toc
save net


%预测
n=1:(length(W)/4);
W2=Wn(:,4*n-3);
T2=Tn(:,4*n-3);
y2=sim(net,W2);

%结果反归一化
Y2=postmnmx(y2,minT,maxT);
T_2=postmnmx(T2,minT,maxT);

%计算误差
wucha=abs(Y2-T_2)/T_2;
b=minmax(wucha);
average_wucha=mean(wucha);





请问各位大侠,这个程序若已经达到了训练的目标如何让它终止啊?我训练的目标达到了,但是接着又重新训练了,保存的数据就被clear了,是不是缺少了舍呢么条件啊?请各位帮忙看一下,等目标达到0.000005以后程序自动终止不再执行了~~~

先谢谢了~~
回复
分享到:

使用道具 举报

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 00:42 , Processed in 0.057523 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表