torch.nn.functional.conv3d¶
- torch.nn.functional.conv3d(input, weight, bias=None, stride=1, padding=0, dilation=1, groups=1) Tensor¶
對由多個輸入通道組成的輸入應用 3D 卷積。
該運算元支援 TensorFloat32。
有關詳細資訊和輸出形狀,請參見
Conv3d。注意
在某些情況下,當輸入張量在 CUDA 裝置上並使用 CuDNN 時,該運算元可能會選擇非確定性演算法來提高效能。如果不需要這樣做,可以透過設定
torch.backends.cudnn.deterministic = True使操作具有確定性(可能會犧牲效能)。更多資訊請參見 可重現性。注意
該運算元支援複數資料型別,例如
complex32, complex64, complex128。- 引數
input – 輸入張量,形狀為
weight – 濾波器張量,形狀為
bias – 可選的偏置張量,形狀為 。預設值:None
stride – 卷積核的步長。可以是單個數字或元組 (sT, sH, sW)。預設值:1
padding –
輸入的兩側隱式填充。可以是字串 {'valid', 'same'}、單個數字或元組 (padT, padH, padW)。預設值:0
padding='valid'等同於不填充。padding='same'會對輸入進行填充,使輸出與輸入具有相同的形狀。但是,此模式不支援除 1 之外的任何步長值。警告
對於
padding='same',如果在任何維度上weight是偶數長度且dilation是奇數,內部可能需要執行完整的pad()操作。這會降低效能。dilation – 核心元素之間的間距。可以是單個數字或元組 (dT, dH, dW)。預設值:1
groups – 將輸入拆分成組, 必須能被組數整除。預設值:1
示例
>>> filters = torch.randn(33, 16, 3, 3, 3) >>> inputs = torch.randn(20, 16, 50, 10, 20) >>> F.conv3d(inputs, filters)