Hi,
I am trying to transfer the weights of layer 11 from 'original_net' to layer 11 of 'layers_final'. Both have same structure and 'layer_final' is just the empty, untrained version of 'original net'. i am using the following command:
Layers_final(11).Weights = net_1.Layers(11).Weights
I get the following error while doing so:
Error using nnet.cnn.layer.TransposedConvolution2DLayer/set.Weights (line 204)
Expected input to be of size 4x4x8x1, but it is of size 4x4x8x8.
code for layers_final:
imageLayer_final = imageInputLayer([32,32,1]);encodingLayers_final = [ ... convolution2dLayer(3,16,'Padding','same'), ... reluLayer, ... maxPooling2dLayer(2,'Padding','same','Stride',2), ... convolution2dLayer(3,8,'Padding','same'), ... reluLayer, ... maxPooling2dLayer(2,'Padding','same','Stride',2), ... convolution2dLayer(3,8,'Padding','same'), ... reluLayer, ... maxPooling2dLayer(2,'Padding','same','Stride',2)];decodingLayers_final = [ ... createUpsampleTransponseConvLayer(2,8), ... reluLayer, ... createUpsampleTransponseConvLayer(2,8), ... reluLayer, ... createUpsampleTransponseConvLayer(2,16), ... reluLayer, ... convolution2dLayer(3,1,'Padding','same'), ... clippedReluLayer(1.0), ... regressionLayer];layers_final = [imageLayer,encodingLayers,decodingLayers];
net_original attached with the question.
Thanks
Best Answer