Contáctenos

OpenVoice: clonación de voz instantánea y versátil

Inteligencia Artificial

OpenVoice: clonación de voz instantánea y versátil

mm

En la síntesis de texto a voz (TTS), la clonación instantánea de voz (IVC) permite al modelo TTS clonar la voz de cualquier hablante de referencia utilizando una breve muestra de audio, sin requerir capacitación adicional para el hablante de referencia. Esta técnica también se conoce como síntesis de texto a voz Zero-Shot. El enfoque de Instant Voice Cloning permite una personalización flexible de la voz generada y demuestra un valor significativo en una amplia gama de situaciones del mundo real, incluidos chatbots personalizados, creación de contenido e interacciones entre humanos y modelos de lenguaje grande (LLM).

Aunque los marcos actuales de clonación de voz hacen bien su trabajo, están plagados de algunos desafíos en el campo, entre ellos Control de estilo de voz flexible es decir, los modelos carecen de la capacidad de manipular estilos de voz de manera flexible después de clonar la voz. Otro obstáculo importante al que se enfrentan los marcos actuales de clonación instantánea es Clonación de voz multilingüe Zero-Shot es decir, para fines de capacitación, los modelos actuales requieren acceso a un extenso conjunto de datos MSML o multilingüe de hablantes masivos, independientemente del idioma. 

Para abordar estos problemas y contribuir a la mejora de los modelos de clonación de voz instantánea, los desarrolladores han trabajado en OpenVoice, un marco versátil de clonación de voz instantánea que replica la voz de cualquier usuario y genera voz en varios idiomas utilizando un breve clip de audio del hablante de referencia. . OpenVoice demuestra que los modelos de Instant Voice Cloning pueden replicar el color del tono del hablante de referencia y lograr un control granular sobre los estilos de voz, incluidos el acento, el ritmo, la entonación, las pausas e incluso las emociones. Lo que es más impresionante es que el marco OpenVoice también demuestra capacidades notables para lograr la clonación de voz multilingüe sin problemas para idiomas externos al conjunto de datos MSML, lo que permite a OpenVoice clonar voces en nuevos idiomas sin una capacitación previa extensa para ese idioma. OpenVoice logra ofrecer resultados superiores de clonación de voz instantánea y al mismo tiempo es computacionalmente viable con costos operativos hasta 10 veces menores que las API disponibles actualmente con un rendimiento inferior. 

En este artículo, hablaremos en profundidad sobre el marco OpenVoice y descubriremos su arquitectura que le permite ofrecer un rendimiento superior en tareas de clonación de voz instantánea. Entonces empecemos. 

OpenVoice: habilitación de la clonación de voz instantánea y versátil

Como se mencionó anteriormente, la clonación instantánea de voz, también conocida como Síntesis de texto a voz Zero-Shot, permite al modelo TTS clonar la voz de cualquier hablante de referencia utilizando una breve muestra de audio sin necesidad de capacitación adicional para el hablante de referencia. La clonación instantánea de voz siempre ha sido un tema de investigación candente con trabajos existentes que incluyen marcos XTTS y VALLE que extraen incrustaciones de altavoces y/o tokens acústicos del audio de referencia que sirve como condición para el modelo autorregresivo. Luego, el modelo autorregresivo genera tokens acústicos de forma secuencial y luego los decodifica en una forma de onda de audio sin formato. 

Aunque los modelos autorregresivos de clonación instantánea de voz clonan notablemente el color del tono, no logran manipular otros parámetros de estilo, incluidos el acento, la emoción, las pausas y el ritmo. Además, los modelos autorregresivos también experimentan una baja velocidad de inferencia y sus costos operativos son bastante altos. Los enfoques existentes como el marco YourTTS emplean un enfoque no autorregresivo que demuestra un discurso de inferencia significativamente más rápido que los marcos de enfoque autorregresivos, pero aún no pueden proporcionar a sus usuarios un control flexible sobre los parámetros de estilo. Además, los marcos de clonación de voz instantánea, tanto autorregresivos como no autorregresivos, necesitan acceso a un gran conjunto de datos multilingües de MSML o de hablantes masivos para la clonación de voz en varios idiomas. 

Para abordar los desafíos que enfrentan los marcos actuales de clonación de voz instantánea, los desarrolladores han trabajado en OpenVoice, una biblioteca de clonación de voz instantánea de código abierto que tiene como objetivo resolver los siguientes desafíos que enfrentan los marcos IVC actuales. 

  1. El primer desafío es permitir que los marcos IVC tengan un control flexible sobre los parámetros de estilo además del color del tono, incluidos el acento, el ritmo, la entonación y las pausas. Los parámetros de estilo son cruciales para generar conversaciones y discursos naturales en contexto en lugar de narrar el texto de entrada de manera monótona. 
  2. El segundo desafío es permitir que los marcos IVC clonen voces multilingües en una configuración de cero disparos. 
  3. El desafío final es lograr altas velocidades de inferencia en tiempo real sin deteriorar la calidad. 

