torchaudio.models.hubert_pretrain_model¶
- torchaudio.models.hubert_pretrain_model(extractor_mode: str, extractor_conv_layer_config: Optional[List[Tuple[int, int, int]]], extractor_conv_bias: bool, encoder_embed_dim: int, encoder_projection_dropout: float, encoder_pos_conv_kernel: int, encoder_pos_conv_groups: int, encoder_num_layers: int, encoder_num_heads: int, encoder_attention_dropout: float, encoder_ff_interm_features: int, encoder_ff_interm_dropout: float, encoder_dropout: float, encoder_layer_norm_first: bool, encoder_layer_drop: float, mask_prob: float, mask_selection: str, mask_other: float, mask_length: int, no_mask_overlap: bool, mask_min_space: int, mask_channel_prob: float, mask_channel_selection: str, mask_channel_other: float, mask_channel_length: int, no_mask_channel_overlap: bool, mask_channel_min_space: int, skip_masked: bool, skip_nomask: bool, num_classes: int, final_dim: int, feature_grad_mult: Optional[float]) HuBERTPretrainModel[source]¶
- 從頭開始構建自定義的 - HuBERTPretrainModel模型用於訓練- 注意 - 下面的“特徵提取器”對應於原始 - fairseq實現中的 ConvFeatureExtractionModel。這在 wav2vec 2.0 [Baevski et al., 2020] 論文中被稱為“(卷積)特徵編碼器”。- 下面的“編碼器”對應於 TransformerEncoder,這在論文中被稱為“Transformer”。 - 引數:
- extractor_mode (str) – - 特徵提取器的操作模式。有效值包括 - "group_norm"或- "layer_norm"。如果為- "group_norm",則在第一個卷積塊中應用單一歸一化。否則,所有卷積塊都將進行層歸一化。- 此選項對應於 - fairseq中的- extractor_mode。
- extractor_conv_layer_config (list of python:integer tuples or None) – - 特徵提取器中卷積層的配置。卷積配置的列表,即 - [(output_channel, kernel_size, stride), ...]- 如果提供 - None,則使用以下預設值。- [ (512, 10, 5), (512, 3, 2), (512, 3, 2), (512, 3, 2), (512, 3, 2), (512, 2, 2), (512, 2, 2), ] - 此選項對應於 - fairseq中的- conv_feature_layers。
- extractor_conv_bias (bool) – - 是否在每次卷積操作中包含偏置項。 - 此選項對應於 - fairseq中的- conv_bias。
- encoder_embed_dim (int) – - 編碼器中嵌入的維度。 - 此選項對應於 - fairseq中的- encoder_embed_dim。
- encoder_projection_dropout (float) – - 輸入特徵投影到 - encoder_embed_dim後應用的 dropout 機率。- 此選項對應於 - fairseq中的- dropout_input。
- encoder_pos_conv_kernel (int) – - 卷積位置嵌入的核大小。 - 此選項對應於 - fairseq中的- conv_pos。
- encoder_pos_conv_groups (int) – - 卷積位置嵌入的分組數量。 - 此選項對應於 - fairseq中的- conv_pos_groups。
- encoder_num_layers (int) – - Transformer 塊中自注意力層的數量。 - 此選項對應於 - fairseq中的- encoder_layers。
- encoder_num_heads (int) – - 自注意力層中的頭數。 - 此選項對應於 - fairseq中的- encoder_attention_heads。
- encoder_attention_dropout (float) – - 自注意力層中 softmax 後應用的 dropout 機率。 - 此選項對應於 - fairseq中的- attention_dropout。
- encoder_ff_interm_features (int) – - 前饋層中隱藏特徵的維度。 - 此選項對應於 - fairseq中的- encoder_ffn_embed_dim。
- encoder_ff_interm_dropout (float) – - 前饋層中應用的 dropout 機率。 - 此選項對應於 - fairseq中的- activation_dropout。
- encoder_dropout (float) – - 前饋層末尾應用的 dropout 機率。 - 此選項對應於 - fairseq中的- dropout。
- encoder_layer_norm_first (bool) – - 控制 Transformer 層和每個編碼器層中層歸一化的順序。如果為 True,在 Transformer 層中,層歸一化在將特徵饋送到編碼器層之前應用。在編碼器層中,自注意力之前和之後各應用一個層歸一化。如果為 False,在 Transformer 層中,層歸一化在將特徵饋送到編碼器層之後應用。在編碼器層中,自注意力之後、前饋層之前和之後各應用一個層歸一化。 - 此選項對應於 - fairseq中的- layer_norm_first。
- encoder_layer_drop (float) – - 訓練期間丟棄每個編碼器層的機率。 - 此選項對應於 - fairseq中的- layerdrop。
- mask_prob (float) – - 每個 token 被選為要掩蓋的 span 起點的機率。此機率將乘以時間步長數除以掩碼 span 的長度,以大致掩蓋所有元素的此百分比。然而,由於重疊,實際數量會更小(除非 no_overlap 為 True)。 - 此選項對應於 - fairseq中的- mask_prob。
- mask_selection (str) – - 如何選擇掩碼長度。選項:[ - static,- uniform,- normal,- poisson]。- 此選項對應於 - fairseq中的- mask_selection。
- mask_other (float) – - 次要掩碼引數(用於更復雜的分佈)。 - 此選項對應於 - fairseq中的- mask_other。
- mask_length (int) – - 掩碼的長度。 - 此選項對應於 - fairseq中的- mask_length。
- no_mask_overlap (bool) – - 是否允許掩碼重疊。 - 此選項對應於 - fairseq中的- no_mask_overlap。
- mask_min_space (int) – - span 之間的最小間隔(如果未啟用重疊)。 - 此選項對應於 - fairseq中的- mask_min_space。
- mask_channel_prob – - (float): 將特徵替換為 0 的機率。 - 此選項對應於 - fairseq中的- mask_channel_prob。
- mask_channel_selection (str) – - 如何選擇通道掩碼的掩碼長度。選項:[ - static,- uniform,- normal,- poisson]。- 此選項對應於 - fairseq中的- mask_channel_selection。
- mask_channel_other (float) – - 通道掩碼的次要掩碼引數(用於更復雜的分佈)。 - 此選項對應於 - fairseq中的- mask_channel_other。
- mask_channel_length (int) – - 通道掩碼的 span 之間的最小間隔(如果未啟用重疊)。 - 此選項對應於 - fairseq中的- mask_channel_length。
- no_mask_channel_overlap (bool) – - 是否允許通道掩碼重疊。 - 此選項對應於 - fairseq中的- no_mask_channel_overlap。
- mask_channel_min_space (int) – - 通道掩碼的 span 之間的最小間隔(如果未啟用重疊)。 - 此選項對應於 - fairseq中的- mask_channel_min_space。
- skip_masked (bool) – - 如果為 True,跳過計算被掩碼幀上的損失。 - 此選項對應於 - fairseq中的- skip_masked。
- skip_nomask (bool) – - 如果為 True,跳過計算未被掩碼幀上的損失。 - 此選項對應於 - fairseq中的- skip_nomask。
- num_classes (int) – 標籤中的類別數。 
- final_dim (int) – - 將最終表示和目標投影到 - final_dim。- 此選項對應於 - fairseq中的- final_dim。
- feature_grad_mult (float 或 None) – - 用於縮放卷積特徵提取層梯度的因子。此縮放因子不會影響前向傳播。 - 此選項對應於 - fairseq中的- feature_grad_mult。
 
- 返回:
- 生成的模型。 
- 返回型別: