PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA...

32
Anexo Proyecto 20080449 PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA NÁHUATL Resumen El proyecto presenta el diseño y captura de corpus de voces para la lengua Náhuatl. De los corpus diseñados se completó el correspondiente a los dígitos del cero al 20 para 5 personas. Se realizó el etiquetado, por palabras y fonemas del corpus de dígitos. En el proyecto se realizó el etiquetado y reconocimiento de un corpus de dígitos en español que sirve de contraparte con el objetivo de realizar la traducción de pa labras en lenguaje Náhuatl al lenguaje Español y viceversa. Se probaron todas las opciones de reconocimiento que ofrece el sistema HTK, las cuales serán aplicadas al corpus de dígitos en lenguaje Náhuatl. Se extrajeron parámetros para el reconocimiento no utilizados en el sistema HTK como es el caso de los coeficientes MELSPEC y se usaron para ver sus resultados en el reconocimiento en cadenas ocultas de Marka (HMM). Los resultados de todo los experimentos realizados se publicaron en diferentes revistas y congresos. Se realizó el estudio y diseño de un sintetizador de voz por el modelo de formantes, con el cual se garantiza a futuro la salida de voz sintética de los sistemas de traducción que se realicen. Introducción Este proyecto de investigación propone encontrar la solución a un problema existente de comunicación entre comunidades autóctonas de México que utilizan el lenguaje Náhuatl hablado, como medio principal de intercambio de información (no el lenguaje escrito), y personas que hablan el español. La comunicación y transmisión de información directa entre personas utiliza como medio principal la Voz y el Habla y en su forma más avanzada la escritura. Mediante estas formas de comunicación se realiza el intercambio de información y la adquisición de conocimientos. Los idiomas, en la inmensa mayoría de los casos, son diferentes para cada país e incluso en regiones diferentes dentro de un mismo país, todo lo cual plantea una problemática no resuelta y que provoca dificultades para el acceso a toda la comunidad y humanidad a una relación adecuada con sus semejantes. Podemos enfatizar que la falta de una comunicación de información adecuada, afecta de una manera sumamente sensible a las comunidades más atrasadas de cada país, siendo estas por lo general, las que tienen un menor nivel escolar, un dominio escaso del idioma y niveles de marginación más alto. Es una prioridad de los países con estas problemáticas dar solución de comunicación a estas comunidades e incorporarlas a los beneficios que sectores más adelantados de la sociedad. La dependencia de utilizar traductores de idiomas y dialectos, es la solución actual para dar solución a esta comunicación, pero con los avances obtenidos en las técnicas de

Transcript of PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA...

Page 1: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Anexo Proyecto 20080449 PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA NÁHUATL Resumen El proyecto presenta el diseño y captura de corpus de voces para la lengua Náhuatl. De los corpus diseñados se completó el correspondiente a los dígitos del cero al 20 para 5 personas. Se realizó el etiquetado, por palabras y fonemas del corpus de dígitos. En el proyecto se realizó el etiquetado y reconocimiento de un corpus de dígitos en español que sirve de contraparte con el objetivo de realizar la traducción de pa labras en lenguaje Náhuatl al lenguaje Español y viceversa. Se probaron todas las opciones de reconocimiento que ofrece el sistema HTK, las cuales serán aplicadas al corpus de dígitos en lenguaje Náhuatl. Se extrajeron parámetros para el reconocimiento no utilizados en el sistema HTK como es el caso de los coeficientes MELSPEC y se usaron para ver sus resultados en el reconocimiento en cadenas ocultas de Marka (HMM). Los resultados de todo los experimentos realizados se publicaron en diferentes revistas y congresos. Se realizó el estudio y diseño de un sintetizador de voz por el modelo de formantes, con el cual se garantiza a futuro la salida de voz sintética de los sistemas de traducción que se realicen. Introducción Este proyecto de investigación propone encontrar la solución a un problema existente de comunicación entre comunidades autóctonas de México que utilizan el lenguaje Náhuatl hablado, como medio principal de intercambio de información (no el lenguaje escrito), y personas que hablan el español. La comunicación y transmisión de información directa entre personas utiliza como medio principal la Voz y el Habla y en su forma más avanzada la escritura. Mediante estas formas de comunicación se realiza el intercambio de información y la adquisición de conocimientos. Los idiomas, en la inmensa mayoría de los casos, son diferentes para cada país e incluso en regiones diferentes dentro de un mismo país, todo lo cual plantea una problemática no resuelta y que provoca dificultades para el acceso a toda la comunidad y humanidad a una relación adecuada con sus semejantes. Podemos enfatizar que la falta de una comunicación de información adecuada, afecta de una manera sumamente sensible a las comunidades más atrasadas de cada país, siendo estas por lo general, las que tienen un menor nivel escolar, un dominio escaso del idioma y niveles de marginación más alto. Es una prioridad de los países con estas problemáticas dar solución de comunicación a estas comunidades e incorporarlas a los beneficios que sectores más adelantados de la sociedad. La dependencia de utilizar traductores de idiomas y dialectos, es la solución actual para dar solución a esta comunicación, pero con los avances obtenidos en las técnicas de

Page 2: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

