評價此頁

torch.nn.functional.conv_transpose2d#

torch.nn.functional.conv_transpose2d(input, weight, bias=None, stride=1, padding=0, output_padding=0, groups=1, dilation=1) Tensor#

對由多個輸入層組成的輸入影像應用二維轉置卷積運算元,有時也稱為“反捲積”。

此運算子支援TensorFloat32

有關詳細資訊和輸出形狀,請參閱 ConvTranspose2d

注意

在某些情況下,當在 CUDA 裝置上使用張量並利用 CuDNN 時,此運算元可能會選擇一個非確定性演算法來提高效能。如果這不可取,你可以嘗試將操作設定為確定性的(可能以效能為代價),方法是設定 torch.backends.cudnn.deterministic = True。有關更多資訊,請參閱 可復現性

引數
  • input – 輸入張量,形狀為 (minibatch,in_channels,iH,iW)(\text{minibatch} , \text{in\_channels} , iH , iW)

  • weight – 濾波器,形狀為 (in_channels,out_channelsgroups,kH,kW)(\text{in\_channels} , \frac{\text{out\_channels}}{\text{groups}} , kH , kW)

  • bias – 可選的偏置,形狀為 (out_channels)(\text{out\_channels})。預設值:None

  • stride – 卷積核的步長。可以是單個數字或一個元組 (sH, sW)。預設值:1

  • padding – 將會在輸入的每個維度兩側新增 dilation * (kernel_size - 1) - padding 的零填充。可以是單個數字或一個元組 (padH, padW)。預設值:0

  • output_padding – 在輸出形狀的每個維度的一側新增的額外大小。可以是單個數字或一個元組 (out_padH, out_padW)。預設值:0

  • groups – 將輸入分割成組,in_channels\text{in\_channels} 必須能被組數整除。預設值:1

  • dilation – 卷積核元素之間的間距。可以是單個數字或一個元組 (dH, dW)。預設值:1

示例

>>> # With square kernels and equal stride
>>> inputs = torch.randn(1, 4, 5, 5)
>>> weights = torch.randn(4, 8, 3, 3)
>>> F.conv_transpose2d(inputs, weights, padding=1)