Síntesis de habla

De Wikipedia, la enciclopedia libre
(Redirigido desde «Síntesis de voz»)
Saltar a: navegación, búsqueda
Stephen Hawking es una de las personas más famosas que usa síntesis de habla para comunicarse.

La voz sintética es una voz artificial (no pregrabada), generada mediante un proceso de sintetización del habla.

La síntesis de habla es la producción artificial de habla humana. Un sistema usado con este propósito recibe el nombre de sintetizador de habla y puede llevarse a cabo en software o en hardware. La síntesis de voz se llama a menudo en inglés text-to-speech (TTS), en referencia a su capacidad de convertir texto en habla. Sin embargo, hay sistemas que en lugar de producir voz a partir de texto lo hacen a partir de representación lingüística simbólica en habla.

La calidad de una voz sintética vendrá dada por:

  • Su inteligibilidad: ¿con qué facilidad/dificultad es entendida?.
  • Su naturalidad: ¿en qué medida se asemeja a la voz real de un humano?

Visión general de la tecnología de síntesis de voz[editar]

Un sistema texto a voz se compone de dos partes: un front-end y un back-end. A grandes rasgos, el front-end toma como entrada texto y produce una representación lingüística fonética. El back-end toma como entrada la representación lingüística simbólica y produce una forma de onda sintetizada.

El front-end desempeña dos tareas principales. Primero, toma el texto y convierte partes problemáticas como números y abreviaturas en palabras equivalentes. Este proceso se llama a menudo normalización de texto o preprocesado. Entonces asigna una transcripción fonética a cada palabra, y divide y marca el texto en varias unidades prosódicas, como frases y oraciones. El proceso de asignar transcripciones fonéticas a las palabras recibe el nombre de conversión texto a fonema (TTP en inglés) o grafema a fonema (GTP en inglés). La combinación de transcripciones fonéticas e información prosódica constituye la representación lingüística fonética.

La otra parte, el back-end, toma la representación lingüística simbólica y la convierte en sonido. El back-end se llama a menudo sintetizador.

Historia[editar]

Mucho antes del desarrollo del procesado de señal moderno, los investigadores de la voz intentaron crear máquinas que produjesen habla humana. El Papa Silvestre II (1003), Alberto Magno (1198-1280) y Roger Bacon (1214-1294) crearon ejemplos tempranos de 'cabezas parlantes'.

En 1779, el científico danés Christian Gottlieb Kratzenstein, que trabajaba en esa época en la Academia Rusa de las Ciencias, construyó modelos del tracto vocal que podría producir las cinco vocales largas (a, e, i, o, u). Wolfgang von Kempelen de Viena, Austria, describió en su obra Mechanismus der menschlichen Sprache nebst der Beschreibung seiner sprechenden Maschine ("mecanismo del habla humana con descripción de su máquina parlante", J.B. Degen, Wien) una máquina accionada con un fuelle. Esta máquina tenía, además, modelos de la lengua y los labios, para producir consonantes y vocales. En 1837 Charles Wheatstone produjo una 'máquina parlante' basada en el diseño de von Kempelen, y en 1857 M. Faber construyó la máquina 'Euphonia'. El diseño de Wheatstone fue resucitado en 1923 por Paget.

En los años 30, los laboratorios Bell Labs desarrollaron el VOCODER, un analizador y sintetizador del habla operado por teclado que era claramente inteligible. Homer Dudley refinó este dispositivo y creo VODER, que exhibió en la Exposición Universal de Nueva York de 1939.

Los primeros sintetizadores de voz sonaban muy robóticos y eran a menudo inteligibles a duras penas. Sin embargo, la calidad del habla sintetizada ha mejorado en gran medida, y el resultado de los sistemas de síntesis contemporáneos es, en ocasiones, indistinguible del habla humana real.

A pesar del éxito de los sintetizadores puramente electrónicos, sigue investigándose en sintetizadores mecánicos para su uso en robots humanoides. Incluso el mejor sintetizador electrónico está limitado por la calidad del transductor que produce el sonido, así que en un robot un sintetizador mecánico podría ser capaz de producir un sonido más natural que un altavoz pequeño.

