https://www.youtube.com/watch?v=ByjaPdWXKJ4 This is the time-stamped video of "deconvolution". I can understand normal convolution but not so much with upsampling convolution. In the video he explained that you plop down the filter and use each individual scalar as the weight to apply to each value in the filter. I am having a hard time understanding how he got an output shape of 4x4? Is there a special formula for calculating the output for "upconvolution"? I am also confused on the padding and how it affects upconvolution?

My crappy paint image enter image description here

  • $\begingroup$ There is a question here om datascience called 'what are deconv layers' with 100 upvotes that explains the issue in great detail. You should have a look at it. $\endgroup$
    – Alex
    Commented Apr 21, 2018 at 12:17
  • $\begingroup$ For convenience, link to "What are deconvolutional layers?" $\endgroup$
    – chutsu
    Commented Jan 14, 2020 at 10:30

1 Answer 1


OP here:

https://towardsdatascience.com/types-of-convolutions-in-deep-learning-717013397f4d This has helped me understand how deconvolutional layer or transposed convolution works! Note to self don't google deconvolution or upconvolution google transposed convolution instead.

Update 2: http://deeplearning.net/software/theano/tutorial/conv_arithmetic.html

It turns out "deconvolution" is just convolution but with different arithmetics. You can take the transpose or add enough padding so that

1) You can upsample instead of downsampling.

2) Keep the previously linked relation, what I mean is you need to make sure each upsampled filter still contains a symbolic link with the smaller input.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.