Intelligence Artificielle
OpenVoice : clonage vocal instantané polyvalent

Dans la synthèse texte-parole (TTS), le clonage vocal instantané (IVC) permet au modèle TTS de cloner la voix de n'importe quel locuteur de référence à l'aide d'un court échantillon audio, sans nécessiter de formation supplémentaire pour le locuteur de référence. Cette technique est également connue sous le nom de synthèse texte-parole Zero-Shot. L'approche de clonage vocal instantané permet une personnalisation flexible de la voix générée et démontre une valeur significative dans un large éventail de situations réelles, notamment les chatbots personnalisés, la création de contenu et les interactions entre les humains et les grands modèles linguistiques (LLM).
Bien que les cadres actuels de clonage vocal fassent bien leur travail, ils sont confrontés à quelques défis sur le terrain, notamment Contrôle flexible du style vocal c'est-à -dire que les modèles n'ont pas la capacité de manipuler les styles de voix avec flexibilité après le clonage de la voix. Un autre obstacle majeur rencontré par les frameworks de clonage instantané actuels est Clonage vocal multilingue Zero-Shot c'est-à -dire qu'à des fins de formation, les modèles actuels nécessitent l'accès à un vaste ensemble de données multilingues ou MSML pour locuteurs massifs, quelle que soit la langue.
Pour résoudre ces problèmes et contribuer à l'amélioration des modèles de clonage vocal instantané, les développeurs ont travaillé sur OpenVoice, un cadre de clonage vocal instantané polyvalent qui reproduit la voix de n'importe quel utilisateur et génère la parole dans plusieurs langues à l'aide d'un court clip audio du locuteur de référence. . OpenVoice démontre que les modèles de clonage vocal instantané peuvent reproduire la couleur tonale du locuteur de référence et obtenir un contrôle granulaire sur les styles de voix, notamment l'accent, le rythme, l'intonation, les pauses et même les émotions. Ce qui est plus impressionnant, c'est que le framework OpenVoice démontre également des capacités remarquables dans la réalisation d'un clonage vocal multilingue zéro pour des langues externes à l'ensemble de données MSML, permettant à OpenVoice de cloner des voix dans de nouvelles langues sans formation préalable approfondie pour cette langue. OpenVoice parvient à fournir des résultats de clonage vocal instantanés supérieurs tout en étant viable sur le plan informatique avec des coûts d'exploitation jusqu'à 10 fois inférieurs à ceux des API actuellement disponibles avec des performances inférieures.
Dans cet article, nous parlerons en profondeur du framework OpenVoice et découvrirons son architecture qui lui permet d'offrir des performances supérieures pour les tâches de clonage vocal instantané. Alors, commençons.
OpenVoice : permettre un clonage vocal instantané et polyvalent
Comme mentionné précédemment, le clonage vocal instantané, également appelé Synthèse texte-parole Zero-Shot, permet au modèle TTS de cloner la voix de n'importe quel locuteur de référence à l'aide d'un court échantillon audio sans nécessiter de formation supplémentaire pour le locuteur de référence. Le clonage vocal instantané a toujours été un sujet de recherche brûlant avec des travaux existants, notamment les frameworks XTTS et VALLE qui extraient l'intégration des haut-parleurs et/ou les jetons acoustiques de l'audio de référence qui sert de condition au modèle auto-régressif. Le modèle auto-régressif génère ensuite des jetons acoustiques de manière séquentielle, puis décode ces jetons en une forme d'onde audio brute.
Bien que les modèles de clonage vocal instantané auto-régressifs clonent remarquablement la couleur du ton, ils ne parviennent pas à manipuler d'autres paramètres de style, notamment l'accent, l'émotion, les pauses et le rythme. De plus, les modèles auto-régressifs connaissent également une faible vitesse d’inférence et leurs coûts opérationnels sont assez élevés. Les approches existantes telles que le framework YourTTS utilisent une approche non autorégressive qui démontre un discours d'inférence beaucoup plus rapide que les frameworks d'approche autorégressive, mais sont toujours incapables de fournir à leurs utilisateurs un contrôle flexible sur les paramètres de style. De plus, les cadres de clonage vocal instantané, autorégressifs et non autorégressifs, nécessitent l'accès à un vaste ensemble de données multilingues MSML ou à locuteurs massifs pour le clonage vocal multilingue.
Pour relever les défis rencontrés par les frameworks actuels de clonage vocal instantané, les développeurs ont travaillé sur OpenVoice, une bibliothèque open source de clonage vocal instantané qui vise à résoudre les défis suivants rencontrés par les frameworks IVC actuels.
- Le premier défi consiste à permettre aux cadres IVC d'avoir un contrôle flexible sur les paramètres de style en plus de la couleur du ton, notamment l'accent, le rythme, l'intonation et les pauses. Les paramètres de style sont cruciaux pour générer des conversations et des discours naturels en contexte plutôt que de raconter le texte saisi de manière monotone.
- Le deuxième défi est de permettre aux frameworks IVC de cloner des voix multilingues dans un environnement zéro-shot.
- Le dernier défi consiste à atteindre des vitesses d’inférence en temps réel élevées sans détériorer la qualité.
Pour surmonter les deux premiers obstacles, l'architecture du framework OpenVoice est conçue de manière à découpler au mieux les composants de la voix. De plus, OpenVoice génère indépendamment la couleur du ton, la langue et d'autres fonctionnalités vocales, permettant au framework de manipuler de manière flexible les types de langue et les styles de voix individuels. Le framework OpenVoice relève le troisième défi par défaut, car la structure découplée réduit la complexité de calcul et les exigences de taille du modèle.
OpenVoice : Méthodologie et Architecture
Le cadre technique du framework OpenVoice est efficace et étonnamment simple à mettre en œuvre. Ce n’est un secret pour personne que cloner la couleur de tonalité d’un locuteur, ajouter une nouvelle langue et permettre simultanément un contrôle flexible des paramètres vocaux peut être un défi. Il en est ainsi parce que l’exécution simultanée de ces trois tâches nécessite que les paramètres contrôlés se croisent à l’aide d’un grand nombre d’ensembles de données combinatoires. De plus, en mode simple haut-parleur synthèse texte-parole, pour les tâches qui ne nécessitent pas de clonage vocal, il est plus facile d'ajouter un contrôle sur d'autres paramètres de style. Sur la base de ceux-ci, le framework OpenVoice vise à découpler les tâches de clonage instantané de voix en sous-tâches. Le modèle propose d'utiliser un modèle de synthèse vocale de haut-parleur de base pour contrôler les paramètres de langue et de style, et utilise un convertisseur de couleur de ton pour inclure la couleur de ton de référence dans la voix générée. La figure suivante montre l’architecture du framework.
À la base, le framework OpenVoice utilise deux composants : un convertisseur de tons et de couleurs et un modèle de synthèse vocale ou TTS pour locuteur de base. Le modèle de synthèse vocale du locuteur de base est un modèle à un ou plusieurs locuteurs permettant un contrôle précis des paramètres de style, de la langue et de l'accent. Le modèle génère une voix qui est ensuite transmise au convertisseur de tonalité, qui modifie la couleur tonale du haut-parleur de base en couleur tonale du haut-parleur de référence.
Le framework OpenVoice offre beaucoup de flexibilité en ce qui concerne le modèle de synthèse vocale du locuteur de base, car il peut utiliser le modèle VITS avec de légères modifications lui permettant d'accepter les intégrations de langue et de style dans son prédicteur de durée et son encodeur de texte. Le framework peut également utiliser des modèles tels que Microsoft TTS qui sont commercialement bon marché ou déployer des modèles comme InstructTTS capables d'accepter des invites de style. Pour le moment, le framework OpenVoice utilise le modèle VITS bien que les autres modèles constituent également une option réalisable.
En ce qui concerne le deuxième composant, le Tone Color Converter est un composant codeur-décodeur abritant un flux de normalisation inversible au centre. Le composant codeur du convertisseur de tonalité et de couleur est un CNN unidimensionnel qui accepte le spectre transformé de Fourier à court terme du modèle texte-parole du locuteur de base comme entrée. L'encodeur génère ensuite des cartes de fonctionnalités en sortie. L'extracteur de couleur tonale est un simple CNN bidimensionnel qui fonctionne sur le spectrogramme mel de la voix d'entrée et génère un vecteur de caractéristiques unique comme sortie qui code les informations sur la couleur tonale. Les couches de flux de normalisation acceptent les cartes de caractéristiques générées par l'encodeur comme entrée et génèrent une représentation de caractéristiques qui préserve toutes les propriétés de style mais élimine les informations de couleur de ton. Le framework OpenVoice applique ensuite les couches de flux de normalisation dans le sens inverse et prend les représentations de fonctionnalités comme entrée et sortie des couches de flux de normalisation. Le framework décode ensuite les couches de flux de normalisation en formes d'onde brutes à l'aide d'une pile de convolutions unidimensionnelles transposées.
L'ensemble de l'architecture du framework OpenVoice est rétroactif sans l'utilisation d'un composant auto-régressif. Le composant convertisseur de couleurs de tons est similaire à la conversion vocale sur le plan conceptuel, mais diffère en termes de fonctionnalités, d'objectifs de formation et de biais inductif dans la structure du modèle. Les couches de flux de normalisation partagent la même structure que les modèles de synthèse vocale basés sur les flux, mais diffèrent en termes de fonctionnalités et d'objectifs de formation.
De plus, il existe une approche différente pour extraire les représentations de fonctionnalités, la méthode implémentée par le framework OpenVoice offre une meilleure qualité audio. Il convient également de noter que le framework OpenVoice n'a pas l'intention d'inventer des composants dans l'architecture du modèle, mais que les composants principaux, à savoir le convertisseur de couleurs et le modèle TTS du haut-parleur de base, proviennent tous deux de travaux existants. L'objectif principal du framework OpenVoice est de former un framework découplé qui sépare le contrôle du langage et le style de voix du clonage des couleurs tonales. Bien que l’approche soit assez simple, elle est très efficace, notamment sur les tâches qui contrôlent les styles et les accents, ou sur les nouvelles tâches de généralisation d’un langage. Obtenir le même contrôle lors de l’utilisation d’un framework couplé nécessite une grande quantité de calcul et de données, et cela ne se généralise pas bien aux nouveaux langages.
À la base, la philosophie principale du framework OpenVoice est de dissocier la génération de styles de langage et de voix de la génération de couleurs tonales. L'un des principaux atouts du framework OpenVoice est que la voix clonée est fluide et de haute qualité tant que le TTS à haut-parleur unique parle couramment.
OpenVoice : Expérience et résultats
L'évaluation des tâches de clonage vocal est un objectif difficile pour de nombreuses raisons. Pour commencer, les travaux existants utilisent souvent des données de formation et de test différentes, ce qui rend la comparaison de ces travaux intrinsèquement injuste. Bien que le crowdsourcing puisse être utilisé pour évaluer des mesures telles que le score d'opinion moyen, la difficulté et la diversité des données du test influenceront de manière significative le résultat global. Deuxièmement, différentes méthodes de clonage vocal ont des données de formation différentes, et la diversité et l'ampleur de ces données influencent considérablement les résultats. Enfin, l'objectif premier des œuvres existantes diffère souvent les unes des autres, donc elles diffèrent dans leur fonctionnalité.
Pour les trois raisons mentionnées ci-dessus, il est injuste de comparer numériquement les cadres de clonage vocal existants. Au lieu de cela, il est beaucoup plus logique de comparer ces méthodes qualitativement.
Clonage précis des couleurs
Pour analyser ses performances, les développeurs créent un ensemble de tests avec des individus anonymes, des personnages de jeu et des célébrités qui constituent la base de haut-parleurs de référence et disposent d'une large distribution de voix comprenant à la fois des échantillons neutres et des voix expressives uniques. Le framework OpenVoice est capable de cloner la couleur du ton de référence et de générer des paroles dans plusieurs langues et accents pour n'importe lequel des locuteurs de référence et les 4 locuteurs de base.
ContrĂ´le flexible des styles de voix
L'un des objectifs du framework OpenVoice est de contrôler les styles de parole de manière flexible à l'aide du convertisseur de couleur de tonalité qui peut modifier la tonalité de couleur tout en préservant toutes les autres caractéristiques et propriétés vocales.
Les expériences indiquent que le modèle préserve les styles de voix après la conversion en couleur de tonalité de référence. Dans certains cas cependant, le modèle neutralise légèrement les émotions, un problème qui peut être résolu en transmettant moins d'informations aux couches de flux afin qu'elles soient incapables de se débarrasser de l'émotion. Le framework OpenVoice est capable de préserver les styles de la voix de base grâce à son utilisation d'un convertisseur de couleurs de ton. Il permet au framework OpenVoice de manipuler le modèle de synthèse vocale du locuteur de base pour contrôler facilement les styles de voix.
Clone vocal multilingue
Le framework OpenVoice n'inclut aucune donnée de locuteurs massifs pour une langue invisible, mais il est capable de réaliser un clonage vocal quasi multilingue dans un environnement zéro-shot. Les capacités de clonage vocal multilingue du framework OpenVoice sont de deux ordres :
- Le modèle est capable de cloner avec précision la couleur tonale du locuteur de référence lorsque la langue du locuteur de référence n'est pas visible dans l'ensemble de données multi-locuteurs multilingues ou MSML.
- De plus, dans le même cas où la langue du locuteur de référence n'est pas vue, le framework OpenVoice est capable de cloner la voix du locuteur de référence et de parler dans la langue à condition que le modèle de synthèse vocale du locuteur de base prenne en charge la langue.
Réflexions finales
Dans cet article, nous avons parlé d'OpenVoice, un framework polyvalent de clonage vocal instantané qui reproduit la voix de n'importe quel utilisateur et génère la parole dans plusieurs langues à l'aide d'un court clip audio du locuteur de référence. L'intuition principale derrière OpenVoice est que tant qu'un modèle n'a pas besoin d'effectuer un clonage de couleur de ton du locuteur de référence, un framework peut utiliser un modèle TTS de haut-parleur de base pour contrôler la langue et les styles de voix.
OpenVoice démontre que les modèles de clonage vocal instantané peuvent reproduire la couleur tonale du locuteur de référence et obtenir un contrôle granulaire sur les styles de voix, notamment l'accent, le rythme, l'intonation, les pauses et même les émotions. OpenVoice parvient à fournir des résultats de clonage vocal instantanés supérieurs tout en étant viable sur le plan informatique avec des coûts d'exploitation jusqu'à 10 fois inférieurs à ceux des API actuellement disponibles avec des performances inférieures.