El primer sistema de síntesis computarizado fue creado a final de la década de 1950 y el primer sistema completo texto a voz se finalizó en 1968. Desde entonces se han producido muchos avances en las tecnologías usadas para sintetizar voz.

Tecnologías de síntesis[editar]

Las dos características utilizadas para describir la calidad de un sintetizador de voz son la naturalidad e inteligibilidad. La naturalidad de un sintetizador de voz se refiere a hasta qué punto suena como la voz de una persona real. La inteligibilidad de un sintetizador se refiere a la facilidad de la salida de poder ser entendida. El sintetizador ideal debe de ser a la vez natural e inteligible, y cada tecnología intenta conseguir el máximo de ambas. Algunas de las tecnologías son mejores en naturalidad o en inteligibilidad y las metas de la síntesis determinan a menudo qué aproximación debe seguirse. Hay dos tecnologías principales usadas para generar habla sintética: síntesis concatenativa y síntesis de formantes.

Síntesis concatenativa[editar]

La síntesis concatenativa se basa en la concatenación de segmentos de voz grabados. Generalmente, la síntesis concatenativa produce los resultados más naturales. Sin embargo, las diferencias entre la variación natural del habla y las técnicas automatizadas de segmentación de formas de onda resultan en defectos audibles, que conllevan una pérdida de naturalidad.

Hay tres tipos básicos de síntesis concatenativa.

Síntesis por selección de unidades[editar]

La síntesis por selección de unidades utiliza una base de datos de voz grabada (más de una hora de habla grabada). Durante la creación de la base de datos, el habla se segmenta en algunas o todas de las siguientes unidades: fonemas, sílabas, palabras, frases y oraciones. Normalmente, la división en segmentos se realiza usando un reconocedor de voz modificado para forzar su alineamiento con un texto conocido. Después se corrige manualmente, usando representaciones como la forma de onda y el espectrograma. Se crea un índice de las unidades en la base de datos basada en parámetros acústicos de la segmentación como la frecuencia fundamental, el pitch, la duración, la posición en la sílaba y los fonemas vecinos. En tiempo de ejecución, el objetivo deseado se crea determinando la mejor cadena de candidatos de la base de datos (selección de unidades). Este proceso se logra típicamente usando un árbol de decisión especialmente ponderado.

La selección de unidades da la máxima naturalidad debido al hecho de que no aplica mucho procesamiento digital de señales al habla grabada, lo que a menudo hace que el sonido grabado suene menos natural, aunque algunos sistemas usan un poco de procesado de señal en la concatenación para suavizar las formas de onda. De hecho, la salida de la mejor selección de unidades es a menudo indistinguible de la voz humana real, especialmente en contextos en los que el sistema ha sido adaptado. Por ejemplo, un sistema de síntesis de voz para dar informaciones de vuelos puede ganar en naturalidad si la base de datos fue construida a base grabaciones de informaciones de vuelos, pues será más probable que aparezcan unidades apropiadas e incluso cadenas enteras en la base de datos. Sin embargo, la máxima naturalidad a menudo requiere que la base de datos sea muy amplia, llegando en algunos sistemas a los gigabytes de datos grabados.

Síntesis de difonos[editar]

La síntesis de difonos usa una base de datos mínima conteniendo todos los difonos que pueden aparecer en un lenguaje dado. El número de difonos depende de la fonotáctica del lenguaje: el español tiene unos 800 difonos, el alemán unos 2500. En la síntesis de difonos, la base de datos contiene un sólo ejemplo de cada difono. En tiempo de ejecución, la prosodia de una oración se sobreimpone a estas unidades mínimas mediante procesamiento digital de señales, como codificación lineal predictiva, PSOLA o MBROLA.

La calidad del habla resultante es generalmente peor que la obtenida mediante selección de unidades pero más natural que la obtenida mediante sintetización de formantes. La síntesis difonos adolece de los defectos de la síntesis concatenativa y suena robótica como la síntesis de formantes, y tiene pocas ventajas respecto a estas técnicas aparte del pequeño tamaño de la base de datos, así que su uso en aplicaciones comerciales experimenta un declive, aunque continúa usándose en investigación porque hay unas cuantas implementaciones libres.

Síntesis específica para un dominio[editar]

