Convolution


Created: =dateformat(this.file.ctime,"dd MMM yyyy, hh:mm a") | Modified: =dateformat(this.file.mtime,"dd MMM yyyy, hh:mm a") Tags: knowledge


An Introduction to different Types of Convolutions in Deep Learning | by Paul-Louis Pröve | Towards Data Science

Convolution

2D convolution using a kernel size of 3, stride of 1 and padding

Dilated Convolutions

(a.k.a. atrous convolutions) 2D convolution using a 3 kernel with a dilation rate of 2 and no padding

Dilation rate: defines a spacing between the values in a kernel.

3x3 kernel with dilation rate = 2 will have the same field of view as a 5x5 kernel, while only using 9 parameters. Imagine taking a 5x5 kernel and deleting every second column and row.

Importance

  • Wider field of view at the same computational cost.
  • Dilated convolutions are particularly popular in the field of real-time segmentation.
  • Useful when need a wide field of view and cannot afford multiple convolutions or larger kernels.

Transposed Convolutions

(a.k.a. ‘deconvolutions’ or fractionally strided convolutions)

  • deconvolution - wrong term actually as it refers to the mathematical inverse of what a convolutional layer does
  • transposed convolution is similar because it produces the same spatial resolution a hypothetical deconvolutional layer would. However, the actual mathematical operation that’s being performed on the values is different.
  • A transposed convolutional layer carries out a regular convolution but reverts its spatial transformation.

Transposed 2D convolution with no padding, stride of 2 and kernel of 3

Importance

  • Very helpful for Encoder-Decoder architectures.
  • Combine the upscaling of an image with a convolution, instead of doing two separate processes.

Depthwise Separable Convolutions

Importance

 - Require much less computations than the standard convolution