快捷方式

HuBERTPretrainModel

class torchaudio.models.HuBERTPretrainModel[source]

用于预训练的 HuBERT 模型,出自 HuBERT [Hsu et al., 2021]

注意

要构建模型,请使用其中一个工厂函数。

参数
  • wav2vec2 (Wav2Vec2Model) – 生成 transformer 输出的 Wav2Vec2 编码器。

  • mask_generator (torch.nn.Module) – 在训练期间生成掩码预测掩码的掩码生成器。

  • logit_generator (torch.nn.Module) – 预测掩码和非掩码输入的 logits 的 logits 生成器。

  • feature_grad_mult (floatNone) – 用于缩放卷积特征提取层梯度的因子。如果为 None,则不影响特征提取层的梯度。缩放因子不会影响前向传播。

方法

forward

HuBERTPretrainModel.forward(waveforms: Tensor, labels: Tensor, audio_lengths: Optional[Tensor] = None) Tuple[Tensor, Optional[Tensor]][source]

计算标签上的概率分布序列。

参数
  • waveforms (Tensor) – 形状为 [batch, frames] 的音频张量。

  • labels (Tensor) – 预训练标签。形状为 [batch, frames] 的张量。

  • audio_lengths (TensorNone, 可选) – 指示批次中每个音频的有效长度。形状:[batch, ]。当 waveforms 包含不同时长的音频时,通过提供 lengths 参数,模型将计算相应的有效输出长度并在 transformer 注意力层中应用适当的掩码。如果为 None,则假定 waveforms 中的所有音频都具有有效长度。默认值:None

返回

张量

掩码序列的概率分布(以 logit 为单位)。形状:(masked_frames, num labels)

张量

非掩码序列的概率分布(以 logit 为单位)。形状:(unmasked_frames, num labels)

张量

用于附加惩罚损失的特征均值。形状:(1,)

返回类型

(Tensor, Tensor, Tensor)

工厂函数

hubert_pretrain_model

从头开始构建自定义 HuBERTPretrainModel 用于训练

hubert_pretrain_base

构建 HuBERT [Hsu et al., 2021] 的 "base" HuBERTPretrainModel 用于预训练。

hubert_pretrain_large

构建 HuBERT [Hsu et al., 2021] 的 "large" HuBERTPretrainModel 用于预训练。

hubert_pretrain_xlarge

构建 HuBERT [Hsu et al., 2021] 的 "extra large" HuBERTPretrainModel 用于预训练。

文档

访问全面的 PyTorch 开发者文档

查看文档

教程

为初学者和高级开发者提供深入的教程

查看教程

资源

查找开发资源并让您的问题得到解答

查看资源