HuBERTPretrainModel¶
- class torchaudio.models.HuBERTPretrainModel[source]¶
用於 HuBERT [Hsu et al., 2021] 預訓練的 HuBERT 模型。
注意
要構建模型,請使用其中一個工廠函式。
另請參閱
- 引數:
wav2vec2 (Wav2Vec2Model) – 生成 transformer 輸出的 Wav2Vec2 編碼器。
mask_generator (torch.nn.Module) – 在訓練期間生成用於掩碼預測的掩碼生成器。
logit_generator (torch.nn.Module) – 預測掩碼和非掩碼輸入的 logit 生成器。
feature_grad_mult (float 或 None) – 用於縮放卷積特徵提取層梯度的因子。如果為
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 (Tensor 或 None, optional) – 指示批次中每個音訊的有效長度。形狀:[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 [Hsu et al., 2021] 的 "base" |
|
構建來自 HuBERT [Hsu et al., 2021] 的 "large" |
|
構建來自 HuBERT [Hsu et al., 2021] 的 "extra large" |