في ورقتنا الحديثة ، نقترح توهج tts: تدفق توليدي للنص إلى الكلام عن طريق البحث المحاذاة الرتابة.
في الآونة الأخيرة ، تم اقتراح نماذج من النص إلى كلام (TTS) مثل Fastspeech و Paranet لإنشاء طيف الميل من النص بالتوازي. على الرغم من الميزة ، لا يمكن تدريب نماذج TTS المتوازية دون إرشادات من نماذج TTS التلقائية كمحاذاة خارجية. في هذا العمل ، نقترح توهج TTS ، وهو نموذج توليدي يعتمد على التدفق لـ TTS المتوازي الذي لا يتطلب أي محاذاة خارجي. من خلال الجمع بين خصائص التدفقات والبرمجة الديناميكية ، يبحث النموذج المقترح عن المحاذاة الرتيبة الأكثر احتمالًا بين النص والتمثيل الكامن للكلام من تلقاء نفسه. نوضح أن فرض المحاذاة الرتيبة الصلبة يمكّن TTS القوية ، والتي تعتمد على الكلمات الطويلة ، وتوظيف التدفقات التوليدية يتيح توليف الكلام السريع والمتنوع والسيطرة. يحصل Glow-TTS على تسريع ترتيب الأسود على نموذج الانحدار التلقائي ، Tacotron 2 ، في التوليف مع جودة الكلام المماثلة. نوضح كذلك أنه يمكن توسيع نموذجنا بسهولة إلى إعداد متعدد الكلام.
قم بزيارة العرض التوضيحي الخاص بنا لعينات الصوت.
نحن نقدم أيضا النموذج المسبق.
| توهج tts في التدريب | توهج tts في الاستدلال |
|---|---|
![]() | ![]() |
لم يتم تضمين هذه النتيجة في الورقة. في الآونة الأخيرة ، وجدنا أن تعديلين يساعدان على تحسين جودة التوليف من tts توهج. 1) الانتقال إلى Vocoder ، HIFI-GAN لتقليل الضوضاء ، 2) وضع رمز فارغ بين أي رموز إدخال لتحسين النطق. على وجه التحديد ، استخدمنا Vocoder المضبوط مع Tacotron 2 والذي يتم توفيره كنموذج مسبق في REPO HIFI. إذا كنت مهتمًا ، فيرجى الاستماع إلى العينات في العرض التوضيحي الخاص بنا.
لإضافة رمز فارغ ، نقدم ملف تكوين ونموذج مسبق. نحن نقدم أيضًا مثالًا للاستدلال interference_hifigan.ipynb. قد تحتاج إلى تهيئة الجهاز الفرعي HIFI: git submodule init; git submodule update
للتدريب المختلط الدقة ، نستخدم Apex ؛ الالتزام: 37CDAF4
أ) قم بتنزيل واستخراج مجموعة بيانات الكلام LJ ، ثم إعادة تسمية أو إنشاء رابط إلى مجلد مجموعة البيانات: ln -s /path/to/LJSpeech-1.1/wavs DUMMY
ب) تهيئة الجهاز الفرعي waveglow: git submodule init; git submodule update
لا تنسَ تنزيل نموذج WaveGlow المسبق ووضعه في مجلد WaveGlow.
ج) بناء رمز بحث محاذاة رتابة (Cython): cd monotonic_align; python setup.py build_ext --inplace
sh train_ddi.sh configs/base.json baseانظر الاستدلال
يتأثر تنفيذنا بشكل كبير بإعادة الإعادة التالية: