🚀 wav2vec 2.0 with CTC trained on CommonVoice English (No LM)
このリポジトリは、SpeechBrain内でCommonVoice(英語)で事前学習されたエンドツーエンドシステムから自動音声認識を実行するために必要なすべてのツールを提供します。より良い体験を得るために、SpeechBrainについてもっと学ぶことをおすすめします。
このモデルのパフォーマンスは以下の通りです。
リリース |
テストWER |
GPU |
03 - 06 - 21 |
15.69 |
2xV100 32GB |
🚀 クイックスタート
このASRシステムは、2つの異なるが関連するブロックで構成されています。
- トークナイザー(ユニグラム):単語をサブワードユニットに変換し、CommonVoice(EN)のトレーニングトランスクリプション(train.tsv)で学習されます。
- 音響モデル(wav2vec2.0 + CTC):事前学習されたwav2vec 2.0モデル([wav2vec2 - lv60 - large](https://huggingface.co/facebook/wav2vec2 - large - lv60))が2つのDNNレイヤーと組み合わされ、CommonVoice Enでファインチューニングされます。得られた最終的な音響表現は、CTCデコーダーに渡されます。
このシステムは、16kHzでサンプリングされた録音(単チャンネル)で学習されています。コードは、transcribe_fileを呼び出す際に必要に応じて自動的にオーディオを正規化します(すなわち、リサンプリング + モノチャンネル選択)。
✨ 主な機能
- トークナイザー(ユニグラム)による単語からサブワードユニットへの変換。
- wav2vec2.0 + CTCによる音響モデルの構築。
- オーディオの自動正規化(リサンプリング + モノチャンネル選択)。
📦 インストール
まず、以下のコマンドでtranformersとSpeechBrainをインストールしてください。
pip install speechbrain transformers
SpeechBrainのチュートリアルを読み、もっと学ぶことをおすすめします。
💻 使用例
基本的な使用法
from speechbrain.inference.ASR import EncoderDecoderASR
asr_model = EncoderDecoderASR.from_hparams(source="speechbrain/asr - wav2vec2 - commonvoice - en", savedir="pretrained_models/asr - wav2vec2 - commonvoice - en")
asr_model.transcribe_file("speechbrain/asr - wav2vec2 - commonvoice - en/example.wav")
高度な使用法
GPUで推論を行うには、from_hparams
メソッドを呼び出す際にrun_opts={"device":"cuda"}
を追加してください。
バッチでの並列推論については、このColabノートブックを参照してください。
🔧 技術詳細
このシステムは、CommonVoice(英語)のトレーニングデータを使用して学習されています。トークナイザーはユニグラムモデルで、音響モデルはwav2vec2.0 + CTCで構成されています。事前学習されたwav2vec 2.0モデルは、2つのDNNレイヤーと組み合わされ、CommonVoice Enでファインチューニングされます。最終的な音響表現は、CTCデコーダーに渡されます。
📄 ライセンス
このプロジェクトは、Apache 2.0ライセンスの下で公開されています。
モデルのトレーニング
モデルはSpeechBrainで学習されています。最初から学習するには、以下の手順に従ってください。
- SpeechBrainをクローンします。
git clone https://github.com/speechbrain/speechbrain/
- インストールします。
cd speechbrain
pip install -r requirements.txt
pip install -e .
- 学習を実行します。
cd recipes/CommonVoice/ASR/seq2seq
python train.py hparams/train_en_with_wav2vec.yaml --data_folder=your_data_folder
学習結果(モデル、ログなど)はこちらで確認できます。
制限事項
SpeechBrainチームは、このモデルを他のデータセットで使用した場合のパフォーマンスについて一切保証しません。
🔖 引用
このツールを研究やビジネスで使用する場合は、以下のように引用してください。
@misc{speechbrain,
title={{SpeechBrain}: A General-Purpose Speech Toolkit},
author={Mirco Ravanelli and Titouan Parcollet and Peter Plantinga and Aku Rouhe and Samuele Cornell and Loren Lugosch and Cem Subakan and Nauman Dawalatabad and Abdelwahab Heba and Jianyuan Zhong and Ju-Chieh Chou and Sung-Lin Yeh and Szu-Wei Fu and Chien-Feng Liao and Elena Rastorgueva and François Grondin and William Aris and Hwidong Na and Yan Gao and Renato De Mori and Yoshua Bengio},
year={2021},
eprint={2106.04624},
archivePrefix={arXiv},
primaryClass={eess.AS},
note={arXiv:2106.04624}
}
🌐 関連リンク
- ウェブサイト: https://speechbrain.github.io/
- コード: https://github.com/speechbrain/speechbrain/
- HuggingFace: https://huggingface.co/speechbrain/