L'objectif du projet est de reproduire l'architecture et les expérimentations misent en place dans l'article wav2vec 2.0: A Framework for Self-Supervised Learning of Speech Representations.
- Utilisation de la dataset Librispeech
- Architecture adapaté à nos contraintes
- Boucle de pré-entrainement et fine-tuning du modèle
- Evaluation des perfomances : WER
Les librairies nécessaires se trouve dans le fichier requirement.txt.
pip install -r requirements.txt- Lancer les commandes suivantes :
cd wave2vec_pretrain
python train_wav2vec.py- Lancer les commandes suivantes :
cd wave2vec_fine_tuning
python run_finetuning.py --pretrained_path /path/to/bestmodellast.pt- Si vous souhaitez changer les paramètres du fine tuning (les valeurs ci-dessous sont celles par défaut):
--batch_size 16 \
--learning_rate 3e-5 \
--num_steps 50000 \
--classifier_steps 10000 \
--log_dir finetuning_runs \
--checkpoint_dir finetuning_checkpoints- Pour lancer l'entrainement du décodeur
cd wave2vec_eval
python script_name.py --text_file path_to_your_text_file --output_path path_to_save_model --batch_size 64 --num_epochs 10 --learning_rate 0.0003- Pour lancer l'évaluation du modèle
cd wave2vec_eval
python script_name.py --model_path path_to_your_model --lm_path path_to_your_language_model --vocab_path path_to_vocabulary_file --beam_size 100 --lm_weight 0.3 --word_score -1.0 --output_file evaluation_results.txt --data_dir /path/to/librispeech/data --cache_dir /path/to/cache- Lancer la commande suivante
tensorboard --logdir=./logs/fit --bind_all