211service.com
El laboratorio de inteligencia artificial de Baidu presenta un sistema de voz sintética
En la batalla por aplicar técnicas de aprendizaje profundo al mundo real, una empresa está muy por encima de la competencia. La subsidiaria DeepMind de Google ha utilizado la técnica para crear máquinas que pueden vencer a los humanos en los videojuegos y en el antiguo juego de Go. Y el año pasado, los servicios de Google Translate mejoraron significativamente gracias a la introducción tras bambalinas de técnicas de aprendizaje profundo.
Por lo tanto, es interesante ver cómo otras empresas están compitiendo para ponerse al día. Hoy es el turno de Baidu, una empresa de búsqueda en Internet que a veces se describe como el equivalente chino de Google. En 2013, Baidu abrió un laboratorio de investigación de inteligencia artificial en Silicon Valley, lo que planteó una pregunta interesante: ¿qué ha estado haciendo?
Ahora, el laboratorio de inteligencia artificial de Baidu ha revelado su trabajo en síntesis de voz. Uno de los desafíos en la síntesis de voz es reducir la cantidad de ajustes finos que se realizan entre bastidores. El gran avance de Baidu es crear una máquina de aprendizaje profundo que elimina en gran medida este tipo de intromisión. El resultado es un sistema de texto a voz llamado Deep Voice que puede aprender a hablar en unas pocas horas con poca o ninguna interferencia humana.
Primero algunos antecedentes. Los sistemas de texto a voz son familiares en el mundo moderno en aplicaciones de navegación, relojes parlantes, sistemas de contestadores telefónicos, etc. Tradicionalmente, estos se han creado mediante el registro de una gran base de datos del habla de un solo individuo y luego recombinando las expresiones para formar nuevas frases.
El problema con estos sistemas es que es difícil cambiar a un nuevo orador o cambiar el énfasis en sus palabras sin registrar una base de datos completamente nueva. Así que los informáticos han estado trabajando en otro enfoque. Su objetivo es sintetizar el habla en tiempo real desde cero según sea necesario.
El año pasado, DeepMind de Google logró un avance significativo en esta área. Dio a conocer una red neuronal que aprende a hablar escuchando las ondas de sonido del habla real mientras las compara con una transcripción del texto. Después del entrenamiento, pudo producir un discurso sintético basado en el texto que se le dio. Google DeepMind llamó a su sistema WaveNet.
El trabajo de Baidu es una mejora de WaveNet, que aún requiere algunos ajustes durante el proceso de capacitación. WaveNet también es computacionalmente exigente, tanto que no está claro si alguna vez podría usarse para sintetizar voz en tiempo real en el mundo real.
Baidu dice que ha superado estos problemas. Su enfoque es relativamente simple. Utiliza técnicas de aprendizaje profundo para convertir texto en las unidades de sonido perceptualmente distintas más pequeñas, llamadas fenomas. Luego utiliza una red de síntesis de voz para reproducir estos sonidos. La diferencia clave aquí es que cada etapa del proceso funciona mediante aprendizaje profundo, por lo que, una vez capacitado, hay poca necesidad de ajustes humanos.
Tomemos, por ejemplo, la palabra hola. El sistema de Baidu primero tiene que resolver los límites del fenoma de la siguiente manera: (silencio HH), (HH, EH), (EH, L), (L, OW), (OW, silencio). Luego los alimenta a un sistema de síntesis de voz, que pronuncia la palabra.
Las únicas variables que el nuevo sistema no controla son las acentuaciones de los fonemas, su duración y la frecuencia natural del sonido. Esto le permite a Baidu cambiar la voz del orador y la emoción que transmite la palabra.
Todo esto es computacionalmente exigente. La tasa de muestreo para el habla realista está en la región de 48 kilohercios. Entonces, una computadora tiene alrededor de 20 microsegundos para generar cada muestra. Debido a que el proceso de creación de este sonido involucra varias capas, cada una de ellas debe hacer su trabajo en 1,5 microsegundos. Para poner esto en contexto, acceder a un valor que reside en la memoria principal de una CPU puede tardar 0,1 microsegundos.
Para realizar inferencias en tiempo real, debemos tener mucho cuidado de nunca volver a calcular ningún resultado, almacenar todo el modelo en la memoria caché del procesador (a diferencia de la memoria principal) y utilizar de manera óptima las unidades computacionales disponibles, dicen los investigadores de Baidu.
Sin embargo, dicen que la síntesis de voz en tiempo real es posible con su sistema y lo han probado mediante percepciones de crowdsourcing en Mechanical Turk de Amazon. Esto implicó pedir a un gran número de oyentes que calificaran la calidad del audio mientras lo comparaban con datos reales en la forma de una grabación humana original.
Baidu dice que los resultados son de alta calidad. Optimizamos la inferencia a velocidades más rápidas que en tiempo real, lo que demuestra que estas técnicas se pueden aplicar para generar audio en tiempo real en forma de transmisión, dicen.
Pero aún más importante es la utilidad del sistema, que se puede volver a entrenar rápidamente en conjuntos de datos completamente nuevos. Nuestro sistema se puede entrenar sin ninguna participación humana, lo que simplifica drásticamente el proceso de creación de sistemas de texto a voz, dice el equipo.
Es un trabajo interesante que se basa en los esfuerzos de Google para mejorar significativamente los sistemas de texto a voz. Eso es importante porque el sueño de décadas de los escritores de ciencia ficción es poder hablar con las computadoras en tiempo real y que estas respondan. La conversión de texto a voz es una parte importante de eso.
Por supuesto, es poco probable que DeepMind de Google (o cualquier otra persona en el mundo del aprendizaje profundo) se haya quedado quieto mientras Baidu perfecciona su sistema de voz sintética. Seguramente será solo cuestión de tiempo antes de que veamos qué han estado haciendo y cómo se compara.
Ref: arxiv.org/abs/1702.07825 : Voz profunda: texto a voz neuronal en tiempo real