La síntesis específica para un dominio concatena palabras y frases grabadas para crear salidas completas. Se usa en aplicaciones donde la variedad de textos que el sistema puede producir está limitada a un particular dominio, como anuncios de salidas de trenes o información meteorológica.

Esta tecnología es muy sencilla de implementar, y se ha usado comercialmente durante largo tiempo: es la tecnología usada por aparatos como relojes y calculadoras parlantes. La naturalidad de estos sistemas puede ser muy grande, porque la variedad de oraciones está limitada y corresponde a la entonación y la prosodia de las grabaciones originales. Sin embargo, al estar limitados a unas ciertas frases y palabras de la base de datos, no son de propósito general y sólo pueden sintetizar la combinación de palabras y frases para los que fueron diseñados.

Síntesis de formantes[editar]

La síntesis de formantes no usa muestras de habla humana en tiempo de ejecución. En lugar de eso, la salida se crea usando un modelo acústico. Parámetros como la frecuencia fundamental y los niveles de ruido se varían durante el tiempo para crear una forma de onda o habla artificial. Este método se conoce también como síntesis basada en reglas pero algunos aducen que muchos sistemas concatenativos usan componentes basados en reglas para algunas partes de sus sistemas, como el front-end, así que el término no es suficientemente específico.

Muchos sistemas basados en síntesis de formantes generan habla robótica y de apariencia artificial, y la salida nunca se podría confundir con la voz humana. Sin embargo, la naturalidad máxima no es siempre la meta de un sintetizador de voz, y estos sistemas tienen algunas ventajas sobre los sistemas concatenativos.

La síntesis de formantes puede ser muy inteligible, incluso a altas velocidades, evitando los defectos acústicos que pueden aparecer con frecuencia en los sistemas concatenativos. La síntesis de voz de alta velocidad es a menudo usada por los discapacitados visuales para utilizar computadores con fluidez. Por otra parte, los sintetizadores de formantes son a menudo programas más pequeños que los sistemas concatenativos porque no necesitan una base de datos de muestras de voz grabada. De esta forma, pueden usarse en sistemas embebidos, donde la memoria y la capacidad de proceso son a menudo exiguas. Por último, dado que los sistemas basados en formantes tienen un control total sobre todos los aspectos del habla producida, pueden incorporar una amplia variedad de tipos de entonaciones, que no sólo comprendan preguntas y enunciaciones.

Otros métodos de síntesis[editar]

  • La síntesis articulatoria ha sido un método de interés puramente académico hasta hace poco. Se basa en modelos computacionales del tracto vocal y el proceso de articulación. Pocos de los modelos son suficientemente avanzados o eficientes computacionalmente para ser usados en sistemas comerciales de síntesis de voz. Una excepción notable es el sistema basado en NeXT, originalmente desarrollado y comercializado por Trillium Sound Research Inc, que pasó más tarde a tener una licencia GPL y se continuó como gnuspeech, siendo un proyecto GNU. El software original de NeXT y versiones del software para Mac OS/X y Linux GNUstep están disponibles en [1] junto a manuales y documentos relevantes a los fundamentos teóricos del trabajo. El sistema, que fue comercializado por primera vez en 1994, proporciona una conversión texto a voz articulatoria completa mediante una analogía de guía de onda o línea de transmisión de los tractos vocal y nasal humanos, controlados por el Modelos de Región Distintiva de Carré que está basado en el trabajo de Gunnar Fant y otros del laboratorio Stockholm Specch Technology Lab del Royal Institute of Technology sobre el análisis de la sensibilidad de formantes. Este trabajo mostró que los formantes en un tubo resonante pueden ser controlados por sólo ocho parámetros que corresponden a los articuladores disponibles en el tracto vocal humano natural.
  • La Síntesis híbrida aúna aspectos de las síntesis concatenativa y de formantes para minimizar los defectos acústicos cuando se concatenan segmentos.

Desafíos del cliente (front-end)[editar]

Desafíos de la normalización de texto[editar]

El proceso de normalizar texto es pocas veces simple. Los textos están llenos de homográfos, números y abreviaturas que tienen que ser transformados en una representación fonética.

Por supuesto, en lenguas donde la correspondencia entre el texto escrito y su equivalente fonético es poca (inglés) o ninguna (mandarín), la creación de estos sistemas se complica.

