Weights during network training
11 views (last 30 days)
Show older comments
Dear users,
I am training a neural network using traingda algortithm. Is it possible to access the weights of the network at the intermediate epochs? With the commands net.IW, net.LW, and net.b I can access the weights only at the end of the training. I would like to access all the intermediate weights.
Any help is really appreciated! Thank you.
Mauro
0 Comments
Answers (3)
Greg Heath
on 23 Nov 2011
You will have to loop over an inner one-epoch loop.
Hope this helps.
Greg
0 Comments
Greg Heath
on 1 Dec 2011
rand('state',0);
net = newff(p,t,H);
IW = net.IW{1,1};
b1 = net.b{1};
IW = net.LW{2,1};
b2 = net.b{2};
% Store and/or plot the weight values
MSEgoal = mean(var(t'))/100
Nepochs = 1
Nloops = 100
net.trainParam.goal = MSEgoal;
net.trainParam.epochs = Nepochs;
net.trainParam.show = inf;
for i = 1:Nloops
net = train(net,p,t);
IW = net.IW{1,1};
b1 = net.b{1};
LW = net.LW{2,1};
b2 = net.b{2};
% Update storage and/or plots
end
REPRODUCIBILITY WARNING:
Using Nepochs = 100 with Nloops = 1 yields different results because each call of TRAIN reinitializes internal parameters.
Hope this helps.
Greg
0 Comments
See Also
Categories
Find more on Deep Learning Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!