Hi I have a question about ConvTranspose2d, in which situation would you use ConvTranspose2d over conv2d ? Or in which situation I SHOULD use ConvTranspose2d?
Hi Adam!
In general, if you are building a “conventional” convolutional network
(whatever that means), you should use Conv2d
.
The noteworthy use case for ConvTranspose2d
that I am familiar with
(I’m sure that there are others.) is in the U-Net architecture, where it is
used as an “upsampling” or “dilation” operation.
I believe that the "up-conv 2x2"operations in the original U-Net paper
can be exactly implemented as:
ConvTranspose2d (in_channels, out_channels, kernel_size = 2, stride = 2)
Best.
K. Frank
2 Likes