Muchos sistemas de texto a voz no generan representaciones semánticas de los textos de entradas, pues los sistemas para hacerlo no son fiables o computacionalmente efectivos. Como resultado, se usan varias técnicas heurísticas para estimar la manera correcta de desambiguar homógrafos, como buscar palabras vecinas y usar estadísticas sobre la frecuencia de aparición de las palabras.

Decidir cómo convertir números en palabras es otro problema que tienen que solucionar los sintetizadores de voz. Es un desafío bastante simple programar un sistema que convierta números en palabras, como por ejemplo transformar 1325 en "mil trescientos veinticinco". Sin embargo, los números aparecen en diferentes contextos, y 1325 puede ser un ordinal, "uno tres dos cinco" si son los últimos dígitos de un DNI o "trece veinticinco" si es un número de teléfono. A menudo un sistema de síntesis de voz puede inferir cómo expandir un número en función de las palabras o números vecinos y la puntuación, y algunos sistemas proporcionan un sistema para especificar el tipo de contexto si es ambiguo.

De la misma forma, abreviaturas como "etc." se pueden transformar fácilmente en "et cétera", pero a menudo las abreviaturas puede ser ambiguas. Por ejemplo la abreviatura "am" puede ser "ante meridiam" en el ejemplo: "El vuelo aterrizará a las 11 am" o puede ser "modulación de amplitud" o simplemente "a eme" en el ejemplo "Nos puede encontrar en la sintonía 1425 am". Los sistemas con front end inteligentes pueden hacer estimaciones adecuadas acerca de como tratar abreviaturas ambiguas, mientras que otros pueden hacer lo mismo en todos los casos, dando resultados en ocasiones cómicos.

Desafíos de los sistemas Texto a fonema[editar]

Los sintetizadores de voz usan dos aproximaciones básicas al problema de determinar la pronunciación de una palabra basándose en su pronunciación, un proceso que a menudo recibe el nombre de conversión texto a fonema o grafema a fonema, dado que fonema es el término usado por los lingüistas para describir sonidos distintivos en una lengua.

La aproximación más simple a este problema es la basada en diccionario, donde se almacena en el programa un gran diccionario que contiene todas las palabras de la lengua y su correcta pronunciación. Determinar la pronunciación correcta de cada palabra consiste en buscar cada palabra en el diccionario y reemplazar el texto con la pronunciación especificada en el diccionario.

La otra aproximación para convertir texto en fonemas es la aproximación basada en reglas, donde dichas reglas para la pronunciación de las palabras se aplican a palabras para extraer sus pronunciaciones basadas en su forma escrita.

Cada aproximación tiene ventajas y desventajas. La técnica basada en diccionarios tiene como ventajas ser rápida y precisa, pero falla completamente si una palabra dada no aparece en el diccionario, y a medida que creece el diccionario crecen los requerimientos de memoria del sistema de síntesis. Por otra parte, la técnica basada en reglas funciona con cualquier entrada, pero la complejidad de las reglas crece sustancialmente a medida que se van teniendo en cuenta ortografías y pronunciaciones irregulares. Como resultado, casi cualquier sintetizador de voz usa una combinación de las dos técnicas.

Algunos idiomas, como el español, tienen un sistema de escritura muy regular y la predicción de la pronunciación de palabras basada en deletreos es casi siempre correcta. Los sistemas de síntesis de voz para este tipo de lenguajes generalmente usan un enfoque basado en reglas como el enfoque central para la conversión texto-fonema y auxiliándose de diccionarios pequeños para algunas palabras de origen extranjero cuya pronunciación no se deduce de la escritura. En otros como el inglés, dado que se trata de sistemas muy irregulares en su escritura, el enfoque se basa principalmente en diccionarios y sólo para palabras no usuales se basa en reglas.

