يهدف ETOS TTS إلى بناء نص عصبي إلى كلام (TTS) قادر على تحويل النص إلى الكلام في أصوات يتم أخذ عينات منها في البرية. إنه تطبيق Pytorch لـ Tacotron: نموذج تخليق نص إلى خط الكلام من طرف إلى طرف.
sudo apt install libsndfile1يمكنك استخدام PIP لتثبيت المتطلبات الأخرى.
pip3 install -r requirements.txt
يمكنك استخدام النموذج المسبق ضمن models/may22 وتشغيل خادم الويب TTS:
python server.py -c server_conf.json
ثم انتقل إلى http://127.0.0.1:8000 واستمتع.
يوفر TTS حاليًا لوادر البيانات
لتشغيل التدريب الخاص بك ، تحتاج إلى تحديد ملف config.json (قالب بسيط أدناه) والاتصال مع الأمر.
train.py --config_path config.json
إذا كنت ترغب في استخدام مجموعة محددة من وحدات معالجة الرسومات.
CUDA_VISIBLE_DEVICES="0,1,4" train.py --config_path config.json
يقوم كل تشغيل بإنشاء مجلد تجربة مع تاريخ ووقت Corresponfing ، تحت المجلد الذي قمت بتعيينه في config.json . وإذا لم تكن هناك نقطة تفتيش بعد تحت هذا المجلد ، فسيتم إزالتها عند الضغط على Ctrl+C.
يمكنك أيضًا الاستمتاع بـ Tensorboard مع اثنين من سجلات التدريب الجيدة ، إذا قمت بإشارة --logdir مجلد التجربة.
مثال 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",
}