Variants of convolution functions
Mr. Sivadasan E T
Associate Professor
Vidya Academy of Science and Technology, Thrissur
Variants of the Basic Convolution Function
• Convolution with a single kernel can only
extract one kind of feature.
• Usually we want each layer of our
network to extract many kinds of features,
at many locations.
Variants of the Basic Convolution Function
When working with images, we usually
think of the input and output of the
convolution as being 3-D tensors.
With one index into the different channels
and two indices into the spatial coordinates
of each channel.
Variants of the Basic Convolution Function
Software implementations usually work in
batch mode, so they will actually use 4-D
tensors, with the fourth axis indexing
different examples in the batch.
Variants of the Basic Convolution Function
Strided convolution
Strided convolution
Zero Padding
One essential feature of any convolution
network implementation is the ability to
implicitly zero-pad the input V in order to
make it wider.
Zero Padding
One essential feature of any convolution
network implementation is the ability to
implicitly zero-pad the input V in order to
make it wider.
Without this feature, the width of the
representation shrinks by one pixel less than
the kernel width at each layer.
Zero Padding
Zero padding the input allows us to control
the kernel width and the size of the output
independently.
Zero Padding
Without zero padding, we are forced to choose
between shrinking the spatial extent of the
network rapidly and using small kernels - both
scenarios that significantly limit the expressive
power of the network.
Three special cases of the zero-padding setting
1. No zero-padding - Valid convolution.
2. Enough zero-padding is added to keep the size of
the output equal to the size of the input - same
convolution.
3. Enough zeoes are added for every pixel to be visited
k times in each direction, resulting in an output image
of width (m + k -1) - full convolution (m = Image
width)
Zero Padding
Unshared Convolution
Unshared Convolution
Unshared Convolution
Unshared Convolution
Tiled Convolution
Transposed Convolution
• Transposed convolution as the opposite of the
convolution.
• This operation adds all the neighboring numbers in
the input layer together, weighted by a convolution
matrix (kernel). For example, in the image below,
the output value 55 is calculated by the element-
wise multiplication between the 3x3 part of the
input layer and the 3x3 kernel, and sum all results
together:
Transposed Convolution
Thank You!