Help regarding the transposed convolution layer
10 views (last 30 days)
Please provide help regarding how the transposedConv2dLayer works.
I am struggling to understand the following helper function
function out = createUpsampleTransponseConvLayer(factor,numFilters)
filterSize = 2*factor - mod(factor,2);
cropping = (factor-mod(factor,2))/2;
numChannels = 1;
out = transposedConv2dLayer(filterSize,numFilters, ...
from the example: https://uk.mathworks.com/help/deeplearning/examples/image-to-image-regression-using-deep-learning.html
How does the filtersize and stride affect the output of this layer?
What's the difference between this layer and a simple upsampling layer?
whether the weights are somehow transposed or learned from scratch?
Srivardhan Gadila on 17 Mar 2020
An upsampling layer uses a defined/pre-defined interpolation method to upsample the input but a transposed convolution layer learns weights from the scratch. Starting in R2019a, the software, by default, initializes the layer weights of this layer using the Glorot initializer. This behavior helps stabilize training and usually reduces the training time of deep networks.