Wav2Vec2Model¶
- class torchaudio.models.Wav2Vec2Model(feature_extractor: Module, encoder: Module, aux: Optional[Module] = None)[源代码]¶
wav2vec 2.0 中使用的声学模型 [Baevski et al., 2020]。
注意
要构建模型,请使用其中一个工厂函数。
另请参阅
torchaudio.pipelines.Wav2Vec2Bundle
: 预训练模型(未经微调)torchaudio.pipelines.Wav2Vec2ASRBundle
: 带有预训练模型的 ASR 管道。
- 参数
feature_extractor (torch.nn.Module) – 从原始音频 Tensor 中提取特征向量的特征提取器。
encoder (torch.nn.Module) – 将音频特征转换为标签上概率分布序列(以负对数似然表示)的编码器。
aux (torch.nn.Module 或 None, 可选) – 辅助模块。如果提供了该模块,则编码器的输出将传递给此模块。
- 使用
Wav2Vec2Model
的教程
方法¶
forward¶
- Wav2Vec2Model.forward(waveforms: Tensor, lengths: Optional[Tensor] = None) Tuple[Tensor, Optional[Tensor]] [源代码]¶
计算标签上概率分布的序列。
- 参数
waveforms (Tensor) – 形状为 (batch, frames) 的音频 Tensor。
lengths (Tensor 或 None, 可选) – 指示批次中每个音频的有效长度。形状:(batch, )。当
waveforms
包含不同时长的音频时,通过提供lengths
参数,模型将计算相应的有效输出长度并在 transformer 注意力层中应用适当的掩码。如果为None
,则假定waveforms
中的所有音频都具有有效长度。默认值:None
。
- 返回
- 张量
标签上的概率分布(以 logit 表示)序列。形状:(batch, frames, num labels)。
- Tensor 或 None
如果提供了
lengths
参数,则返回一个形状为 (batch, ) 的 Tensor。它指示输出 Tensor 在时间轴上的有效长度。
- 返回类型
(Tensor, Optional[Tensor])
extract_features¶
- Wav2Vec2Model.extract_features(waveforms: Tensor, lengths: Optional[Tensor] = None, num_layers: Optional[int] = None) Tuple[List[Tensor], Optional[Tensor]] [源代码]¶
从原始音频波形提取特征向量
这将返回 transformer 块在编码器中中间层的输出列表。
- 参数
waveforms (Tensor) – 形状为 (batch, frames) 的音频 Tensor。
lengths (Tensor 或 None, 可选) – 指示批次中每个音频的有效长度。形状:(batch, )。当
waveforms
包含不同时长的音频时,通过提供lengths
参数,模型将计算相应的有效输出长度并在 transformer 注意力层中应用适当的掩码。如果为None
,则假定整个音频波形长度有效。num_layers (int 或 None, 可选) – 如果给出,则限制要经过的中间层数量。提供 1 将在经过一层中间层后停止计算。如果未给出,则返回所有中间层的输出。
- 返回
- Tensor 列表
来自请求层的特征。每个 Tensor 的形状为:(batch, time frame, feature dimension)
- Tensor 或 None
如果提供了
lengths
参数,则返回一个形状为 (batch, ) 的 Tensor。它指示每个特征 Tensor 在时间轴上的有效长度。
- 返回类型
(List[Tensor], Optional[Tensor])
工厂函数¶
构建自定义 |
|
根据 wav2vec 2.0 [Baevski et al., 2020] 构建“base” |
|
根据 wav2vec 2.0 [Baevski et al., 2020] 构建“large” |
|
根据 wav2vec 2.0 [Baevski et al., 2020] 构建“large lv-60k” |
|
构建拥有 3 亿参数的 XLS-R 模型 [Babu et al., 2021]。 |
|
构建拥有 10 亿参数的 XLS-R 模型 [Babu et al., 2021]。 |
|
构建拥有 20 亿参数的 XLS-R 模型 [Babu et al., 2021]。 |
|
根据 HuBERT [Hsu et al., 2021] 构建“base” |
|
根据 HuBERT [Hsu et al., 2021] 构建“large” |
|
根据 HuBERT [Hsu et al., 2021] 构建“extra large” |
|
构建自定义 WaveLM 模型 [Chen et al., 2022]。 |
|
构建“base” WaveLM 模型 [Chen et al., 2022]。 |
|
构建“large” WaveLM 模型 [Chen et al., 2022]。 |
原型工厂函数¶
已弃用 |
|
已弃用 |
|
已弃用 |
|
已弃用 |
实用函数¶
从 fairseq 的相应模型对象构建 |
|
从 Transformers 的相应模型对象构建 |