快捷方式

HuBERTPretrainModel

class torchaudio.models.HuBERTPretrainModel[source]

用于在 HuBERT [Hsu 等人,2021] 中进行预训练的 HuBERT 模型。

注意

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

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

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

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

  • 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

返回::

Tensor

掩码概率分布序列(以 logit 表示)。形状:(masked_frames, num labels)

Tensor

未掩码概率分布序列(以 logit 表示)。形状:(unmasked_frames, num labels)

Tensor

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

返回类型::

(Tensor, Tensor, Tensor)

工厂函数

hubert_pretrain_model

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

hubert_pretrain_base

HuBERT [Hsu 等人,2021] 构建用于预训练的“基本” HuBERTPretrainModel

hubert_pretrain_large

构建 "大型" HuBERTPretrainModel 来自 HuBERT [Hsu 等人,2021] 用于预训练。

hubert_pretrain_xlarge

构建 "超大型" HuBERTPretrainModel 来自 HuBERT [Hsu 等人,2021] 用于预训练。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得解答

查看资源