FFTConvolve¶
- class torchaudio.transforms.FFTConvolve(mode: str = 'full')[源代码]¶
使用 FFT 沿输入的最后一个维度进行卷积。对于最后一个维度较大的输入,此模块通常比
Convolve
快得多。请注意,与实际应用有效互相关运算符的torch.nn.Conv1d
相比,此模块应用的是真正的 卷积 运算符。另请注意,此模块只能输出浮点张量(整数张量输入将被转换为浮点型)。- 参数:
mode (str, 可选) –
必须是 (“full”, “valid”, “same”) 之一。
“full”:返回完整卷积结果,形状为 (…, N + M - 1),其中 N 和 M 是两个输入的尾部维度。(默认)
“valid”:返回完整卷积结果的片段,该片段对应于两个输入完全重叠的位置,形状为 (…, max(N, M) - min(N, M) + 1)。
“same”:返回完整卷积结果的中心片段,形状为 (…, N)。
- forward(x: Tensor, y: Tensor) Tensor [源代码]¶
- 参数:
x (torch.Tensor) – 第一个卷积操作数,形状为 (…, N)。
y (torch.Tensor) – 第二个卷积操作数,形状为 (…, M)(前导维度必须与
x
的前导维度可广播)。
- 返回:
卷积
x
和y
的结果,形状为 (…, L),其中前导维度与x
的前导维度匹配,L 由mode
决定。- 返回类型: