Modelos y plataformas de IA
HierSpeech++: Inferencia Variacional Jerárquica para Síntesis de Voz de Zero-Shot
Los recientes desarrollos y el progreso en las capacidades de los grandes modelos de lenguaje han jugado un papel crucial en los avances de los marcos basados en LLM para la generación de audio y la síntesis de voz, especialmente en el entorno de zero-shot. Los marcos tradicionales de síntesis de voz han presenciado avances significativos como resultado de la integración de características adicionales como códigos de audio neuronales para unidades de audio y voz discretas. Aunque estos marcos de síntesis de voz y audio entregan resultados satisfactorios, todavía hay espacio para la mejora, ya que los marcos actuales de audio basados en LLM tienen las siguientes tres limitaciones principales
- Tienen la tendencia a auto-generar salida de audio que causa una falta de robustez y velocidades de interferencia lentas, lo que resulta en malas pronunciaciones, saltos o repeticiones.
- Tienen la tendencia a depender en exceso de unidades de voz discretas o de códigos de audio neuronales pre-entrenados.
- A menudo requieren una gran cantidad de datos de entrenamiento.
Para abordar los problemas mencionados anteriormente y mejorar las capacidades de los modelos de síntesis de voz y audio basados en LLM, los desarrolladores han creado HierSpeech++, un sintetizador de voz robusto y eficiente de zero-shot para conversiones de voz y texto a voz o TTS. El marco de HierSpeech++ se basa en los conocimientos de los marcos de síntesis de voz jerárquica que no solo mejoran la robustez, sino que también agregan expresividad a la salida de voz sintética, al mismo tiempo que mejoran la naturalidad y la similitud del hablante de la voz generada artificialmente, incluso en un entorno de zero-shot.
En este artículo, hablaremos sobre el marco de HierSpeech++ en detalle y examinaremos la arquitectura del modelo, su funcionamiento y los resultados en comparación con los modelos de generación de texto y audio de estado del arte. Así que comencemos.
HierSpeech++: Inferencia Variacional Jerárquica para Síntesis de Voz de Zero-Shot
HierSpeech++ es un marco de síntesis de voz de zero-shot rápido, robusto y eficiente que utiliza una tubería de síntesis de voz jerárquica, y al adoptar este marco de síntesis de voz de extremo a extremo, el modelo HierSpeech++ puede maximizar el potencial de la generación de ondas de alta calidad para jerárquicamente cerrar la brecha entre las representaciones semánticas y acústicas al adoptar una representación de voz auto-supervisada como representación de voz semántica, y así intenta resolver las limitaciones actuales de adaptación de estilo. El marco de síntesis de voz de extremo a extremo se introdujo por primera vez por el modelo VITS, y adopta un VAE o codificador auto-variacional aumentado con entrenamiento adversarial y flujo normalizador. Además, los marcos basados en VAE con una tubería de entrenamiento de extremo a extremo tienen la capacidad de generar ondas de audio de alta calidad con una calidad de síntesis de voz perceptual significativamente mejor que las generadas por otros marcos de síntesis de voz.
La calidad de la reconstrucción de audio de estos marcos se puede mejorar aún más mediante el uso de un codificador condicional variacional jerárquico como el utilizado en el marco de HierSpeech. A pesar de su potencial, los modelos con tuberías de entrenamiento de extremo a extremo tienen ciertas limitaciones, especialmente en un entorno de zero-shot, ya que aunque pueden sintetizar muestras de voz con audio de alta calidad, la similitud del hablante en tareas de clonación de voz de zero-shot todavía está plagada de alta complejidad computacional. Por otro lado, los modelos de síntesis de voz basados en difusión realizan bien en términos de adaptación de hablante, pero todavía están lejos de la perfección, ya que utilizan un proceso de generación interactivo que ralentiza su velocidad de inferencia, a menudo son vulnerables a datos ruidosos, y como resultado de la falta de coincidencia entre el entrenamiento y la inferencia del proceso de generación de dos etapas entre el Mel-espectrograma y el audio de verdad generado, la calidad del audio no es óptima.
Para abordar los problemas que enfrentan sus predecesores, el modelo HierSpeech++ emplea un sintetizador de voz jerárquico, una super-resolución de voz y un componente de texto a vec, e introduce un sintetizador de voz jerárquico mejorado basado en el codificador condicional variacional jerárquico. En un intento por mejorar la calidad del audio más allá de la calidad perceptual, el marco de HierSpeech++ adopta un doble-audio para mejorar la posterior acústica, y mejora la generalización fuera de la distribución mediante el empleo de un generador adaptativo jerárquico equipado con generación condicional y no condicional. Además, para desenredar componentes de voz y mejorar la información semántica relacionada con el hablante y agnóstica al hablante, el marco de HierSpeech++ también adopta una codificación de teoría de fuente y filtro basada en múltiples rutas. Como resultado del empleo de un codificador auto-variacional, el modelo HierSpeech++ puede conectar y aprender representaciones jerárquicamente, y progresivamente adaptarse al estilo de voz objetivo para inferir el audio de onda. Además, el marco de HierSpeech++ también despliega una red de transformadores de flujo normalizador bidireccional en un intento por mejorar la adaptación y reducir la falta de coincidencia entre el entrenamiento y la inferencia.
En general, el modelo HierSpeech++ es un marco de síntesis de voz jerárquica completamente paralelo, novedoso y robusto destinado a sintetizar muestras de voz en un entorno de zero-shot, y intenta hacer las siguientes contribuciones
- Utilizar un marco de síntesis de voz jerárquica para controlar y transferir estilos de voz y prosodia.
- Habilitar la escalabilidad de datos y la síntesis de voz de alta resolución al muestrear la onda de audio de 16 a 48 kHz.
- Lograr la capacidad de nivel humano en tareas de conversión de voz y texto a voz de zero-shot.
HierSpeech++: Componentes del Modelo y Arquitectura
Como se discutió, HierSpeech++ es un modelo de síntesis de voz de zero-shot que intenta lograr una precisión de nivel humano en términos de similitud de voz y naturalidad de la voz.

