torch.nn.functional.conv1d#
- torch.nn.functional.conv1d(input, weight, bias=None, stride=1, padding=0, dilation=1, groups=1) Tensor#
對由多個輸入平面組成的輸入訊號進行1D卷積操作。
此運算子支援TensorFloat32。
請參閱
Conv1d獲取詳細資訊和輸出形狀。注意
在某些情況下,當在 CUDA 裝置上使用張量並利用 CuDNN 時,此運算元可能會選擇一個非確定性演算法來提高效能。如果這不可取,你可以嘗試將操作設定為確定性的(可能以效能為代價),方法是設定
torch.backends.cudnn.deterministic = True。有關更多資訊,請參閱 可復現性。注意
此運算子支援複數資料型別,例如
complex32, complex64, complex128。- 引數
input – 輸入張量,形狀為
weight – 濾波器,形狀為
bias – 可選的偏置,形狀為 。預設為
None。stride – 卷積核的步長。可以是單個數字或一個單元素元組 (sW,)。預設為 1。
padding –
輸入兩側的隱式填充。可以是字串 {‘valid’, ‘same’}、單個數字或一個單元素元組 (padW,)。預設為 0。
padding='valid'等同於無填充。padding='same'會填充輸入,使輸出形狀與輸入形狀相同。但此模式不支援除 1 以外的任何步長值。警告
對於
padding='same',如果weight的長度是偶數且dilation在任何維度上都是奇數,則可能需要在內部進行一次完整的pad()操作。這會降低效能。dilation – 核心元素之間的間距。可以是單個數字或一個單元素元組 (dW,)。預設為 1。
groups – 將輸入分割成組, 必須能被組數整除。預設值:1
示例
>>> inputs = torch.randn(33, 16, 30) >>> filters = torch.randn(20, 16, 5) >>> F.conv1d(inputs, filters)