pytorch中ConvTranspose2d的計算公式

pytorch中反卷積的函數為:

class torch.nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride=1, padding=0,
output_padding=0, groups=1, bias=True, dilation=1)

參數的含義如下:

  • in_channels(int) – 輸入信號的通道數
  • out_channels(int) – 卷積產生的通道數
  • kerner_size(int or tuple) - 卷積核的大小
  • stride(int or tuple,optional) - 卷積步長,即要將輸入擴大的倍數。
  • padding(int or tuple, optional) - 輸入的每一條邊補充0的層數,高寬都增加2*padding
  • output_padding(int or tuple, optional) - 輸出邊補充0的層數,高寬都增加padding
  • groups(int, optional) – 從輸入通道到輸出通道的阻塞連接數
  • bias(bool, optional) - 如果bias=True,添加偏置
  • dilation(int or tuple, optional) – 卷積核元素之間的間距

對於每一條邊輸入輸出的尺寸的公式如下:

output = (input - 1)*stride+outputpadding - 2*padding+kernelsize

推薦閱讀:

TAG:深度學習(DeepLearning) | PyTorch | 機器學習 |