El modelo HierSpeech++ consiste en diferentes componentes, incluyendo un sintetizador de voz jerárquico, una super-resolución de voz y un componente de texto a vec que trabajan en sincronía para facilitar el entrenamiento de cada modelo que puede utilizar eficazmente una gran cantidad de datos de voz de baja resolución para la clonación de voz. Veamos el marco y hablemos de cada componente.
Representaciones de Voz
Como la banda de frecuencia humana está por debajo de 4 kHz, para la síntesis de voz, el marco de HierSpeech++ muestrea el audio a 16 kHz. Además, para reconstruir la señal de voz, es vital utilizar al menos el doble de la frecuencia de voz más alta, además de muestrear el audio. Para lograr una calidad perceptual mejorada, el marco de HierSpeech++ utiliza un componente de super-resolución de voz o SpeechSR para muestrear la onda de audio de 16 a 48 kHz, y utiliza representaciones de baja resolución para representaciones semánticas y acústicas.

Para las representaciones acústicas, un marco de síntesis de voz tradicional utiliza un Mel-espectrograma como su característica acústica intermedia que se transforma desde la onda con la ayuda de una transformada de Fourier de tiempo corto. Sin embargo, es importante destacar que, como las características acústicas son representaciones ricas que comprenden varios atributos, incluyendo contenido y pronunciación, información de voz y más, lo que hace que sea difícil para el marco inferir estas representaciones, una situación que a menudo conduce a malas pronunciaciones, falta de similitud o suavizado excesivo de la voz.
Continuando, para extraer una representación semántica continua de una onda, el marco de HierSpeech++ utiliza un marco de Wav2Vec en contraste con el enfoque de representación de voz auto-supervisada popular para representaciones semánticas. Aunque el enfoque es una buena alternativa para un modelo monolingüe rico, afecta las capacidades de clonación de voz de zero-shot del modelo en términos de robustez y expresividad, especialmente en tareas de síntesis de voz multilingüe.
Sintetizador de Voz Jerárquico
El componente de Sintetizador de Voz Jerárquico es la piedra angular del marco de HierSpeech++, ya que permite entrenar el módulo sin utilizar etiquetas como transcripciones de texto o identificador de hablante, y confiando únicamente en los datos de voz. Para aumentar la capacidad acústica, los modelos de síntesis de voz de estado del arte reemplazaron el Mel-espectrograma con un espectrograma lineal, sin embargo, el enfoque minimiza la puntuación de divergencia de KL en términos de periodicidad de tono, PESQ, puntuación de voz y no voz, y incluso la distancia del Mel-espectrograma. El Sintetizador de Voz Jerárquico emplea un codificador acústico de doble-audio para resolver los desafíos presentados por el uso de un espectrograma lineal diseñado para capturar representaciones acústicas más ricas y completas. El marco también emplea un codificador de onda para destilar información de una onda de audio cruda y la concatena con la representación del espectrograma lineal, y finalmente proyecta la representación acústica como una representación concatenada.

Además, para lidiar con representaciones semánticas relacionadas con el hablante y agnósticas al hablante, el marco de HierSpeech++ utiliza una representación de voz auto-supervisada de múltiples rutas, donde cada representación individual se utiliza para la adaptación de estilo jerárquica con las representaciones semánticas extraídas para obtener información lingüística de la capa media del MMS. El marco también utiliza una frecuencia fundamental para mejorar la desentanglement de la voz, lo que permite controlar el contorno de tono manualmente. El marco también utiliza una representación lingüística como información condicional para generar onda de audio jerárquicamente, y utiliza una representación lingüística mejorada de la representación auto-supervisada. También es importante destacar que las representaciones acústicas extraídas durante el entrenamiento mediante el uso de una onda y un espectrograma lineal se utilizan para reconstruir la onda de audio cruda, y se utiliza una inferencia variacional jerárquica para vincular las representaciones acústicas con las representaciones lingüísticas de múltiples rutas. El marco también emplea un generador adaptativo jerárquico para generar muestras de semántica a onda, y las representaciones generadas que comprenden una representación de estilo y una representación acústica se alimentan a los generadores de fuente y onda.
Texto a Vec
Para la síntesis de voz de texto a voz, el marco de HierSpeech++ emplea un modelo de texto a vec que genera una frecuencia fundamental y una representación semántica a partir de una secuencia de texto, y utiliza una búsqueda de alineación monótona acoplada con un codificador auto-variacional para alinear la voz y el texto internamente. El marco de HierSpeech++ reemplaza el espectrograma lineal con una representación lineal auto-supervisada, y reconstruye la misma representación para servir como la salida para el modelo de texto a vec.

Además, el marco de HierSpeech++ predice la frecuencia fundamental con cuatro veces más resolución que la representación de voz auto-supervisada, y utiliza una representación de texto condicional como la información previa. Como resultado de la información semántica de las representaciones de voz auto-supervisada, el marco es capaz de transferir el estilo de prosodia en el modelo de texto a vec, y alimenta una representación latente al codificador de fonemas para mejorar las capacidades lingüísticas de la representación.
SpeechSR o Super-Resolución de Voz
El marco de HierSpeech++ se entrena en un conjunto de datos de voz de baja resolución en términos de eficiencia de datos y disponibilidad, y muestrea una onda de voz de baja resolución a una onda de voz de alta resolución de 16 a 48 kHz. El marco también reemplaza una convolución transpuesta con un muestreador de vecino más cercano que se ha conocido previamente para aliviar los artefactos como resultado de las convoluciones transpuestas.

Arquitectura
El codificador de contenido del modelo de texto a vec consiste en 16 capas de WaveNet no casuales con un tamaño de kernel de 5 y un tamaño oculto de 256, mientras que el decodificador de contenido consiste en 8 capas de WaveNet no casuales con un tamaño de kernel de 5 y un tamaño oculto de 512. El componente del codificador de texto consiste en tres redes de transformadores condicionales de prosodia y tres redes de transformadores no condicionales con un tamaño de kernel de 9, un tamaño de filtro de 1024 y un tamaño oculto de 256, con el codificador de texto teniendo una tasa de abandono de 0,2. Para codificar información adyacente y mejorar la adaptación de estilo de prosodia, el marco adopta una CNN con un tamaño de kernel de 5 en bloques de transformadores. El SpeechSR, por otro lado, consiste en un solo bloque de AMP con 32 canales iniciales sin la presencia de una capa de muestreo. El marco utiliza un muestreador de vecino más cercano para muestrear las representaciones ocultas y utiliza un MPD como el discriminador con seis tamaños de ventana diferentes y cuatro discriminadores de sub-banda.

La figura anterior muestra la tubería de inferencia del marco de HierSpeech++ que comienza con la extracción de las representaciones semánticas del audio a una frecuencia de 16 kHz y a la frecuencia fundamental utilizando el algoritmo YAPPT. Antes de que la frecuencia fundamental se alimente al Sintetizador Jerárquico, se normaliza utilizando las desviaciones estándar y la media de la voz de origen, y la frecuencia fundamental normalizada se desnormaliza utilizando las desviaciones estándar y la media de la voz objetivo. Para la extracción de texto a voz, el marco de HierSpeech++ extrae representaciones textuales en lugar de representaciones de voz y utiliza el modelo de texto a vec para generar una representación semántica a partir de la prosodia del texto.
Experimento y Resultados
El marco utiliza el conjunto de datos LibriTTS disponible públicamente para entrenar el componente del sintetizador de voz jerárquico, con el primer paso siendo el entrenamiento del modelo con los subconjuntos de entrenamiento limpio del conjunto de datos y utilizando los datos restantes para permitir una mejor transferencia del estilo de voz. Además, para mejorar la diversidad y la robustez, el marco amplía el conjunto de datos a 1 kHz, como se muestra en la figura siguiente.

Reconstrucción, Tareas de Resíntesis y Conversión de Voz
Para evaluar el rendimiento del marco de HierSpeech++ en tareas de reconstrucción y resíntesis, los desarrolladores realizaron siete métricas objetivas, y los resultados se muestran en las figuras siguientes para las tareas de reconstrucción y resíntesis, respectivamente.


Para las tareas de conversión de voz, el marco utiliza dos métricas subjetivas para la evaluación: la similitud de voz MOS o sMOS y la puntuación de opinión de naturalidad media de nMOS con tres métricas de naturalidad objetiva y dos métricas de similitud objetiva.

Continuando, el objetivo principal del marco de HierSpeech++ es permitir la síntesis de voz de zero-shot, y para evaluar su rendimiento en zero-shot, se compara con otros modelos base como AutoVC, VoiceMixer, modelos basados en difusión y muchos más, con los resultados que se muestran en la figura siguiente.

Las figuras siguientes muestran los resultados de la síntesis de voz de texto a voz de zero-shot con textos con ruido y con ruido muy alto, respectivamente.


Pensamientos Finales
En este artículo, hemos hablado sobre el modelo de HierSpeech++, un enfoque novedoso para permitir la síntesis de voz robusta y eficaz en un entorno de zero-shot, y superar las limitaciones que enfrentan los marcos de síntesis de voz actuales, incluyendo su dependencia excesiva de grandes cantidades de datos de entrenamiento, su dependencia de unidades de voz discretas o códigos de audio neuronales pre-entrenados, y su tendencia a auto-generar salida de audio que causa una falta de robustez y velocidades de interferencia lentas y resulta en malas pronunciaciones, saltos o repeticiones. El modelo de HierSpeech++ es un marco de síntesis de voz jerárquica completamente paralelo, novedoso y robusto destinado a sintetizar muestras de voz en un entorno de zero-shot, y intenta hacer las siguientes contribuciones
- Utilizar un marco de síntesis de voz jerárquica para controlar y transferir estilos de voz y prosodia.
- Habilitar la escalabilidad de datos y la síntesis de voz de alta resolución al muestrear la onda de audio de 16 a 48 kHz.
- Lograr la capacidad de nivel humano en tareas de conversión de voz y texto a voz de zero-shot.












