快速連結

HuBERTPretrainModel

class torchaudio.models.HuBERTPretrainModel[原始碼]

用於 HuBERT [Hsu et al., 2021] 預訓練中的 HuBERT 模型。

注意

若要建置模型,請使用其中一個工廠函數。

參數:
  • wav2vec2 (Wav2Vec2Model) – 產生 Transformer 輸出的 Wav2Vec2 編碼器。

  • mask_generator (torch.nn.Module) – Mask 生成器,用於在訓練期間產生用於遮罩預測的遮罩。

  • logit_generator (torch.nn.Module) – Logit 生成器,用於預測遮罩和未遮罩輸入的 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, 可選) – 指示批次中每個音訊的有效長度。形狀:[batch, ]。當 waveforms 包含不同持續時間的音訊時,透過提供 lengths 引數,模型將計算對應的有效輸出長度,並在 Transformer 注意力層中套用適當的遮罩。若為 None,則假設 waveforms 中的所有音訊都具有有效長度。預設值:None

傳回:

Tensor

遮罩序列的機率分佈(以 logits 表示)。形狀:(masked_frames, num labels)

Tensor

未遮罩序列的機率分佈(以 logits 表示)。形狀:(unmasked_frames, num labels)

Tensor

用於額外懲罰損失的特徵平均值。形狀:(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 的完整開發者文件

查看文件

教學

取得適合初學者和進階開發者的深入教學

查看教學

資源

尋找開發資源並獲得問題解答

查看資源