ETOS TTS, vise à construire un texte à dispection neuronal (TTS) capable de transformer du texte en discours dans des voix qui sont échantillonnées dans la nature. Il s'agit d'une implémentation Pytorch de Tacotron: un modèle de synthèse de texte à dispection entièrement de bout en bout.
sudo apt install libsndfile1Vous pouvez utiliser PIP pour installer d'autres exigences.
pip3 install -r requirements.txt
Vous pouvez utiliser un modèle pré-entraîné sous models/may22 et exécuter le serveur Web TTS:
python server.py -c server_conf.json
Ensuite, allez sur http://127.0.0.1:8000 et profitez-en.
Actuellement, TTS fournit des chargeurs de données pour
Pour exécuter votre propre formation, vous devez définir un fichier config.json (modèle simple ci-dessous) et appeler avec la commande.
train.py --config_path config.json
Si vous aimez utiliser un ensemble spécifique de GPU.
CUDA_VISIBLE_DEVICES="0,1,4" train.py --config_path config.json
Chaque exécution crée un dossier d'expérience avec la date et l'heure correspondant, sous le dossier que vous définissez dans config.json . Et s'il n'y a pas encore de point de contrôle sous ce dossier, il va être supprimé lorsque vous appuyez sur Ctrl + C.
Vous pouvez également profiter de Tensorboard avec quelques bons journaux de formation, si vous pointez --logdir le dossier de l'expérience.
Exemple config.json :
{
"num_mels": 80,
"num_freq": 1025,
"sample_rate": 22050,
"frame_length_ms": 50,
"frame_shift_ms": 12.5,
"preemphasis": 0.97,
"min_level_db": -100,
"ref_level_db": 20,
"embedding_size": 256,
"text_cleaner": "english_cleaners",
"epochs": 200,
"lr": 0.002,
"warmup_steps": 4000,
"batch_size": 32,
"eval_batch_size":32,
"r": 5,
"mk": 0.0, // guidede attention loss weight. if 0 no use
"priority_freq": true, // freq range emphasis
"griffin_lim_iters": 60,
"power": 1.2,
"dataset": "TWEB",
"meta_file_train": "transcript_train.txt",
"meta_file_val": "transcript_val.txt",
"data_path": "/data/shared/BibleSpeech/",
"min_seq_len": 0,
"num_loader_workers": 8,
"checkpoint": true, // if save checkpoint per save_step
"save_step": 200,
"output_path": "/path/to/my_experiment",
}