快捷方式

HuBERTPretrainModel

class torchaudio.models.HuBERTPretrainModel[源代码]

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]][源代码]

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

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

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

  • audio_lengths (TensorNone, optional) – 指示批次中每个音频的有效长度。形状:[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 开发者文档

查看文档

教程

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

查看教程

资源

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

查看资源