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)