Problemas de la voz sintética[editar]

  • Rechazo por parte de los usuarios que no le perdonan su falta de naturalidad y su timbre robótico.
  • Los CTV (Conversores de Texto-Voz) producen voz, generalmente, voz de hombre. Hay varias razones que pueden explicar este hecho:
  • Una explicación sociológica obvia es que, hasta hace relativamente poco, las personas que trabajaban en los laboratorios eran hombres y éstos empleaban su propia voz durante los experimentos.
  • La voz masculina ofrece mejor calidad sonora que la femenina. Esto se debe a que la frecuencia fundamental (primer armónico) de la mujer es bastante más alta que la de hombre.
  • La forma de onda en la voz de mujer tiene un componente de oscilación no periódica, que viene dado por una mayor frecuencia en la aspiración, que resulta más notable que la del hombre. Este componente de la excitación glotal es difícil de modelar adecuadamente.

En los últimos tiempos han aparecido sintetizadores que utilizan voz de mujer de calidad aceptable, sin embargo, siguen sin alcanzar la calidad ofrecida por un sintetizador de similares características que emplee voz masculina.

Lenguajes de etiquetas para síntesis de voz[editar]

Hay un cierto número de lenguaje de etiquetas para la interpretación de texto como voz de acuerdo con XML. El más reciente es SSML,[1] propuesto por el W3C, que tiene actualmente categoría de borrador.

Es posible cambiar la forma en que suena la voz, alterando el texto de entrada. El uso de comas es la forma más fácil de conseguir un mejor fraseado, especialmente con frases complejas largas. La velocidad final se pueden controlar usando etiquetas XML del estándar SSML, como por ejemplo:

<prosody rate="slow"> esto se dicen lentamente </prosody>.
<prosody rate="fast"> esto es dicho rápidamente </prosody>.
<prosody rate="-50%"> this is 50% slower </prosody>.

Se pueden insertar pausas precisas utilizando la etiqueta <break/>, por ejemplo:[2]

Interrupción por 100 milisegundos <Break time="100ms"/> De acuerdo, adelante."
Interrupción por tres segundo <Break time="3s"/> De acuerdo, continúa."

Los lenguajes de etiquetas para síntesis de voz no son lenguajes de etiquetas para diálogo como VoiceXML, que incluye, además de etiquetas de conversión texto a voz, etiquetas relativas a reconocimiento de voz y control de diálogo.

Aplicaciones[editar]

La síntesis de voz ha sido durante mucho tiempo una importante herramienta de tecnología asistiva y su aplicación en este ámbito es significativo y generalizado. Permite que se puedan retirar barreras ambientales para personas con una amplia gama de discapacidades. La mayor aplicación ha sido en el uso de lectores de pantalla para personas con discapacidad visual, pero los sistemas de texto-a-voz se utilizan habitualmente por las personas con dislexia y otras dificultades de lectura, así como para la pre-alfabetización de niños (en cuyo caso, permite seleccionar la lectura de letras, sílabas, palabras y frases con velocidad muy lenta). También se emplea con frecuencia para ayudar a las personas con grave discapacidad del habla, generalmente a través de un dispositivo de generación de voz dedicado.

Cabe la posibilidad de guardar lo leído en archivos MP3 y OGG.[3] [4]

Las técnicas de síntesis de voz también se utilizan en las producciones de entretenimiento, como juegos y animaciones. En 2007, Animo Limited ha anunciado el desarrollo de un paquete de aplicaciones basado en su software de voz FineSpeech, explícitamente dirigido a los clientes de la industria del entretenimiento, capaz de generar la narración y las líneas de diálogo de acuerdo con las especificaciones del usuario. La aplicación alcanzado la madurez en 2008, cuando NEC Biglobe anunció un servicio web que permite a los usuarios crear frases a partir de las voces de los caracteres de Code Geass.

En los últimos años, el texto a voz para la discapacidad y para las ayudas a la comunicación de los discapacitados se ha desarrollado bastante en el transporte público. El texto a voz también está encontrando nuevas aplicaciones fuera del mercado de la discapacidad. Por ejemplo, la síntesis de voz, en combinación con el reconocimiento de voz, permite la interacción con los dispositivos móviles a través de interfaces de procesamiento del lenguaje natural (incluyendo buscadores web como Google), interfaces que van incluidas por defecto en sistemas operativos móviles como Android.

Comparativa tecnológica[editar]

Véase también[editar]

Enlaces externos[editar]

Referencias[editar]

Bibliografía[editar]

  • Tordera Yllescas, Juan Carlos (2011): "Lingüística computacional. Tratamientos del habla". Valencia: Universitat de València.