How to find the total number of parameters in CNN network?

87 visualizaciones (últimos 30 días)
M M Nabi
M M Nabi el 16 de Feb. de 2022
Respondida: adel adel el 13 de Mzo. de 2023
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?

Respuestas (2)

yanqi liu
yanqi liu el 17 de Feb. de 2022
yes,may be use analyzeNetwork to get net model,such as
net = vgg16;
analyzeNetwork(net)
  3 comentarios
Sivylla Paraskevopoulou
Sivylla Paraskevopoulou el 13 de Mayo de 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
Katarina Vuckovic el 25 de Dic. de 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.

Iniciar sesión para comentar.


adel adel
adel adel el 13 de Mzo. de 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

Categorías

Más información sobre Image Data Workflows en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by