Reconnaissance vocale de bout en bout à l'aide de RNN-Transducer dans Tensorflow 2.0
Ce modèle de reconnaissance vocale est basé sur le document de recherche Streaming End-to-end Speech Recognition For Mobile Devices de Google et est implémenté dans Python 3 à l'aide de Tensorflow 2.0.
Pour configurer votre environnement, exécutez la commande suivante :
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
Vous pouvez trouver et télécharger l’ensemble de données Common Voice ici
Avant de pouvoir entraîner un modèle sur l'ensemble de données Common Voice, vous devez d'abord convertir tous les types de fichiers audio mp3 en wav. Faites-le en exécutant la commande suivante :
REMARQUE : assurez-vous que
ffmpeg
est installé sur votre ordinateur, car il l'utilise pour convertir les mp3 en wav.
./scripts/common_voice_convert.sh <data_dir> <# of threads>
python scripts/remove_missing_samples.py
--data_dir <data_dir>
--replace_old
Après avoir converti tous les mp3 en wav dont vous avez besoin pour prétraiter l'ensemble de données, vous pouvez le faire en exécutant la commande suivante :
python preprocess_common_voice.py
--data_dir <data_dir>
--output_dir <preprocessed_dir>
Pour entraîner un modèle simple, exécutez la commande suivante :
python run_rnnt.py
--mode train
--data_dir <path to data directory>