在PyTorch中,可以通過調整反卷積層的參數來控制輸出的大小。具體來說,可以通過設置輸出大小、卷積核大小、步幅(stride)和填充(padding)等參數來控制反卷積的輸出大小。
以下是一個示例代碼,演示如何控制反卷積層的輸出大小:
import torch
import torch.nn as nn
# 定義輸入張量
input = torch.randn(1, 1, 28, 28)
# 反卷積層參數
in_channels = 1
out_channels = 1
kernel_size = 3
stride = 2
padding = 1
output_padding = 1
# 創建反卷積層
deconv = nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride, padding, output_padding)
# 計算輸出大小
output_size = deconv(input).size()
print(output_size)
在上面的示例中,我們定義了一個反卷積層nn.ConvTranspose2d
,并設置了輸入通道數、輸出通道數、卷積核大小、步幅、填充和輸出填充等參數。通過調用反卷積層的size()
方法,可以得到反卷積層的輸出大小。
通過調整反卷積層的參數,我們可以靈活地控制反卷積的輸出大小,以滿足不同的需求。