how to copy layers and connections from an existing neural network?

just installed the latest version and find the support for deep learning is better and better. here, i have a question. I want to create a new network, but i do not want to write from scratch. take googlenet for example, I want to create a new network which can be a little like googlenet. but not all the same. maybe I need to refer some layers or structure. so how to copy layers and connections from an existing neural network?

Respuestas (1)

Something along the lines (I had an exemple withe Alexnet, but the basic principle should be identical; here, I just resize the input layers because I have gray, not RGB, images, and I have 45 classes):
net = alexnet;
layers = net.Layers;
layers(1) = imageInputLayer([227, 227,1]);
layers(2) = convolution2dLayer([11, 11], 96,'Padding',0, 'Stride', 4, 'BiasLearnRateFactor',2);
layers(23) = fullyConnectedLayer(45);
layers(24) = softmaxLayer();
layers(25) = classificationLayer();

1 comentario

Jack Xiao
Jack Xiao el 12 de Jul. de 2018
Editada: Jack Xiao el 12 de Jul. de 2018
thanks, I make a mistake previously. my copy operation makes a struct not a Layer. maybe it is a common operation in matlab. take " layersKept = net.Layers(1:25) ; " for example, it is for copying. and for connection copy: connectionKept = net.Connections(1:27,1:2) ;

Iniciar sesión para comentar.

Categorías

Más información sobre Deep Learning Toolbox en Centro de ayuda y File Exchange.

Productos

Versión

R2018a

Preguntada:

el 11 de Jul. de 2018

Editada:

el 12 de Jul. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by