🚀 Wav2Vec2 XLS-R for Finnish ASR
この音響モデルは、フィンランド語の自動音声認識(ASR)用に facebook/wav2vec2-xls-r-1b をファインチューニングしたバージョンです。このモデルは、275.6時間のフィンランド語の文字起こし音声データを使ってファインチューニングされています。Wav2Vec2 XLS-Rは、この論文 で紹介され、このページ で最初に公開されました。
注意: デコード段階でKenLM言語モデルを使用し、より良い文字起こし結果を生み出すバージョンがあります: Finnish-NLP/wav2vec2-xlsr-1b-finnish-lm-v2
✨ 主な機能
モデルの説明
Wav2Vec2 XLS-Rは、Facebook AIによる大規模な多言語音声事前学習モデルです。VoxPopuli、MLS、CommonVoice、BABEL、VoxLingua107を含む436,000時間のラベルなし音声データで事前学習されています。このモデルは、wav2vec 2.0の目的関数を使用し、128の言語で訓練されています。
事前学習モデルについての詳細は、このブログ と この論文 を参照してください。
このモデルは、フィンランド語のASR用に事前学習モデル(10億パラメータのバリアント)をファインチューニングしたものです。
🚀 クイックスタート
想定される用途と制限
このモデルは、フィンランド語のASR(音声からテキストへの変換)タスクに使用できます。
使い方
このモデルの使用方法の詳細な例については、このリポジトリの run-finnish-asr-models.ipynb ノートブックを参照してください。
制限とバイアス
このモデルは、最大長が20秒の音声サンプルでファインチューニングされているため、おそらく同程度の短い音声に最適に機能します。ただし、もっと長い音声でも試すことができます。非常に長い音声ファイルでメモリ不足エラーが発生した場合は、このブログ記事 で紹介されている音声チャンキング方法を使用できます。
ファインチューニングに使用されたデータの大部分はフィンランド議会のデータセットからのものであるため、このモデルは、方言を含む一般的な日常会話のフィンランド語など、非常に異なるドメインにはうまく汎化できない可能性があります。さらに、データセットの音声は成人男性が主体であるため、このモデルは、例えば子供や女性の音声に対してはうまく機能しない可能性があります。
📦 インストール
訓練データ
このモデルは、以下のデータセットからの275.6時間のフィンランド語の文字起こし音声データでファインチューニングされています。
データセットは、最大長が20秒の音声サンプルを含むようにフィルタリングされています。
訓練手順
このモデルは、Hugging Faceが主催する Robust Speech Challenge Event の間に訓練されました。訓練は、OVHcloudが提供するTesla V100 GPU上で行われました。
訓練スクリプトはHugging Faceによって提供され、ここ で入手できます。私たちは、カスタムデータセットのデータ読み込み部分のみを変更しました。
訓練ハイパーパラメータ
訓練中に使用されたハイパーパラメータは以下の通りです。
- learning_rate: 5e-05
- train_batch_size: 32
- eval_batch_size: 8
- seed: 42
- optimizer: 8-bit Adam (betas=(0.9,0.999)、epsilon=1e-08)
- lr_scheduler_type: linear
- lr_scheduler_warmup_steps: 500
- num_epochs: 10
- mixed_precision_training: Native AMP
事前学習された facebook/wav2vec2-xls-r-1b
モデルは、以下のハイパーパラメータで初期化されています。
- attention_dropout: 0.094
- hidden_dropout: 0.047
- feat_proj_dropout: 0.04
- mask_time_prob: 0.082
- layerdrop: 0.041
- activation_dropout: 0.055
- ctc_loss_reduction: "mean"
訓練結果
訓練損失 |
エポック |
ステップ |
検証損失 |
単語誤り率 (WER) |
0.7778 |
0.17 |
500 |
0.2851 |
0.3572 |
0.5506 |
0.34 |
1000 |
0.1595 |
0.2130 |
0.6569 |
0.5 |
1500 |
0.1458 |
0.2046 |
0.5997 |
0.67 |
2000 |
0.1374 |
0.1975 |
0.542 |
0.84 |
2500 |
0.1390 |
0.1956 |
0.4815 |
1.01 |
3000 |
0.1266 |
0.1813 |
0.6982 |
1.17 |
3500 |
0.1441 |
0.1965 |
0.4522 |
1.34 |
4000 |
0.1232 |
0.1822 |
0.4655 |
1.51 |
4500 |
0.1209 |
0.1702 |
0.4069 |
1.68 |
5000 |
0.1149 |
0.1688 |
0.4226 |
1.84 |
5500 |
0.1121 |
0.1560 |
0.3993 |
2.01 |
6000 |
0.1091 |
0.1557 |
0.406 |
2.18 |
6500 |
0.1115 |
0.1553 |
0.4098 |
2.35 |
7000 |
0.1144 |
0.1560 |
0.3995 |
2.51 |
7500 |
0.1028 |
0.1476 |
0.4101 |
2.68 |
8000 |
0.1129 |
0.1511 |
0.3636 |
2.85 |
8500 |
0.1025 |
0.1517 |
0.3534 |
3.02 |
9000 |
0.1068 |
0.1480 |
0.3836 |
3.18 |
9500 |
0.1072 |
0.1459 |
0.3531 |
3.35 |
10000 |
0.0928 |
0.1367 |
0.3649 |
3.52 |
10500 |
0.1042 |
0.1426 |
0.3645 |
3.69 |
11000 |
0.0979 |
0.1433 |
0.3685 |
3.85 |
11500 |
0.0947 |
0.1346 |
0.3325 |
4.02 |
12000 |
0.0991 |
0.1352 |
0.3497 |
4.19 |
12500 |
0.0919 |
0.1358 |
0.3303 |
4.36 |
13000 |
0.0888 |
0.1272 |
0.3323 |
4.52 |
13500 |
0.0888 |
0.1277 |
0.3452 |
4.69 |
14000 |
0.0894 |
0.1279 |
0.337 |
4.86 |
14500 |
0.0917 |
0.1289 |
0.3114 |
5.03 |
15000 |
0.0942 |
0.1313 |
0.3099 |
5.19 |
15500 |
0.0902 |
0.1239 |
0.3079 |
5.36 |
16000 |
0.0871 |
0.1256 |
0.3293 |
5.53 |
16500 |
0.0861 |
0.1263 |
0.3123 |
5.7 |
17000 |
0.0876 |
0.1203 |
0.3093 |
5.86 |
17500 |
0.0848 |
0.1226 |
0.2903 |
6.03 |
18000 |
0.0914 |
0.1221 |
0.297 |
6.2 |
18500 |
0.0841 |
0.1185 |
0.2797 |
6.37 |
19000 |
0.0858 |
0.1165 |
0.2878 |
6.53 |
19500 |
0.0874 |
0.1161 |
0.2974 |
6.7 |
20000 |
0.0835 |
0.1173 |
0.3051 |
6.87 |
20500 |
0.0835 |
0.1178 |
0.2941 |
7.04 |
21000 |
0.0852 |
0.1155 |
0.258 |
7.21 |
21500 |
0.0832 |
0.1132 |
0.2778 |
7.37 |
22000 |
0.0829 |
0.1110 |
0.2751 |
7.54 |
22500 |
0.0822 |
0.1069 |
0.2887 |
7.71 |
23000 |
0.0819 |
0.1103 |
0.2509 |
7.88 |
23500 |
0.0787 |
0.1055 |
0.2501 |
8.04 |
24000 |
0.0807 |
0.1076 |
0.2399 |
8.21 |
24500 |
0.0784 |
0.1052 |
0.2539 |
8.38 |
25000 |
0.0772 |
0.1075 |
0.248 |
8.55 |
25500 |
0.0772 |
0.1055 |
0.2689 |
8.71 |
26000 |
0.0763 |
0.1027 |
0.2855 |
8.88 |
26500 |
0.0756 |
0.1035 |
0.2421 |
9.05 |
27000 |
0.0771 |
0.0998 |
0.2497 |
9.22 |
27500 |
0.0756 |
0.0971 |
0.2367 |
9.38 |
28000 |
0.0741 |
0.0974 |
0.2473 |
9.55 |
28500 |
0.0739 |
0.0982 |
0.2396 |
9.72 |
29000 |
0.0756 |
0.0991 |
0.2602 |
9.89 |
29500 |
0.0737 |
0.0975 |
フレームワークのバージョン
- Transformers 4.17.0.dev0
- Pytorch 1.10.2+cu102
- Datasets 1.18.3
- Tokenizers 0.11.0
📚 ドキュメント
評価結果
評価は、Common Voice 7.0 Finnish test split を使用して行われました。
このモデルを評価するには、このリポジトリの eval.py
スクリプトを実行します。
python3 eval.py --model_id aapot/wav2vec2-xlsr-1b-finnish-v2 --dataset mozilla-foundation/common_voice_7_0 --config fi --split test
このモデル(表の最初の行)は、他のモデルと比較して、以下のWER(単語誤り率)とCER(文字誤り率)の結果を達成しています。
|
WER (言語モデルあり) |
WER (言語モデルなし) |
CER (言語モデルあり) |
CER (言語モデルなし) |
aapot/wav2vec2-xlsr-1b-finnish-lm-v2 |
4.09 |
9.73 |
0.88 |
1.65 |
aapot/wav2vec2-xlsr-1b-finnish-lm |
5.65 |
13.11 |
1.20 |
2.23 |
aapot/wav2vec2-xlsr-300m-finnish-lm |
8.16 |
17.92 |
1.97 |
3.36 |
チームメンバー
詳細については、自由にお問い合わせください 🤗
📄 ライセンス
このモデルは、Apache-2.0ライセンスの下で提供されています。