Reconhecimento de fala ponta a ponta usando RNN-Transducer no Tensorflow 2.0
Este modelo de reconhecimento de fala é baseado no artigo de pesquisa Streaming End-to-end Speech Recognition For Mobile Devices do Google e é implementado em Python 3 usando Tensorflow 2.0
Para configurar seu ambiente, execute o seguinte comando:
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
Você pode encontrar e baixar o conjunto de dados Common Voice aqui
Antes de poder treinar um modelo no conjunto de dados Common Voice, você deve primeiro converter todos os tipos de arquivos de áudio mp3 em wavs. Faça isso executando o seguinte comando:
NOTA: Certifique-se de ter
ffmpeg
instalado no seu computador, pois ele o usa para converter mp3 em wav
./scripts/common_voice_convert.sh <data_dir> <# of threads>
python scripts/remove_missing_samples.py
--data_dir <data_dir>
--replace_old
Depois de converter todos os mp3s em wavs, você precisa pré-processar o conjunto de dados, você pode fazer isso executando o seguinte comando:
python preprocess_common_voice.py
--data_dir <data_dir>
--output_dir <preprocessed_dir>
Para treinar um modelo simples, execute o seguinte comando:
python run_rnnt.py
--mode train
--data_dir <path to data directory>