rnnt speech recognition
1.0.0
Tensorflow 2.0 の RNN-Transducer を使用したエンドツーエンドの音声認識
この音声認識モデルは、Google のモバイル デバイス向けストリーミング エンドツーエンド音声認識の研究論文に基づいており、Tensorflow 2.0 を使用して Python 3 で実装されています。
環境をセットアップするには、次のコマンドを実行します。
git clone --recurse https://github.com/noahchalifour/rnnt-speech-recognition.git
cd rnnt-speech-recognition
pip install tensorflow==2.2.0 # or tensorflow-gpu==2.2.0 for GPU support
pip install -r requirements.txt
./scripts/build_rnnt.sh # to setup the rnnt loss
ここで Common Voice データセットを見つけてダウンロードできます。
Common Voice データセットでモデルをトレーニングする前に、まずすべてのオーディオ mp3 ファイルタイプを wav に変換する必要があります。これを行うには、次のコマンドを実行します。
注: mp3 を wav に変換するために ffmpeg が使用されるため、コンピューターに
ffmpeg
がインストールされていることを確認してください。
./scripts/common_voice_convert.sh <data_dir> <# of threads>
python scripts/remove_missing_samples.py
--data_dir <data_dir>
--replace_old
すべての mp3 を wav に変換した後、データセットを前処理する必要があります。これを行うには、次のコマンドを実行します。
python preprocess_common_voice.py
--data_dir <data_dir>
--output_dir <preprocessed_dir>
単純なモデルをトレーニングするには、次のコマンドを実行します。
python run_rnnt.py
--mode train
--data_dir <path to data directory>