Para superar los dos primeros obstáculos, la arquitectura del marco OpenVoice está diseñada de manera que desacople los componentes de la voz lo mejor que pueda. Además, OpenVoice genera colores de tono, lenguaje y otras características de voz de forma independiente, lo que permite que el marco manipule de manera flexible tipos de lenguaje y estilos de voz individuales. El marco OpenVoice aborda el tercer desafío de forma predeterminada, ya que la estructura desacoplada reduce la complejidad computacional y los requisitos de tamaño del modelo. 

OpenVoice: Metodología y Arquitectura

El marco técnico de OpenVoice es eficaz y sorprendentemente sencillo de implementar. No es ningún secreto que clonar el color del tono de cualquier hablante, agregar un nuevo idioma y permitir un control flexible sobre los parámetros de voz simultáneamente puede ser un desafío. Esto es así porque la ejecución simultánea de estas tres tareas requiere que los parámetros controlados se crucen utilizando una gran cantidad de conjuntos de datos combinatorios. Además, en un solo hablante normal síntesis de texto a voz, para tareas que no requieren clonación de voz, es más fácil agregar control sobre otros parámetros de estilo. Sobre la base de esto, el marco OpenVoice tiene como objetivo desacoplar las tareas de clonación instantánea de voz en subtareas. El modelo propone utilizar un modelo de texto a voz del hablante base para controlar los parámetros de idioma y estilo, y emplea un conversor de color de tono para incluir el color de tono de referencia en la voz generada. La siguiente figura demuestra la arquitectura del marco. 

En esencia, el marco OpenVoice emplea dos componentes: un conversor de color de tono y un modelo base de texto a voz o TTS. El modelo base de texto a voz del hablante es un modelo de un solo hablante o de varios hablantes, lo que permite un control preciso sobre los parámetros de estilo, el idioma y el acento. El modelo genera una voz que luego se pasa al convertidor de color de tono, que cambia el color de tono del altavoz base al color de tono del altavoz de referencia. 

El marco OpenVoice ofrece mucha flexibilidad cuando se trata del modelo base de texto a voz del hablante, ya que puede emplear el modelo VITS con ligeras modificaciones, lo que le permite aceptar incrustaciones de lenguaje y estilo en su predictor de duración y codificador de texto. El marco también puede emplear modelos como Microsoft TTS que son comercialmente económicos o puede implementar modelos como InstructTTS que son capaces de aceptar indicaciones de estilo. Por el momento, el marco OpenVoice emplea el modelo VITS aunque los otros modelos también son una opción viable. 

Pasando al segundo componente, el Tone Color Converter es un componente codificador-decodificador que alberga un flujo de normalización reversible en el centro. El componente codificador en el conversor de color de tono es una CNN unidimensional que acepta como entrada el espectro transformado de Fourier de corto tiempo del modelo base de texto a voz del hablante. Luego, el codificador genera mapas de características como salida. El extractor de color de tono es una CNN bidimensional simple que opera en el espectrograma mel de la voz de entrada y genera un único vector de características como salida que codifica la información del color de tono. Las capas de flujo de normalización aceptan los mapas de características generados por el codificador como entrada y generan una representación de características que conserva todas las propiedades de estilo pero elimina la información del color del tono. Luego, el marco OpenVoice aplica las capas de flujo de normalización en la dirección inversa y toma las representaciones de características como entrada y genera las capas de flujo de normalización. Luego, el marco decodifica las capas de flujo de normalización en formas de onda sin procesar utilizando una pila de convoluciones unidimensionales transpuestas. 

Toda la arquitectura del marco OpenVoice se alimenta sin el uso de ningún componente autorregresivo. El componente convertidor de color de tono es similar a la conversión de voz a nivel conceptual, pero difiere en términos de funcionalidad, objetivos de capacitación y un sesgo inductivo en la estructura del modelo. Las capas de flujo de normalización comparten la misma estructura que los modelos de texto a voz basados ​​en flujo, pero difieren en términos de funcionalidad y objetivos de capacitación. 

Además, existe un enfoque diferente para extraer representaciones de características; el método implementado por el marco OpenVoice ofrece una mejor calidad de audio. También vale la pena señalar que el marco OpenVoice no tiene intención de inventar componentes en la arquitectura del modelo, sino que ambos componentes principales, es decir, el convertidor de color de tono y el modelo TTS del altavoz base, provienen de trabajos existentes. El objetivo principal del marco OpenVoice es formar un marco desacoplado que separe el control del lenguaje y el estilo de voz de la clonación del color del tono. Aunque el enfoque es bastante simple, es bastante efectivo, especialmente en tareas que controlan estilos y acentos, o tareas de generalización de nuevos idiomas. Lograr el mismo control cuando se emplea un marco acoplado requiere una gran cantidad de computación y datos, y no se generaliza bien a nuevos lenguajes. 

