StyleTTS2 – une technologie open source de conversion texte-parole de qualité ElevenLabs
(github.com/yl4579)Modèle texte-vers-parole de niveau humain, StyleTTS 2
- StyleTTS 2 atteint une synthèse texte-vers-parole (TTS) de niveau humain grâce à un apprentissage antagoniste utilisant la diffusion de style et de grands modèles de langage vocal.
- Le modèle réalise une diffusion latente efficace en modélisant le style comme une variable aléatoire latente via un modèle de diffusion afin de générer, sans voix de référence, le style le mieux adapté au texte.
- Il améliore le naturel de la parole en utilisant un grand modèle de langage vocal préentraîné comme discriminateur, et en menant l’apprentissage de bout en bout grâce à une nouvelle modélisation différentiable de la durée.
Prérequis
- Python version 3.7 ou supérieure est requis.
- Cloner le dépôt StyleTTS 2 et installer les dépendances Python nécessaires.
- Télécharger le jeu de données LJSpeech, le suréchantillonner à 24 kHz, puis le décompresser dans le dossier de données.
- En cas d’utilisation du jeu de données LibriTTS, il faut fusionner
train-clean-360ettrain-clean-100, puis renommer le dossier entrain-clean-460.
Entraînement
- L’entraînement de la première étape puis de la seconde peut être exécuté séquentiellement, et le modèle est enregistré dans un format spécifique.
- Le format de la liste de données doit être
filename.wav|transcription|speaker, et pour un modèle multi-locuteurs, un échantillonnage audio de référence est nécessaire pour l’entraînement du modèle de diffusion de style.
Paramètres importants
- Le fichier
config.ymlcontient des paramètres importants, notamment le chemin du texte OOD (out-of-distribution) pour l’apprentissage antagoniste SLM, les longueurs minimale et maximale pour l’entraînement, l’activation ou non de l’entraînement d’un modèle multi-locuteurs, ainsi que le pourcentage de batch pour éviter les problèmes OOM (out-of-memory).
Modules préentraînés
- Le dossier ASR contient un aligneur de texte préentraîné, le dossier JDC contient un extracteur de hauteur préentraîné, et le dossier PLBERT contient un modèle PL-BERT préentraîné.
Problèmes courants
- Comme solutions aux pertes qui deviennent NaN et aux problèmes de mémoire insuffisante, il est proposé d’ajuster la taille du batch ou de réduire la valeur de
max_len.
Fine-tuning
- Un script de fine-tuning utilisant DP est fourni en modifiant le script
train_second.py, tandis que DDP ne fonctionne pas actuellement.
Inférence
- Se référer aux fichiers notebook pour l’inférence sur les jeux de données LJSpeech et LibriTTS, et pour LibriTTS un fichier audio de référence est nécessaire.
- Il est possible de télécharger un modèle StyleTTS 2 préentraîné, et avant utilisation il faut informer les auditeurs que les échantillons vocaux synthétisés ont été générés par le modèle StyleTTS 2, ou utiliser une voix pour laquelle une autorisation d’usage a été obtenue.
L’avis de GN⁺
L’élément le plus important de cet article est que StyleTTS 2 a atteint une synthèse TTS de niveau humain, ce qui montre le potentiel de l’apprentissage antagoniste utilisant la diffusion de style et de grands modèles de langage vocal. Cette technologie peut considérablement améliorer le naturel de la synthèse vocale et, en offrant la capacité de générer divers styles sans voix de référence, pourrait avoir un impact majeur sur l’évolution des interfaces vocales et des assistants numériques.
1 commentaires
Avis sur Hacker News
Expérience de développement d’un chatbot vocal 100 % local avec StyleTTS2
Avis personnel sur la qualité vocale de StyleTTS2
Retour d’expérience sur l’installation et l’utilisation de StyleTTS2
Expérience sur l’installation et le fonctionnement de StyleTTS2
Comparaison entre les exemples vocaux de StyleTTS2 et de vraies voix
Évaluation de la qualité vocale de StyleTTS2
Avis sur le titre et le contenu de StyleTTS2
Question sur le temps d’inférence de StyleTTS2
Question sur la licence de StyleTTS2
Perspectives de marketplace pour les modèles de text-to-speech