reconocimiento de voz y lenguaje natural, mediante el uso de computadoras personales, proponer y ofrecer, en primera instancia, una solución automatizada acotada para atención pública al acceso de servicios e información, es una realidad hoy en día. Existen diferentes plataformas comerciales y desarrolladas en centro de enseñanza e investigación para realizar el reconocimiento de voz. Salvo contadas excepciones, los diferentes programas para procesar la señal de voz, no están disponibles en su código del lenguaje en que se ejecutan, lo cual hace muy reiterada la programación de estos procesos para su uso en cada aplicación con fines diferentes a los que el centro que los elaboró los utiliza. Para el preprocesamiento de la señal voz los procedimientos típicos son: filtrado, pre-énfasis y autocorrelación. Para la extracción de parámetros característicos tenemos: LPC (coeficientes de predicción lineal, CLPC (coeficientes cepstrales de la predicción lineal), MFCC (coeficientes cepstrales a partir del espectro de frecuencia), coeficientes espectrales en escala Mels, cálculo de los niveles de energía y sus diferencias. Respecto a los métodos y modelos para el reconocimiento de voz, ya son bastante conocidos: HHM (cadenas ocultas de Markov), NN (Redes neuronales), DTW (alineamiento dinámico en tiempo), Mixturas Gaussianas. Hay sistemas como el Matlab que proporcionan herramientas para su ejecución, pero no ofrecen el código abierto. Disponer de una biblioteca de códigos ejecutables y reutilizables para el procesamiento de voz es algo muy deseable. Automatizar la atención en servicios de trámites personales, en los sectores público y privado, para personas que no hablan el español o no lo escriben, mediante la interacción del personal usuario con un sistema informático inteligente traductor, el cual atiende el servicio que se brinda para esos fines, de manera oral o escrita sin intervención humana. Materiales y métodos Para la ejecución del proyecto se requirió del estudio y comprensión del código ejecutable del sistema HTK V3, en todas las unidades de ejecución que se corresponden con el procesamiento de voz, así como su comparación con los códigos de los programas ya desarrollados en el CIC-IPN. Se realizó una selección y programación de los módulos de programas que realizan el preprocesamiento y aquellos que realizan la extracción de parámetros característicos de la señal de voz. Se estudiaron los programas que realizan el modelo de las cadenas ocultas de Markov como método principal de reconocimiento de voz. Metas: Meta 1. Estudio fonético y léxico de la lengua Náhuatl. Creación de los corpus de voces (dígitos): palabras y preliminar de frases acotadas del

Page 3: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

lenguaje. Meta 2. Versión preliminar del sistema de reconocimiento de palabras habladas aisladas y su traducción entre los idiomas utilizados: Náhuatl y Español. Uso del HTK. Meta 3. Salida hablada de los resultados de la traducción de palabras (síntesis de voz) en idioma Español. Meta 4. Publicación y divulgación de los resultados obtenidos. Resultados por metas: Meta 1. Estudio fonético y léxico del lenguaje Náhuatl.. El Náhuatl La palabra Náhuatl proviene del verbo náhuatl: sonar claro, con armonía, lo que suena bonito. El náhuatl es suave, con una estructura basada en sonidos naturales que busca el equilibrio con nuestro entorno. Características: Para entender el náhuatl, hay que saber que: El náhuatl es un idioma hablado. El náhuatl es una lengua madre. El náhuatl tiene una fonética sencilla. En el náhuatl ninguna palabra se acentúa (tienen acento prosódico), ya que la pronunciación es grave y su acentuación está en la penúltima silaba. El náhuatl es aglutinante. El náhuatl es metafórico. Originalmente los aztecas escribieron el idioma de tres formas: en dibujos que se llaman glifos, en símbolos (el sol representa una fuerza o energía divina) y por describir la naturaleza, ejemplo: Atzala (atl + tzala), el agua que pasa por medio. Después de la conquista, los sacerdotes españoles hicieron transcripciones de los sonidos del náhuatl usando el alfabeto castellano. Alfabeto para el náhuatl: Vocales: a, e, i, o Semivocales o semiconsonantes: hu-uh, y Consonantes: c, h, l, m, n, p, q, t, x, z. ch, ll, tl, tz, No se utilizan las letras: b, d, f, g, j, k, ñ, r, s, u, v, w. Pronunciación: Es posible transcribir casi todos los sonidos con el alfabeto español con pocas excepciones. Estos sonidos se escriben con este alfabeto con un pequeño cambio en la pronunciación para formar el sonido correcto. Vocales:

Page 4: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

La pronunciación de las vocales es similar a la del español, pero varía su duración la figura 1, ilustra esta característica.

Figura 1. Pronunciación de vocales náhuatl. Semivocales o semiconsonantes: La semivocal (hu-uh) parece tener dos sonidos: sonoro (al principio de las sílabas), pronunciada como la semiconsonante inicial de la palabra inglesa watch, y sorda (al final de las sílabas), con el sonido inicial de la palabra inglesa which. La segunda semiconsonante (y), tiene la misma pronunciación de la y en el español. Consonantes: Solo cinco consonantes utilizadas en el náhuatl no tienen pronunciación semejante en español: h Esta consonante tiene dos sonidos: h muda como en español, sin sonido (como en Nahuatl), y h “saltillo” (explosiva laríngea), que suena como una “j” o a veces como “c” y causa una pausa en la palabra (como en Cuauhtla). Cuando “h” precede un diptongo (ua, ui, etc) es la “h” muda. Si no, es la h saltillo. ll Se pronuncia como una sola “l”, pero larga (como en calli, que se pronuncia cali pero con la l mas alargada). x Se pronuncia “sh” (como en México, que se pronuncia como me-shi-co). tl Suena igual que en español pero es un sonido fuerte, producido como el sonido t, pero dejando salir el aire por los lados de la lengua en lugar del centro. Cuando esta dentro de una palabra, se combina el sonido con el sonido siguiente. Cuando está al fin de una palabra, es un sonido muy corto pero fuerte. tz Se pronuncia como “ts”. como si se empezara a pronunciar la t y se terminara dejando salir el aire con la lengua en posición para producir el sonido s.

i o

i

a

e a

e bajas

altas largas

cortas

delanteras traseras

Page 5: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Nota: En el Náhuatl lo importante es el sonido, no la escritura con el alfabeto español. Se puede escribir una palabra en maneras diferentes con tal que se pronuncie correctamente. Se puede poner un guión ( - ) en una palabra para ayudar en la formación del sonido. Esto no importa y no cambia la palabra. El sonido es el que importa. Los números en Náhuatl El sistema de números del náhuatl se base en 20. No hay 0. Se cuenta hasta 20, después hasta 20 x 20 que es 400, después hasta 20 x 400, 400 x 400, etc. Siempre se expresan los números en grupos de 20 o 400. 1 ce 2 ome 3 yei (o ei) 4 nahui 5 macuhilli 6 chicuha-ce (chic + uha + ce) 7 chic-ome (chic + ome) 8 chic-ueyi 9 chic-nahui 10 matlahtli (o mahtlahtli) 11 matlah-ce (matlah + ce) 12 matlah-ome 13 matlah-yei 14 matlah-nahui 15 caxtolli 16 caxtol-ce 17 caxtol-ome 18 caxtol-yei 19 caxtol-nahui 20 cempohualli Se forma una cuenta, entonces desde 20 hasta 40 se añade 20 + huan (más) + (1, 2,3,... 19) 21 cempohualli (20) + huan (más) + ce (1) => cempohualli-huan-ce 29 cempohualli-huan-chicnahui 30 cempohualli-huan-matlahtli 40 om-cempohualli (literalmente dos veces veinte) ome + cempohualli (2 x 20) 50 om-cempohualli-huan-matlahtli 60 yei-cempohualli (3 x 20) 70 yei-cempohualli-huan-matlahtli 80 nahui-cempohualli (4 x 20) 90 nahui-cempoalli-huan-matlahtli 100 macuhil-cempohualli (macuhilli + cempohualli) (5x20) 200 (10x20) matlah-cempohualli => matlahtli+cempohualli 300 caxtol-cempohualli 400 (20 x 20) centzontli => cempohual+cempohualli... otra cuenta: un cabello o el ave de las 400 voces 500 centzontli-huan-macuhil-cempohualli 600 (400 + 10 x 20) centzontli-huan-matlah-cempohualli 700 centzontli-huan-caxtol-cempohualli 800 om-centzontli 900 om-centzontli-huan-macuhil-cempohualli

Page 6: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

1000 om-centzontli-huan-matlah-cempohualli 1999 (4x400+19x20+9) nahui-centzontli-huan-caxtol-nahui-cempohualli-huan-caxtol-nahui 8000 xiquhipilli (una bolsa) = 20x400. Números ordinales. Se forman los números ordinales con ipan- más el número: primero => ipan-ce segundo => ipan-ome tercero => ipan-yei cuarto => ipan-nahui Pero: Yo llego primero. => ocachto (Nehuatl ni-ahzi ocachto.) Yo llegué después. => zatepa (Nehuatl o-ni-ahzi-co zatepa.) Números proporcionales. Se forman los números proporcionales por quitar la terminación del número y añadir el sufijo -pa: • una vez => zapa • dos veces => opa • tres veces => ixpa • cuatro veces => nauhpa • cinco veces => macuhilpa • seis veces => chicuhacepa • siete veces => chicomepa • ocho veces => chicuhyeipa • nueve veces => chicnauhipa • diez veces => matlatlipa Números fraccionales Se forman los números partitivos (las fracciones) con el número más el número proporcional: • 1/4 => ce-nahui-pa • 1/2 => ome-nahui-pa (2/4) • 3/4 => yei-nahui-pa Corpus de dígitos en Náhuatl. Para crear el corpus de dígitos en náhuatl primero tenemos que especificar que características deben tener las grabaciones. Se deberá grabar de preferencia con el software: WaveStudio de Creative o con algún otro pero, con las siguientes características: En formato wav A una frecuencia de muestreo de 16000 KHz A 16 bits por muestra. En Mono. De preferencia con un micrófono unidireccional.

Page 7: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Es importante que se grabe en un lugar ausente de sonido, con un buen ajuste de la ganancia, buena sensibilidad del micrófono, con el mismo volumen de pronunciación y dejando un silencio razonable entre cada palabra. Se realizaron 40 grabaciones por persona de los números base de la numeración náhuatl (del 1 al 20), el nombre de los archivos será: muestra, seguido del número de grabación (ejemplo: muestra11.wav), se guardaran en carpetas con el nombre de la persona grabada. Dígitos en náhuatl. 1 ce 2 ome 3 yei (o ei) 4 nahui 5 macuhilli 6 chicuace 7 chicome 8 chicueyi 9 chicnahui 10 matlahtli 11 matlahce 12 matlahome 13 matlahyei 14 matlahnahui 15 caxtolli 16 caxtolce 17 caxtolome 18 caxtolyei 19 caxtolnahui 20 cempohualli No olvidar que son palabras graves con acento en la penúltima silaba ejemplo: chicuáce, chicnáhui, matláhtli, matláhyei, caxtólli, caxtolóme, cempohuálli.

Page 8: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Meta 2. Versión preliminar del sistema de reconocimiento de palabras habladas aisladas y su traducción entre los idiomas utilizados: Náhuatl y Español. Uso del HTK. Introducción Su propósito es simular al máximo la apariencia habitual de los artículos para las memorias de congresos. Para los detalles que no abarca este instructivo diríjase al texto de cualquier memoria de congreso. En los últimos años se ha avanzado en gran medida en el desarrollo de sistemas que simplifiquen la interacción entre el hombre y la máquina. Uno de estos desarrollos es por medio de la voz. Ejemplos de sistemas controlados por voz son: el marcado telefónico, el control de elementos mecánicos o robóticos, la selección de servicios mediante palabras, etc. El uso de este tipo de tecnología puede crear la posibilidad de que la población en general (incluyendo personas étnicas y/o con discapacidad física) puedan usar las computadoras, y equipos con un mínimo de problemas. Un SARH es una herramienta computacional capaz de procesar y reconocer la información contenida en la señal de voz. En este proceso, las palabras pronunciadas son adquiridas como señales eléctricas, luego son digitalizadas e interpretadas por el sistema, el cual extrae patrones o parámetros característicos de esta señal, para finalmente realizar una clasificación y el reconocimiento. La importancia de utilizar patrones o parámetros característicos de una señal y no la señal misma radica en el ahorro respecto al manejo de gran cantidad de datos además de un bajo consumo de procesamiento de la información analizada. Aún así, estos parámetros necesitan tener la capacidad de extraer un conjunto limitado de coeficientes que representen de la manera mejor posible los aspectos relevantes del espectro a corto tiempo de la señal de voz. En la literatura se pueden encontrar diversos trabajos relacionados, en donde muestran algunas comparaciones con parámetros característicos de la señal de voz [7] [8], estos tratan la comparación mas general pero son aplicados en ambientes telefónicos o son dependientes del locutor. En este trabajo se usaron los parámetros que mejor resultado han dado con una de las mejores técnicas para su clasificación y reconocimiento, además de probarla con diferentes locutores. La organización del artículo es la siguiente. En la sección 2, se hará una breve descripción de las tareas a realizar para un trabajo de reconocimiento de voz. En la sección 3 se describen los patrones o parámetros característicos que se compararan. En la sección 4 mostraremos el software y el modelo utilizado para la clasificación y reconocimiento de dígitos en español. A continuación, en la sección 5 mostraremos los resultados de las pruebas realizadas. Finalmente, en la sección 6 se presentan las conclusiones y se mencionan los trabajos a futuro.

Page 9: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

I. TAREAS NECESARIAS PARA EL RECONOCIMIENTO DE VOZ.

Todo trabajo de reconocimiento de voz requiere de un conjunto de tareas, las cuales se ejecutarán de preferencia en secuencia e independientemente del objetivo a alcanzar [1]. Estas tareas se enlistan a continuación:

A. Preparar y crear un Corpus de Voces a utilizar en el trabajo. B. Definir, preparar y realizar el pre procesamiento que será aplicado a los archivos del

Corpus. C. Seleccionar, diseñar y programar los algoritmos y métodos que se utilizarán para la

extracción de parámetros a utilizar en el reconocimiento de voz. D. Entrenar el sistema. E. Verificar el grado (%) de aceptación del sistema (reconocimiento).

A. El Corpus de Voces

El Corpus de Voces es el conjunto de archivos con información de voz digitalizada, del cual se extraerán el conjunto de parámetros con los cuales se entrenará y comprobará el sistema desarrollado.

1. Condiciones para obtener un corpus de calidad Es muy importante, durante la etapa de grabación de sonidos, tener en cuenta las condiciones del lugar; distancia al micrófono; ajuste de la ganancia y sensibilidad del micrófono. Para este trabajo, se utilizó un corpus de grabaciones obtenidas de 8 personas adultas, 2 mujeres y 6 hombres, en formato wav a 16000 Khz., 8 bits, Mono, con un micrófono unidireccional, empleando el software WaveStudio de Creative, las cuales se resumen en: 40 grabaciones de números del 0 al 9 de cada persona, 20 grabaciones para entrenamiento y 20 grabaciones para reconocimiento.

B. El pre procesamiento La etapa de pre procesamiento es común para el posterior trabajo del sistema en las etapas de entrenamiento, verificación y trabajo cotidiano del mismo. Su importancia radica en una serie de pasos que normalizan las características en el dominio del tiempo de las señales de voz grabadas o captadas directamente desde un micrófono. Estos pasos son:

1. Pre enfatizar la señal. 2. Detectar inicio y fin de palabra.

1. Preénfasis. El pre enfatizado es para restaurar la pérdida que sufre la señal de voz en sus componentes de alta frecuencia, por efecto de propagación y radiación al salir de la cavidad

Page 10: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

bucal a través de los labios al ambiente exterior. Se realiza pasando toda la señal a través de un filtro pasa alta de un solo coeficiente, figura 2. El filtro queda de la siguiente manera:

)1(*)()( −−= nxanxny (1) Donde: y es la señal pre enfatizada. x es la señal de entrada. a el coeficiente del filtro, 0.90 = a = 0.95. n el número total de nuestras. El valor de coeficiente que se utilizó para este trabajo es de 0.95

2. Detectar inicio y fin de palabra. La detección de inicio y fin de palabras, se realiza tomando en cuenta la actividad de energía y cruce de ceros de la señal y(n), con respecto a los valores que se tienen en condiciones de silencio, ruido ambiente. La variación del cruce de ceros es principalmente motivo de la emisión de una señal explosiva (‘p’, ‘t’, ‘k’, ‘b’) o ruido aleatorio (‘s’, ‘f’, ‘ch’, ‘j’, ‘z’). La variación de energía ocurre en presencia de vocales (‘a’, ‘e’, ‘i’, ‘o’, ‘u’), semivocales (‘m’,’n’, ‘ñ’, ‘w’, ‘d’, ‘l’, ‘g’, ‘y’).

C. Parámetros característicos y modelos para un sistema SARH Este podría ser el paso más importante en lo que se refiere al reconocimiento de voz, ya que es aquí en donde se debe seleccionar cuales son los parámetros característicos que mejor representan una señal de voz y después el mejor método para su reconocimiento. A través de la historia las diferentes investigaciones referidas al reconocimiento de la voz nos han dejado que los parámetros que mejores resultados han dado son: LPC, LPC CEPSTRUM, MFCC, Entre otros. Así mismo el modelo para el reconocimiento de voz que mejores resultados ha dado es el basado en la técnica de análisis estocástico: Modelos Ocultos de Markov (HMM : Hidden Markov Models). Para este trabajo en particular, no se diseño, ni se programo los algoritmos para la extracción y reconocimiento de estos parámetros, puesto que el trabajo se centra en probar estos parámetros en el modelo markoviano y determinar cuáles son los que entregan mejor resultado.

Page 11: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

D. Entrenar el sistema

El entrenamiento del sistema se realiza tomando una cantidad significativa de archivos que conforman el corpus (usualmente la mitad), los cuales se utilizan para inicializar y después ajustar los patrones que servirán de referencia al sistema. La técnica utilizada para el entrenamiento, es diferente, dependiendo del modelo escogido.

E. Verificar el grado (%) de aceptación del sistema (reconocimiento). Una vez realizado el entrenamiento se realizará la verificación, esto es, se tomarán los archivos restantes del corpus y de acuerdo a la respuesta del sistema, se verificará el acierto de reconocimiento midiéndolo en su porcentaje de aciertos. El mejor resultado se obtendrá si su procesador de palabras cuente con varios tamaños de letra. Use los tamaños de letra especificados en la tabla I. Times New Roman es el tipo de letra preferido.

II. PATRONES O PARÁMETROS CARACTERÍSTICOS DE LA SEÑAL DE VOZ.

A. LPC (Lineal Prediction Coefficients) Esta técnica ha probado ser muy eficiente debido a la posibilidad de dividir la señal con un número pequeño de patrones con los cuales es posible reconstruirla adecuadamente. Estos parámetros van cambiando poco a poco en función de la señal en el tiempo Otra ventaja es que no necesita demasiado tiempo de procesamiento [2]. El modelo matemático sugiere que el tracto vocal puede modelarse mediante un filtro digital, siendo los parámetros los que determinan la función de transferencia.

∑ =−−=

p

k k nxknyGany1

)(*)(**)( (2).

∑ =−+

= p

kk

k za

GzH

1*1

)( (3).

Esto consiste en que, dado un segmento de palabra, se extraen sus parámetros que en este caso vienen a ser los coeficientes del filtro. Si aplicásemos en vez de este sistema la transformada discreta de Fourier (FFT), se podría observar que coinciden en las resonancias que vienen a ser las que caracterizan el contenido en frecuencia de la señal, pero el espectro de Los parámetros LPC del mismo

segmento de señal de voz se caracteriza por tener contornos más suaves que la respuesta de frecuencia de Fourier, se podría decir que "suaviza" el espectro.

Page 12: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

B. LPC CEPSTRUM

Si se parte de un modelo LPC estable de la señal de voz.

∑ =−+

= p

kjwk

k ea

GwS

1

2

|*1|)( (4)

Es fácil comprobar que los coeficientes cepstrales de los LPC responden a la siguiente recursión:

0),()( <−−−−−−−= nparancnc (5).

)ln()0( 2Gc =

1)1( ac −=

pnparacanmanc mnm

n

mn =−−−−−−−−−= −

=∑ )(

1

1**)1()( (6).

pnparacanm

nc mnmp

m>−−−−−−−−= −=∑ )(1

**)1()( (7).

Este cepstrum es conocido como cepstrum LPC (LPCC). La envolvente espectral que se obtiene filtrando y transformando este cepstrum es una versión suavizada del espectro LPC, que ya es en sí mismo una estimación de la envolvente de la señal de voz. Debido a que el modelo LPC pondera de forma especial los picos del espectro, esta envolvente tiende a seguir los picos de forma más estricta que la envolvente espectral obtenida a partir del cepstrum calculado directamente a partir de la señal utilizando FFT [3]. C. MFCC (Mel Frequency Cepstrum Coefficients) Los coeficientes Cepstrales en Frecuencia en Escala de Mel (MFCC) son una representación definida como el cepstrum de una señal ventaneada en el tiempo que ha sido derivada de la aplicación de una Transformada Rápida de Fourier, pero en una escala de frecuencias no lineal, las cuales se aproximan al comportamiento del sistema auditivo humano [4]. Dada una Transformada Discreta de Fourier de una señal de entrada. Se distribuye el comportamiento espectral en bandas de frecuencia mediante un banco de filtros con los que se calcula el promedio del espectro alrededor de cada frecuencia central.

Page 13: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

III. MODELO PARA LA CLASIFICACIÓN Y RECONOCIMIENTO DE VOZ.

A. Hidden Harkov Models (HMM’s)

En un modelo estadístico se puede considerar que la señal de voz se puede caracterizar de manera apropiada mediante un proceso aleatorio, y que los parámetros del proceso estocástico pueden ser determinados de manera precisa y bien definida. Las Cadenas Ocultas de Markov (HMM) es un excelente modelo para este trabajo; la teoría básica de las HMM fue publicada en una serie de artículos clásicos por Baum y sus colegas a finales de los 60’s e inicios de los 70 y se utilizó por primera ocasión para el reconocimiento de voz por Baker en CMU, y por Jelinek y colegas en IBM en los años 70 [5. Por conveniencia, usamos la notación compacta:

( )πλ ,, BA= (8) Donde: ? representa el modelo. A representa la matriz de distribución de probabilidad de cada estado de transición. B representa la matriz de observación de los símbolos de la distribución de probabilidad p representa la matriz de distribución del estado inicial

B. HTK

HTK, (Hidden Markov Model Toolkit). Es un conjunto de herramientas de software para diseñar y manipular HMM. Originalmente fue creado para aplicarlo al desarrollo de sistemas SARH. Ahora puede utilizarse en cualquier área del conocimiento, la única restricción es que el problema a resolver pueda ser enfocado como un proceso de modelación Estocástico Markoviano.

C. Funcionamiento de HTK

HTK dispone de una arquitectura flexible y autosuficiente. La utilización de cualquier herramienta disponible depende de dos aspectos: Módulos de librerías y Línea de comandos.

D. Cada librería es un conjunto de instrucciones para lograr una función específica con las herramientas disponibles. Hay librerías comunes a todos los comandos y otras son específicas.

E. Entrenamiento de los HMM

Page 14: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Básicamente, consiste en actualizar los valores de los parámetros del modelo markoviano, mediante diferentes algoritmos y, con ello, conseguir modelos más ajustados a la realidad. HInit detectar los diferentes fonemas ayudado por las etiquetas, posteriormente, utiliza el algoritmo de Viterbi [2], para la estimación de las medias y varianzas. HRest utiliza el algoritmo de Baum – Welch [2], (re estimación de los parámetros de los modelos aislados). Este modo de entrenamiento debe realizarse de modo iterativo, para cada fonema del conjunto.

F. Verificación del sistema. Al invocar la herramienta HResults, ésta compara las etiquetas de entrada y salida del archivo Master Label File (MLF) o archivo de etiquetas maestro, en este archivo se encuentran las transcripciones de los datos reconocidos con los de los datos de prueba ingresados, realizando el cálculo de las tasas de reconocimiento y error cometido por el reconocedor dando lugar a una matriz de confusión de los distintos HMM. Los resultados en el HTK, los da a conocer un archivo de salida, siendo fundamental el porcentaje de reconocimiento figura 8. La primera línea SENT, representa el resultado de la tasa de reconocimiento de oraciones. La segunda línea WORD presenta el resultado de la tasa de reconocimiento a nivel de palabra. En la segunda línea Acc, representa el porcentaje de exactitud de la tasa de reconocimiento. La letra H representa el número de etiquetas reconocidas de forma correcta, S el numero de errores por sustitución, N el número total de etiquetas definidas en los archivos de configuración, D es el número de errores por omisión y finalmente I el número de errores por inserción.

Figura 1. Ejemplo de un archivo de salida de HTK con la herramienta HResults.

IV. RESULTADOS

Las pruebas se realizaron configurando el software HTK con los parámetros LPC, LPC CEPSTRAL y MFCC variándolos con 4, 5 y 6 estados.

Page 15: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Las pruebas se realizaron con grabaciones de números del 0 al 9 de 8 personas adultas, 2 mujeres y 6 hombres las cuales se resumen en: 40 grabaciones de números del 0 al 9 de cada persona, 20 grabaciones para entrenamiento y 20 grabaciones para reconocimiento. Se utilizaron 32000 archivos de voz, de los cuales se obtuvieron 9600 parámetros característicos y 28800 modelos markovianos.

V. CONCLUSIONES

Los resultados obtenidos con parámetros LPC, fueron en general los de más bajo reconocimiento desde un 61.81% con 4 estados hasta un 99.5% con 6 estados. Por otra parte los LPC CEPSTRAL desde 90% con 4 estados, hasta 100% 1 vez con 5 y 2 veces con 6 estados, están a la par con los MFCC que tienen desde 90% con 4 estados, hasta 100% con 5 y 6 estados 3 veces en cada uno. El aumento de estados mejora en la mayoría de los casos el reconocimiento, siendo con 6 estados donde se obtienen mejores resultados. Los mejores resultados se obtuvieron con los parámetros MFCC, con cualquier número de estados probados, dando la mejor combinación con los de 6 estados. Por lo que se concluye que estos son los mejores parámetros característicos de una señal de voz para ser utilizados en un sistema de reconocimiento del habla, al menos en los parámetros empleados en este trabajo. En un próximo trabajo se darán a conocer los resultados obtenidos utilizando más variantes en los parámetros y el reconocimiento silábico en español.

Page 16: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Meta 3. Salida hablada de los resultados de la traducción de palabras (síntesis de voz) en idioma Español. Introducción Un sistema para la síntesis de voz consta a grandes rasgos de dos bloques el front-end o de procesamiento de lenguaje natural y generación de parámetros y el back-end o sintetizador.

1. MÓDULO FRONT-END Esta etapa es completamente dependiente del idioma. Además del módulo de conversión grafema fonema y el generador de prosodia que parecen imprescindibles de entrada, aparece un bloque completo de procesos relacionados con el análisis morfosintáctico (figura 3.1), debido a la necesidad de que exista procesamiento sintáctico en los conversores de alta calidad.

Figura 1 Sistema TTS con etapa front-end detallada En español, la conversión de grafema a fonema es relativamente simple, por la existencia de reglas bien definidas, pero no sucede lo mismo en otros idiomas, en los que la transcripción fonética detallada sólo es posible si se conoce la categoría gramatical de la palabra considerada, y ésta depende del contexto sintáctico en el que se encuentre. Igualmente, la prosodia natural depende fuertemente de la sintaxis (y de la semántica y pragmática, pero dadas las limitaciones de la tecnología actual en esas últimas dos disciplinas, los sistemas de TTS se concentran fundamentalmente en la sintaxis), aunque no muchos sistemas actuales utilizan el análisis sintáctico completo. 1.1 MÓDULO DE PROCESAMIENTO DE TEXTO El módulo de procesamiento de texto tiene una serie de funciones bien definidas, con el objetivo de generar una salida textual normalizada para su procesamiento posterior:

Page 17: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

§ Un módulo de preproceso que identifica números, abreviaturas, acrónimos, expresiones idiomáticas y los transforma en texto cuando es necesario, encargándose igualmente de deshacer ambigüedades de puntuación (para detectar finales de frase, por ejemplo). Veamos algunos ejemplos:

• Si aparece el número 1234 y hay que pronunciarlo, el preprocesador lo convertirá en la secuencia mil doscientos treinta y cuatro o una secuencia de números aislados, para lo cual el usuario receptor de la información debe de estar preparado a concatenarlos en su cerebro al recibir la información. • Si aparece algo como 8/4/68 el preprocesador lo deberá identificar como una fecha y convertirlo en ocho de abril de mil novecientos sesenta y ocho. • Si aparece algo como 22 Km., el preprocesador identificará la abreviatura de unidad de longitud y lo convertirá en veintidós kilómetros.

§ Un módulo de análisis morfológico, cuya misión es proponer las categorías gramaticales a las que pertenece cada palabra. Por ejemplo la palabra blanca puede ser tanto adjetivo como nombre común, y el número 1956 en enero de 1956 tiene categoría de año, totalmente distinta de la que tendría en 1956 papas (objetos). § Un módulo de análisis contextual, que considera las palabras en su contexto y permite reducir la ambigüedad en la asignación de categorías gramaticales del paso anterior. § Finalmente, un analizador sintáctico y de prosodia, que examina el texto recibido y trata de encontrar su estructura y así identificar las partes sobre las que debe recaer el foco de atención en la voz generada, lo que implicará un cambio en el patrón de entonación (energía, frecuencia fundamental y duración), tener en cuenta los signos de puntuación (comas, dos puntos, punto y coma, punto y seguido, punto y aparte, etc,). Igualmente, busca los límites entre los distintos grupos fónicos, que son los segmentos de frase pronunciados de forma continua entre dos tomas de aire (es decir, nuestro conversor texto a voz tiene que saber respirar).

En algunos casos es posible también la inclusión de un módulo de análisis semántico, lo que nos ayudaría a detectar con mayor precisión las zonas susceptibles de recibir el foco de atención en la frase. 1.2 MÓDULO DE CONVERSIÓN GRAFEMA-FONEMA El modulo de conversión de grafema a fonema transforma la secuencia de letras recibidas en una secuencia de sonidos reales (alófonos). En español dichas reglas son bastantes regulares pero no sucede lo mismo en otros idiomas (por ejemplo, la pronunciación de las palabras inglesas though, cough o through son diferentes a pesar de tener la misma terminación). Ello implica que en algunos idiomas es posible que se necesite construir diccionarios de pronunciación, lo que no es una tarea fácil, por varios motivos:

Page 18: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

§ Los diccionarios convencionales sólo se refieren a la pronunciación de las palabras raíz, no sus derivadas, lo que implica introducir conocimiento sobre la morfofonología del idioma considerado. § Algunas palabras tendrán varias entradas en el diccionario (por ejemplo, la palabra inglesa read se pronuncia de forma distinta según sea presente o pasado). § Las palabras pronunciadas en el contexto de una frase pueden modificar su pronunciación. § Finalmente, es muy posible que nuestro diccionario no disponga de todas las palabras de un idioma, con lo que habrá que hacer frente a la aparición de palabras desconocidas y tratar de estimar una pronunciación adecuada.

Así, las aproximaciones tradicionales al problema de la conversión de grafema a fonema son dos: Las basadas en el uso de diccionarios de pronunciación, en las que se podría tener el repertorio completo de las palabras del idioma, aunque típicamente se recurre al uso de entradas basadas en morfemas, para conseguir limitar los requisitos de memoria necesarios y mantener el tamaño del diccionario en un nivel razonablemente pequeño. Además del diccionario en sí, suelen incorporar reglas morfológicas para extraer la descomposición en morfemas de cada palabra y módulos de post-proceso que se encargan de, entre otras cosas, tener en cuenta las reglas de coarticulación y suavizado entre palabras contiguas. Las basadas en reglas de transcripción, que inevitablemente requieren también de bases de datos de excepciones y de los módulos de post-proceso comentados anteriormente Obviamente, la solución no es única, y hay todo un abanico de posibilidades entre los dos extremos. La solución adecuada depende de diversos factores, comenzando por el idioma del que se trate, la disponibilidad de memoria, los requisitos de calidad, etc. 1.3 MÓDULO DE GENERACIÓN DE PROSODIA La prosodia es un concepto complejo, mezcla de efectos físicos y fonéticos que los humanos utilizamos para expresar una actitud o emoción determinada y hacer énfasis en aquellas zonas de la frase pronunciada que consideramos más importantes. Desde el punto de vista físico, ya hemos comentado cómo el término prosodia se refiere a propiedades de la señal de voz relacionadas con cambios apreciables en el tono fundamental, el volumen, las pausas y la duración. Las características prosódicas tienen un importantísimo impacto en la comunicación oral y son uno de los aspectos fundamentales de cara a conseguir naturalidad en las voces sintéticas. El efecto más apreciable de la prosodia es la asignación del foco de atención de la frase, pero el hecho de que un sistema de conversión de texto a habla no haga un uso sofisticado de la información prosódica no quiere decir que disminuya su inteligibilidad. En la actualidad hay multitud de estrategias para la asignación de características prosódicas. Por ejemplo, para la asignación de duraciones, se usan típicamente modelos multiplicativos, en los que la duración de un alófono es el resultado de multiplicar una duración base típica, por una serie de factores que dependen de elementos morfosintácticos calculados en los

Page 19: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

módulos previos (como por ejemplo el acento, la posición en la frase, la longitud del grupo fónico, la velocidad media de locución deseada, etc.). También se han aplicado técnicas basadas en redes neuronales en la que es una de éstas la que genera el valor de duración a partir de los parámetros de entrada seleccionados. Para la asignación de la frecuencia fundamental, los modelos más sencillos aplican un modelo lineal por tramos, en el que se introducen variaciones sobre el tono base en función del tipo de frase (interrogativa, enunciativa, exclamativa), del grupo fónico al que se aplica, el acento, etc. Técnicas más avanzadas incluyen el uso de redes neuronales o el entrenamiento de contornos de tono fundamental a partir de bases de datos de voz previamente grabadas. Una vez que se ha determinado la estructura sintáctica y prosódica de la frase, es necesario todavía obtener la duración precisa de cada fonema, de los silencios, y de los valores de tono a aplicar, lo que, de nuevo, no es una tarea fácil. 2. MÓDULO BACK-END Este módulo que es completamente independiente al idioma podríamos llamarlo más exactamente modulo de síntesis de voz, ya que es el que realiza el proceso de generación (síntesis) final de la señal de voz artificial. Intuitivamente, las operaciones implicadas en el módulo de síntesis de voz serían análogas a las que controlan dinámicamente los elementos articulatorios de los pulmones, cuerdas vocales y tracto vocal. Desde esa perspectiva, este módulo debería tener una base teórica fundamentada en la fonética articulatoria o en la fonética acústica, y prestar especial atención a las zonas de transición entre fonemas, ya que es en ellas donde está la información más importante contenida en el mensaje hablado (la síntesis de zonas estables es relativamente fácil de conseguir). Esta filosofía ha dado lugar a dos grandes clases de sistemas de síntesis de voz: § Los basados en reglas, que se basan en el conocimiento de los procesos de fonación y la voz es generada por reglas matemáticas explícitas que describen formalmente la influencia de unos fonemas en otros. § Los basados en concatenación de unidades, en los que asumiendo nuestro limitado conocimiento sobre el sistema articulatorio y su complejidad, optan por almacenar unidades elementales de voz pregrabada para posteriormente concatenarlas adecuadamente para producir la señal de voz deseada.

Genéricamente, a los primeros se les deno mina sistemas de síntesis por regla y a los segundos, sistemas de síntesis por concatenación. Actualmente la síntesis es dominada por tres sistemas, que dependiendo de los requerimientos de la aplicación, debemos decantarnos por uno u otro. Para sustentar esta idea, en los siguientes puntos vamos a describir brevemente a cada uno de ellos.

Page 20: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

2.1 MODELO ARTICULATORIO Los sintetizadores articulatorios proporcionan voz sintética de alta calidad, pero su inconveniente es que los parámetros son muy difíciles de obtener y controlarlos automáticamente. La onda de voz es la respuesta al sistema de filtros del tracto vocal para una o más fuentes de sonido. Esta afirmación, expresada en terminología de acústica e ingeniería eléctrica, implica que las ondas de voz tiene especificaciones únicas en términos de fuente y características de filtrado [2]. La síntesis articulatoria determina las características de filtro del tracto vocal por medio de la descripción de la geometría del tracto vocal (como el tamaño de la cavidad oral, la tráquea y la posición de la lengua, entre otras variables) y coloca las fuentes sonoras dentro de esta geometría. Estos factores se relacionan entre sí para producir una voz que se asemeje en la mayor medida de lo posible a la voz humana. Esta aplica señales armónicas a la señal sonora y establece una analogía entre parámetros relacionados con los órganos articulatorios, sus movimientos y características.

Figura.2 Estructura básica de un sintetizador de voz articulatorio Dependiendo del sintetizador, la geometría del tracto vocal puede ser descrita en una, dos o tres dimensiones. El modelo unidimensional representa al tracto vocal directamente por medio de su función de área. La función de área, describe como el área que representa al tubo de la zona vocal varía entre la glotis y la abertura de la boca. Asumiendo una propagación unidimensional en el tracto, la función del área contiene toda la información para especificar las características del filtro. Por lo tanto, con respecto a la simulación acústica, los modelos bidimensional y tridimensional de la zona vocal también se transforman finalmente en una función unidimensional del área. La ventaja de los modelos multidimensionales es que la forma y posición de los articuladores se pueden especificar de una manera muy directa. Los articuladores artificiales de estos modelos son generalmente controlados por medio de un pequeño conjunto de parámetros articulatorios. La variación de estos parámetros en el

MODELO ACÚSTICO

MODELO ARTICULATORIO

Parámetros de la fuente

Voz sintética

Función de área del tracto vocal

Page 21: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

tiempo permite que la función de área del tracto vocal cambie durante una pronunciación. Un modelo acústico se utiliza para calcular la onda de voz a partir de la secuencia de las funciones de área y sus fuentes de sonido correspondientes. En resumen, un sintetizador articulatorio necesita por lo menos lo siguiente: § Una descripción geométrica del tracto vocal basada en un conjunto de parámetros articulatorios. § Un mecanismo de parámetros de control durante cada palabra. § Un modelo para la simulación acústica, incluyendo la generación de las fuentes de sonido.

La entrada para la simulación acústica es generalmente un segmento constante de la función de área, correspondiendo a una zona del tracto vocal integrada por varias secciones cilíndricas de un tubo, según lo ilustrado en el figura 3. La figura muestra cómo la zona vocal es excitada mediante una función glotal de la velocidad del volumen (fuente acústica) e irradia una onda acústica de la presión en los orificios nasales y la abertura de la boca.

Figura.3 Modelo tridimensional del tracto vocal El problema principal de los modelos articulatorios es la enorme cantidad de parámetros internos de control que precisan y dificultan la coordinación y derivación de los parámetros de control disponibles a la entrada del sintetizador; y por otro lado, la gran cantidad de información que se necesita obtener analizando (en un espacio tridimensional) la posición y el movimiento de los órganos articulatorios de una persona que habla normalmente, cosa muy difícil de medir en estas condiciones. La idea que fundamenta a este sintetizador nos hace pensar que es el más adecuado para alcanzar plenamente los objetivos del back-end; sin embargo, aún no se ha logrado modelar correctamente a cada una de las funciones de área, por lo cual pensamos que aunque actualmente no es el sistema que entrega mejores resultados, la constante mejora de sus características lo llevará a ser el sistema dominante. 2.2 MODELO POR CONCATENACIÓN La idea de la concatenación es producir voz mediante la conexión de sonidos pregrabados, con lo cual se logra un sonido de voz inteligible y natural. Sin embargo, los sintetizadores

Page 22: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

por concatenación están limitados a un sólo parlante, el cual debe grabar todas las unidades de habla que el sistema vaya a emplear. El tamaño de dichas unidades está en función de la naturalidad que se pretenda alcanzar, esto es, para conseguir una mayor naturalidad es preferible emplear unidades grandes. El tipo de unidad a concatenar es un parámetro crítico para conseguir una buena calidad de la voz sintetizada: hay que llegar a un equilibrio entre la calidad intersegmental posible (a mayor longitud de los segmentos, menos puntos de concatenación y por lo tanto mayor calidad) y la cantidad de memoria necesaria para almacenar las unidades pregrabadas. Los trozos grabados no deben ser palabras por dos motivos fundamentales. En primer lugar, la pronunciación de una frase es muy diferente a la de una secuencia de palabras recitadas aisladamente, ya que en una frase las palabras tienen una duración más corta que cuando están aisladas y el ritmo, entonación y acentuación, que dependen de factores semánticos y sintácticos, son totalmente antinaturales cuando se concatenan palabras grabadas aisladamente. Un segundo problema son las innumerables palabras existentes en un idioma, si tenemos en cuenta por ejemplo los nombres propios, así como la formación de palabras mediante sufijos, prefijos y conjugaciones. La sílaba es una unidad interesante lingüísticamente, pero hay un gran número de ellas. Otra unidad probada es el fonema, cuyo número es menor de 30, pero el resultado de concatenar fonemas no es satisfactorio debido a efectos coarticulatorios entre fonemas adyacentes que producen cambios de las manifestaciones acústicas de un fonema dependiendo del contexto. Los efectos coarticulatorios tienden a minimizarse en el centro acústico de un fonema, lo cual llevó a proponer el difonema (TTS PSOLA), el trozo de voz que va desde la mitad de un fonema a la mitad del siguiente fonema, como la unidad más satisfactoria para la concatenación. En español se pueden considerar unos 900. Además puede ser necesario introducir alófonos diferentes para hacer la distinción entre las vocales acentuadas y átonas o la inclusión de trifonemas, que son una extensión a agrupaciones de tres fonemas cuando los efectos de coarticulación son tan grandes que no es posible la segmentación en difonemas. Aunque este sistema es el que más recursos computacionales requiere se ha vuelto cada vez más popular, en parte debido a que su implementación no es tan complicada (pero si muy laboriosa), y a que los sistemas de cómputo cada vez son más veloces y accesibles, lo mismo con las memorias. Sin embargo los parámetros de la voz como el tono fundamental no puede ser modificado; así como la fuente de los locutores del que se extrajeron sus características, no puede ser variada en su esencia. Se considera que este sistema es una buena opción para aplicaciones que requieren buena inteligibilidad, naturalidad, un limitado vocabulario y que sea suficiente con uno o dos locutores. 2.3 MODELO POR FORMANTES Estos sintetizadores se basan en la teoría acústica de producción de voz, que en su forma más sencilla, dice que es posible ver la voz como el resultado de la excitación de un filtro lineal con una o más fuentes sonoras.

Page 23: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Una aproximación simplificada en el mecanismo de producción del habla en el dominio acústico fue propuesto a finales de los 50’s y fue llamado “source-filter model”. En este modelo, el sistema de producción de voz está dividido en dos: § Fuente de excitación § Tracto de resonancia

Estas dos partes asumen una “no interacción” y una conexión linear. Los formantes son las resonancias del tracto vocal. Un sintetizador por formantes reproduce la estructura de formantes del tracto vocal. En los 60’s, aparecieron los primeros sintetizadores discretos hechos con formantes. Los resonantes fueron implementados en configuraciones de serie o paralelo. Flanagan (1957) concluyó que la forma serie es mejor para reproducir sonidos sonoros, y los no nasales; mientras que la estructura en paralelo es mejor para los sonidos nasales, y los no sonoros. En 1980 aparece el sistema combinado serie/paralelo de Klatt. Esta configuración, realizada para mejorar la capacidad de reproducir sonidos nasales y no sonoros del sistema. Este tipo de sintetizadores tiene una amplia difusión pero la calidad de la voz sintetizada es menor [Montero, 2002]. Aunque con el modelo serie/paralelo, usando una apropiada especificación de las variables de síntesis y una correcta configuración, es posible obtener una voz sintetizada de alta calidad. En la figura 6 se presenta este modelo ya modificado. El factor más importante para lograr una síntesis de voz de alta calidad es la extracción de los parámetros de síntesis, aplicando adecuados procedimientos de análisis a una señal de voz. La mayoría de estos procedimientos utilizan una señal acústica de voz como fuente para determinar los formantes [Alku, 1992; Childers y Lee, 1991; Klatt y Klatt, 1990; Markel y Gray, 1974; McCandless, 1974; Olive, 1971]. Otro factor importante para lograr una síntesis de alta calidad, es el diseño de la fuente de excitación [Childers, 1995; Childers y Ahn, 1995; Childers y Hu, 1994; Childers y Lee, 1991; Childers y Wu, 1990]. De los modelos de sintetizadores presentados, se eligió el modelo por formantes. Se describirá la implementación del mismo haciendo uso de la plataforma de programación de Matlab. El diseño del sintetizador se basa en la teoría acústica de la producción del habla presentada por Fant (1960). Esto es, para sonidos sonoros, la onda acústica generada por la fuente es propagada a través del tracto vocal, algunas de las frecuencias de esta señal son amplificadas y otras son atenuadas, y esto depende de la configuración particular de los órganos del tracto vocal; la posición de la lengua y de los labios, la tensión en el velo y la úvula, etc. Las frecuencias donde ocurren mayores resonancias en el tracto vocal para un sonido dado son conocidas como frecuencias formantes o sólo formantes. En la figura 4 se pueden la respuesta en frecuencia de los LPCs de la señal de excitación; dicha señal después de pasar por el tracto vocal es modificada, y en la figura 5 se observa la respuesta en frecuencia correspondiente al fonema /a/, donde claramente podemos observar los formantes.

Page 24: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Figura 4 Espectro en frecuencia de los LPCs de la señal de excitación

Figura 5 Espectro en frecuencia de los LPCs del fonema /a/

Para las resonancias se puede asumir que se comportan como un filtro solo-polos, y se pueden modelar como un conjunto de polos. Estos polos son identificados como picos en el espectro de frecuencia del sonido producido. Cuando las cavidades nasales intervienen en la producción de voz, algunas antiresonancias se presentan, a la cuales se les conoce como antiformantes. A ellas se les identifica como ceros en la función de transferencia. Por lo tanto, para los sonidos nasalizados la función de transferencia contiene polos y ceros. Cabe mencionar que los ceros también pueden aparecer en sonidos de articulación compleja como en los fricativos y en los explosivos. Existen algunas variantes de los sintetizadores que emplean dicha teoría para la producción del habla; algunos presentan excelentes características para producir determinados tipos de sonidos pero deficiencias para otros. Hay dos configuraciones típicas claramente diferenciadas. Un tipo de configuración se conoce como “Sintetizador por formantes paralelo”, para cada formante se implementa un filtro resonador conectados en paralelo, tal como lo muestra la figura 6 en su parte derecha. Cada resonador es precedido por un controlador de amplitud que determina la amplitud relativa del pico espectral. La otra configuración es conocida como “Sintetizador por formantes serie”, al igual que en el modelo paralelo, para cada formante se implementa un resonador, la diferencia radica en que los resonadores se conectan en cascada y no hay controles de ganancia independientes, figura 7 parte superior derecha.

Page 25: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

La ventaja del modelo en serie es que las amplitudes relativas de los picos para los sonidos vocalizados quedan bien ajustadas (Fant, 1956) sin necesidad de controles de amplitud individuales para cada resonador. La desventaja es que no reproduce correctamente los sonidos fricativos y explosivos, esto funcionalmente significa que el modelo no trabaja bien cuando los sonidos son producidos arriba de la laringe. Con respecto al modelo paralelo, la producción de sonidos vocalizados es más difícil de conseguir que con el modelo serie, además que requiere una mayor cantidad de parámetros. El modelo que se presenta corresponde al propuesto por Klatt en 1980, el cual es un modelo híbrido, que combina el modelo serie y el modelo paralelo, conmutando entre uno y otro según sea requerido para lograr una mejor síntesis, figura 6. Este modelo, a pesar de su longevidad sigue siendo (con algunas variantes, sobre todo en lo referente a la señal de excitación) vigente, ya que aunque no se consigue naturalidad, si produce una aceptable inteligibilidad, con la ventaja de que requiere un relativamente reducido número de parámetros para funcionar; además permite la flexibilidad de variar las características de la voz sintética de manera dinámica.

Figura 6 Sintetizador por formantes híbrido

2.3.1 FRECUENCIA DE MUESTREO DE LA SEÑAL DE EXCITACIÓN La mayor energía sonora de la voz está contenida en frecuencias de entre 80 y 8000 Hz (Dunn y White, 1940). Aun así, las pruebas con filtros pasabanda con frecuencias de corte de 5000 Hz indican que bajo dicho filtrado la inteligibilidad no se ve afectada (French y Steinberg, 1947). Por lo que la frecuencia de muestreo para la producción de voz artificial puede ser igual o superior a 10000 Hz, para producir voz inteligible, cabe mencionar que en las pruebas realizadas a frecuencias superiores a 12000 Hz no se obtuvo una mejora perceptible en la voz sintética. Por tal razón, se optÓ por emplear una fuente de excitación con una frecuencia de muestreo de 12000 Hz.

Page 26: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

2.3.2 ACTUALIZACIÓN DE PARÁMETROS La actualización de parámetros puede realizarse cada 5 ms. Aunque la voz es no estacionaria, la velocidad a la que se producen las transiciones más rápidas como en los sonidos explosivos ocurren en alrededor de los 10 ms. De hecho es posible hacer la actualización de parámetros cada 10 ms. Sin que exista un decremento perceptible en la calidad de la síntesis. 2.3.3 RESONADORES DIGITALES Un resonador digital es un filtro pasabanda especial, con un par de polos complejos conjugados ubicados en la vecindad del círculo unitario, como se muestra en la figura 10; la magnitud de la respuesta en frecuencia del filtro se ilustra en la figura 11. La posición angular de los polos determina la frecuencia de resonancia del filtro. El nombre resonador se debe al hecho que el filtro tiene una gran ganancia (“resuena”) para señales sinusoidales de frecuencia cercana a la de los polos.

Figura 10 Diagrama de polos y ceros Figura 11 Respuesta en frecuencia de un resonador Para el diseño de un resonador digital con un pico de resonancia en ? = ?0, los polos complejos conjugados se ubican en:

Además, se pueden colocar hasta dos ceros. Aunque la ubicación de éstos es arbitraria, existen dos casos de interés. Una elección posible es ubicar los ceros en el origen. La otra es ubicar un cero en z = 1, y el otro en z = - 1. Esta elección elimina completamente la respuesta del filtro a las frecuencias ? = 0, y ? = p, y es útil en muchas aplicaciones. La función de sistema del resonador digital con ceros en el origen es:

Como |H(ej? )| alcanza su máximo cerca de ?0, se elige el factor de ganancia b0 de manera que |H(ej ? 0)| = 1. Para este caso:

Page 27: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Si r=1 entonces:

p=exp(-pi*W/Fs)

y los coeficientes quedan así:

B = -2*p*cos(2*pi*F/Fs); C = p*p;

A = b0 = 1-B-C;

Donde:

§ W es el ancho de banda del formante.

§ Fs es la frecuencia de muestreo.

§ F es la frecuencia del formante.

Para determinar la frecuencia del formante debemos observar la frecuencia del pico

(formante) en el espectro de la señal de nuestro interés; para determinar el ancho de bando

del formante, tomamos el máximo del formante y descendemos 3 dB, ahora medimos al

ancho en frecuencia que existe entre la subida y la bajada del formante, todo esto se ilustra

en la figura 12.

Figura 12 Determinación de frecuencia y ancho de banda de un formante Con lo que las señales de salida quedan definidas como: y(n)=Ax(n)+By(n-1)+Cy(n-2)

Page 28: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

El siguiente diagrama a bloques ilustra la ecuación anterior:

Figura 13 Diagrama a bloques de un resonador

2.3.4 ANTIRESONADORES Un filtro antiresonador o filtro notch presenta uno o más va lles profundos —idealmente, ceros perfectos— en su curva de respuesta en frecuencia. Los filtros notch son útiles en muchas aplicaciones donde deben eliminarse algunas frecuencias específicas, por ejemplo, las componentes de 50 ciclos (inducción de la frecuencia de línea) en electroencefalogramas, etc. Para crear un cero en la respuesta a la frecuencia ±?0 basta con ubicar un par de ceros complejos conjugados sobre el círculo unitario cuya fase sea ?0 :

Por lo tanto, la función de sistema para el filtro notch es:

El coeficiente b0 se calcula de manera que:

Por lo tanto:

El inconveniente con este filtro notch (tipo FIR) es que tiene un ancho de banda relativamente grande, lo que significa que no sólo se elimina la frecuencia de interés, sino que también se atenúan (severamente) otras componentes de frecuencias vecinas. Para reducir el ancho de banda del notch se pueden incorporar polos complejos conjugados.

Page 29: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Supóngase que se ubican un par de polos en p1,2 = re±j?0 . El efecto de los polos es introducir resonancia en la vecindad de los ceros, y por lo tanto reducir el ancho de banda del notch. La función de sistema para el filtro resultante (de tipo IIR) es:

La introducción de los polos con el objeto de disminuir el ancho de banda del notch puede resultar en la aparición de un pequeño ripple (oscilación) en la banda de paso del filtro, como consecuencia de la resonancia creada por los polos. Este efecto puede ser reducido agregando a la función del sistema polos y ceros adicionales. El problema con esta solución es que no existe una regla general para eliminar el ripple, y el método se convierte en uno de prueba y error. Un punto importante a considerar es que para representar los efectos de la nasalización en el sintetizador por formantes se emplea el antiresonador tipo FIR, y para simplificarla el cálculo de coeficientes A, B y C se puede realizar de la misma manera que en el ejemplo del resonador. Luego hacemos lo siguiente: C’=-CA B’=-B/A A’=1/A, Con lo que la ecuación que modela la salida queda así: y(n)=A’x(n)+B’x(n-1)+C’x(n-2)

Page 30: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

TABLAS DE CARACTERÍSTICAS FONÉTICAS DEL ESPAÑOL En la siguiente tabla podemos ver un ejemplo de las características del comportamiento de los fonemas a, e, r y rr, dependiendo de las adyacencias con otros. Palabra Fonema

Duración Observación Palabra Fonema

Duración Observación a /a/ 0.25 solo

r /r/ 0.25 solo

alambre /a/ 0.25 antes de consonante

cornamenta /r/ 0.175 antes de consonante

alambre /a/ 0.2625 después de consonante

alambre /r/ 0.075 después de consonante

aire /a/ 0.2625 antes de vocal abierta

señorita /r/ 0.125 antes de vocal abierta

caer /a/ 0.31875 antes de vocal cerrada

cordura /r/ 0.15 antes de vocal cerrada

asa /a/ 0.325 antes de silbante

perseverante /r/ 0.2 antes de silbante

asa /a/ 0.36875 después de silbante

israelita /r/ 0.075 después de silbante

paca /a/ 0.26875 antes de explosiva

hertziana /r/ 0.16875 antes de explosiva

paca /a/ 0.30625 después de explosiva

herpes /r/ 0.16875 después de explosiva

Palabra Fonema

Duración Observación Palabra Fonema Duración Observación

e /e/ 0.25 solo

rr /rr/ 0.25 solo

elegante /e/ 0.2125 antes de consonante

* /rr/ * antes de consonante

elegante /e/ 0.25 después de consonante

* /rr/ * después de consonante

seis /e/ 0.33125 antes de vocal abierta

ruptura /rr/ 0.175 antes de vocal abierta

pelear /e/ 0.26875 antes de vocal cerrada

becerro /rr/ 0.3125 antes de vocal cerrada

espejo /e/ 0.175 antes de silbante

* /rr/ * antes de silbante

señorita /e/ 0.2375 después de silbante

* /rr/ * después de silbante

Este trabajo se realizó para 23 fonemas del español. Para cada idioma se puede realizar este trabajo de análisis del comportamiento fonético. Así se realizará para el caso del lenguaje Náhuatl para garantizar una evacuada concatenación fonética en el habla sintetizada. CONCLUSIONES Se dispone de un diseño propio de un sintetizador de voz con todos los elementos que semejan el tracto vocal en la producción fonética, back-end. Las reglas de duración de cada uno de los fonemas del español, sus anchos de bandas y variaciones del tono fundamental con que se producen; atendiendo a la duración de los mismos dentro de cada concatenación fonética.

Page 31: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Se desarrollaron un conjunto de herramientas para la medición y extracción de las características de los fonemas de cualquier idioma, teniendo en cuenta la coarticulación fonética, el front-end del idioma, el cual se trabajó inicialmente para el español.

Page 32: PROCESAMIENTO Y RECONOCIMIENTO DE VOZ EN LENGUA …sappi.ipn.mx/cgpi/archivos_anexo/20080449_6131.pdf · b, d, f, g, j, k, ñ, r, s, u, v, w. ... tz Se pronuncia como “ts”. como

Meta 4. Publicación y divulgación de los resultados obtenidos. Productos:

1. Ismael Día Rangel “Sintetizador de voz dinámico” Tesis de Maestría. CIC-IPN, D.F., México. Registro en julio 2006, puerta cerrada diciembre 2008. En proceso.

Artículos en Congreso:

1. Lectures Notes in Computer Science. “Computational Models for Aircraft’s Takeoffs Pattern Recognition”. LNCS 5197, Pp: 14 – 21, ISSN 0302-9743, ISBN-13 978-3-540-85919-2 Springer September 2008.

2. 4to. Congreso Internacional “Tendencias Tecnológicas en Computación 2008. “Analysis between different parameters used in isolated word recognition for one speaker”. Pp: 01-09. Octubre 2008. CIDETEC-IPN. D.F. México.

3. ELECTRO 2008. “Análisis y comparación de parámetros acústicos en dígitos utilizando CDHMM con diferentes estados de HTK”. Pp: 506 – 511. Octubre 2008. ITCH, Chihuahua, México.

Impacto Con los resultados alcanzados, estamos en disposición de realizar experimentación y selección de las herramientas y modelos más eficientes para la implementación de aplicaciones en el reconocimiento de vo z para diferentes idiomas, usando palabras aisladas (dígitos o comandos), utilizando diferentes plataformas de lenguaje de programación. Muchas aplicaciones de reconocimiento de voz terminan en la etapa de reconocimiento de dígitos y comandos. Con estos programas reutilizables, es posible acortar la etapa de diseño e introducción de aplicaciones. Al disponer de un corpus de dígitos en lenguaje Náhuatl y de un sintetizador de voz, ya estamos en la etapa de traducción automática del Náhuatl al español y viceversa.