ConvTasNet¶
- class torchaudio.models.ConvTasNet(num_sources: int = 2, enc_kernel_size: int = 16, enc_num_feats: int = 512, msk_kernel_size: int = 3, msk_num_feats: int = 128, msk_num_hidden_feats: int = 512, msk_num_layers: int = 8, msk_num_stacks: int = 3, msk_activate: str = 'sigmoid')[source]¶
Conv-TasNet 架構,於 Conv-TasNet: Surpassing Ideal Time–Frequency Magnitude Masking for Speech Separation [Luo and Mesgarani, 2019] 中提出。
注意
此實作對應於論文中的「非因果 (non-causal)」設定。
另請參閱
torchaudio.pipelines.SourceSeparationBundle
:使用預訓練模型的音源分離管道。
- 參數:
num_sources (int, optional) – 要分離的音源數量。
enc_kernel_size (int, optional) – 編碼器/解碼器的卷積核大小,<L>。
enc_num_feats (int, optional) – 傳遞給遮罩生成器的特徵維度,<N>。
msk_kernel_size (int, optional) – 遮罩生成器的卷積核大小,<P>。
msk_num_feats (int, optional) – 遮罩生成器中 conv 塊的輸入/輸出特徵維度,<B, Sc>。
msk_num_hidden_feats (int, optional) – 遮罩生成器 conv 塊的內部特徵維度,<H>。
msk_num_layers (int, optional) – 遮罩生成器的一個 conv 塊中的層數,<X>。
msk_num_stacks (int, optional) – 遮罩生成器的 conv 塊數量,<R>。
msk_activate (str, optional) – 遮罩輸出的激活函數 (預設:
sigmoid
)。
方法¶
forward¶
- ConvTasNet.forward(input: Tensor) Tensor [source]¶
執行音源分離。生成音訊來源波形。
- 參數:
input (torch.Tensor) – 3D 張量,形狀為 [batch, channel==1, frames]
- 回傳:
3D 張量,形狀為 [batch, channel==num_sources, frames]
- 回傳類型:
Tensor (張量)
工廠函數¶
建立 |