En esencia, la filosofía principal del marco OpenVoice es desacoplar la generación de lenguaje y estilos de voz de la generación de color de tono. Una de las principales fortalezas del marco OpenVoice es que la voz clonada es fluida y de alta calidad siempre que el TTS de un solo hablante hable con fluidez. 

OpenVoice: experimento y resultados

Evaluar las tareas de clonación de voz es un objetivo difícil por numerosas razones. Para empezar, los trabajos existentes a menudo emplean diferentes datos de capacitación y pruebas, lo que hace que comparar estos trabajos sea intrínsecamente injusto. Aunque se puede utilizar el crowdsourcing para evaluar métricas como la puntuación media de opinión, la dificultad y diversidad de los datos de la prueba influirán significativamente en el resultado general. En segundo lugar, los diferentes métodos de clonación de voz tienen diferentes datos de entrenamiento, y la diversidad y escala de estos datos influye significativamente en los resultados. Finalmente, el objetivo principal de las obras existentes a menudo difiere entre sí, por lo que difieren en su funcionalidad. 

Debido a las tres razones mencionadas anteriormente, no es justo comparar numéricamente los marcos de clonación de voz existentes. En cambio, tiene mucho más sentido comparar estos métodos cualitativamente. 

Clonación precisa del color del tono

Para analizar su rendimiento, los desarrolladores crean un conjunto de pruebas con individuos anónimos, personajes del juego y celebridades que forman la base de oradores de referencia, y tiene una amplia distribución de voz que incluye muestras neutrales y voces expresivas únicas. El marco OpenVoice puede clonar el color del tono de referencia y generar voz en múltiples idiomas y acentos para cualquiera de los hablantes de referencia y los 4 hablantes base. 

Control flexible de estilos de voz

Uno de los objetivos del marco OpenVoice es controlar los estilos de voz de manera flexible utilizando el conversor de color de tono que puede modificar el tono del color preservando todas las demás características y propiedades de la voz. 

Los experimentos indican que el modelo conserva los estilos de voz después de convertirlos al color de tono de referencia. Sin embargo, en algunos casos, el modelo neutraliza ligeramente las emociones, un problema que puede resolverse pasando menos información a las capas de flujo para que no puedan deshacerse de la emoción. El marco OpenVoice es capaz de preservar los estilos de la voz base gracias al uso de un conversor de color de tono. Permite que el marco OpenVoice manipule el modelo base de texto a voz del hablante para controlar fácilmente los estilos de voz. 

Clon de voz multilingüe

El marco OpenVoice no incluye datos masivos de hablantes para un idioma invisible, pero es capaz de lograr una clonación de voz casi entre idiomas en una configuración de disparo cero. Las capacidades de clonación de voz en varios idiomas del marco OpenVoice son dos:

  1. El modelo es capaz de clonar el color de tono del hablante de referencia con precisión cuando el idioma del hablante de referencia no se ve en el conjunto de datos MSML o multilenguaje de múltiples hablantes. 
  2. Además, en el mismo caso de que el idioma del hablante de referencia no se vea, el marco OpenVoice es capaz de clonar la voz del hablante de referencia y hablar en el idioma uno con la condición de que el modelo de texto a voz del hablante base admita el idioma. 

Conclusión

En este artículo hemos hablado de OpenVoice, un marco versátil de clonación de voz instantánea que replica la voz de cualquier usuario y genera voz en varios idiomas utilizando un breve clip de audio del hablante de referencia. La intuición principal detrás de OpenVoice es que siempre que un modelo no tenga que realizar la clonación del color del tono del hablante de referencia, un marco puede emplear un modelo TTS del hablante base para controlar el idioma y los estilos de voz. 

OpenVoice demuestra que los modelos de Instant Voice Cloning pueden replicar el color del tono del hablante de referencia y lograr un control granular sobre los estilos de voz, incluidos el acento, el ritmo, la entonación, las pausas e incluso las emociones. OpenVoice logra ofrecer resultados superiores de clonación de voz instantánea y al mismo tiempo es computacionalmente viable con costos operativos hasta 10 veces menores que las API disponibles actualmente con un rendimiento inferior. 

"Ingeniero de profesión, escritor de corazón". Kunal es un escritor técnico con un profundo amor y comprensión de AI y ML, dedicado a simplificar conceptos complejos en estos campos a través de su atractiva e informativa documentación.