Stopping the neural network by tr.gradient

5 views (last 30 days)
In training an ANN using FITNET , I noticed , the tr.gradient gives a row matrice that the number of columns are the number of iterations , and the last column is the gradient reported on the train window
I tried doing :
for h=Hmin:dH:Hmax
j = j+1
net = fitnet(10);
net = init(net); % Improving Results since we use patternet we should use init
[ net tr y ] = train( net, x, t );
e = gsubtract(t,y);
performance = perform(net,t,y)
if tr.gradient(end) < 0.05
tr.stop
end
but it only stops the Validation test , not the actual training test , is there a way to do this ? and also when I retrain after a gradient like 0.503 and I get a smaller gradient , if from my outputs one is calculated not so precisely , the only thing happens is that , another output will be unprecise.
I have 8 inputs and 3 outputs

Accepted Answer

Ahmed
Ahmed on 6 Mar 2015
Maybe you are looking for the property “trainParam.min_grad”.
net = fitnet(10);
net.trainParam.min_grad % default 1e-7
net.trainParam.min_grad = 1e-5;
net.trainParam.min_grad % changed to 1e-5
  7 Comments
farzad
farzad on 11 Mar 2015
Thank you very much dear professor
I wish I could accept ,but it was a comment

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!