How to find the total number of parameters in CNN network?
33 views (last 30 days)
Show older comments
Suppose I am using a deep learning model like VGG-16/ResNet, The other tools like tensorflow, Keras automatically show the number of parameters used by the candidate network.
How do I can find the total number of used paramters if I modfiy the pre-trained network based on my application?
0 Comments
Answers (2)
yanqi liu
on 17 Feb 2022
yes,may be use analyzeNetwork to get net model,such as
net = vgg16;
analyzeNetwork(net)
3 Comments
Sivylla Paraskevopoulou
on 13 May 2022
See a similar thread: https://www.mathworks.com/matlabcentral/answers/426886-how-to-calculate-the-number-of-parameters-in-matlab-that-is-used-by-a-deep-learning-network-like-vgg
Katarina Vuckovic
on 25 Dec 2022
analyzeNet shows the total number of learnable parameters per layer in the GUI. Is there a way I can extract that number and input it into the workspace? Right now it seems the only way to caclulate the learnable parameters is to manually sum up all the learnable parameters.
adel adel
on 13 Mar 2023
hello,
try this code:
lgraph = layerGraph(Net);
output = lgraph.Layers(end).Name;
prob = lgraph.Layers(end-1).Name;
lgraph = removeLayers(lgraph,output);
lgraph = removeLayers(lgraph,prob);
dlnet = dlnetwork(lgraph);
numparams = 0;
for i = 1:size(dlnet.Learnables,1)
numparams = numparams + numel(dlnet.Learnables.Value{i});
end
numparams = round(numparams/1000000,3);
end
0 Comments
See Also
Categories
Find more on Deep Learning Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!