How does Pytorch implement nn.functional.conv_transpose2d?


I reviewed “A guide to convolution arithmetic for deep learning” (Dumoulin and Visin 2016), which states that “it is always possible to emulate a transposed convolution with a direct convolution”. However, they mention that this is an inefficient implementation. So how does Pytorch implement the transposed convolution?

I tried (unsuccessfully) to trace the actual implementation of conv_transpose2d. Hence, any pointers would greatly help.

Thanks in advance!


So the way to go is:

1 Like