torchaudio.models.wav2vec2_model¶
- torchaudio.models.wav2vec2_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, aux_num_out: Optional[int]) Wav2Vec2Model[source]¶
構建自定義
Wav2Vec2Model。注意
下面的“特徵提取器”對應於原始
fairseq實現中的 ConvFeatureExtractionModel。在 wav2vec 2.0 [Baevski 等人, 2020] 論文中,這被稱為“(卷積)特徵編碼器”。下面的“編碼器”對應於 TransformerEncoder,在論文中被稱為“Transformer”。
- 引數:
extractor_mode (str) –
特徵提取器的操作模式。有效值為
"group_norm"或"layer_norm"。如果為"group_norm",則在第一個卷積塊中應用單個歸一化。否則,所有卷積塊都將應用層歸一化。此選項對應於
fairseq中的extractor_mode。extractor_conv_layer_config (Python:整數元組列表 或 None) –
特徵提取器中卷積層的配置。卷積配置列表,即
[(輸出通道數, 核大小, 步幅), ...]如果提供
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。aux_num_out (int 或 None) – 提供此引數時,在編碼器頂部附加一個額外的線性層,可用於微調。
- 返回值:
結果模型。
- 返回型別: