How to quickly find the layer by its name in deep learning?
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
xingxingcui
le 23 Avr 2020
Commenté : xingxingcui
le 20 Juin 2020
In the deep learning toolbox, I cannot easily manipulate a specific layer. For example, I know the name of a layer. How can I quickly find it in the layer array?
layers = [convolution2dLayer(3,3,'name','aa');
reluLayer('name','bb');
convolution2dLayer(3,3,'name','cc')]
For example, if I want to find a convolutional layer named "cc", can I only find one by one in a for loop? When there are many layers(There are dozens of layers), this method is very inefficient!
for i = 1:length(layers)
if strcmp(layers(i).Name,'cc')
myfindLayer = layers(i);
break;
end
end
If only
myfindLayer = layers ('cc')
can be operated like this! I hope the official will consider such a method, easy to operate!
0 commentaires
Réponse acceptée
Ayush Laddha
le 18 Juin 2020
I understand that you wish to search a layer based upon its name and not using its index. You can make use of the ‘Name’ property of a layer. Let’s consider the layer array you mentioned in the question and you want to find the layer with name ‘cc’.
You can use –
layers({layers.Name} == "cc")
or
layers(strcmp({layers.Name}, 'cc'))
Don’t forget to put double-quotes (“ “) in case you are comparing using ‘==’ operator or else use string(‘cc’).
You can also refer to the below documentation -
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Deep Learning Toolbox dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!