- Síntesis de habla
-
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?
Contenido
Visión general de la tecnología de síntesis de voz
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
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, así como 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
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
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
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
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
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
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
- 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.
- La Síntesis basada en HMM es un método de síntesis basado en Modelos ocultos de Márkov (HMM en inglés). En este sistema, el habla espectro de frecuencias (tracto vocal), frecuencia fundamental (fuente vocal), y la duración (prosodia) se modelan simultáneamente por modelos ocultos de Márkov. Las formas de onda se generan desde estos modelos ocultos de Márkov mediante el criterio de máxima verosimilitud.
Desafíos del front-end
Desafíos de la normalización de texto
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
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
- 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
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, propuesto por el W3C, que tiene actualmente categoría de borrador. Otros lenguajes de etiquetas de aparición anterior son SABLE y JSML. Aunque cada uno fue propuesto como un nuevo estándar, ninguno ha sido ampliamente adoptado.
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.
Bibliografía
Tordera Yllescas, Juan Carlos (2011): "Lingüística computacional. Tratamientos del habla". Valencia: Universitat de València.
Véase también
- Conversor texto-voz
- Lingüística computacional
- Procesamiento de lenguaje natural
- Reconocimiento de voz
- Síntesis (sonido)
- Sintetizador del habla
- Transcriptor fonético
- Voz sintética
- Lector de pantalla
- Vocaloid
- Conversor texto-voz Google Desktop gadget
- WebTalks: Aplicación Android de síntesis de voz
- Síntesis de voz en varios idiomas para Windows, Linux, iPhone etc.
Categorías:- Acústica fonética
- Lingüística computacional
- Procesamiento de voz
- Robótica
- Sintetizadores
- Software para Windows
- Tecnologías de apoyo en la discapacidad
Wikimedia foundation. 2010.