FFTConvolve¶
- class torchaudio.transforms.FFTConvolve(mode: str = 'full')[源代码]¶
使用 FFT 在最后一个维度上卷积输入。对于最后一个维度较大的输入,该模块通常比
Convolve
快得多。请注意,与实际上应用了有效互相关算子的torch.nn.Conv1d
不同,该模块应用了真正的 卷积 算子。另外请注意,此模块只能输出浮点张量(整数张量输入将被转换为浮点数)。- 参数
mode (str, optional) –
必须是以下之一(“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
决定。- 返回类型