Como discutimos en el Apartado 2.2, nuestro interés fundamental será establecer la validez y aplicabilidad de distintas arquitecturas, fundamentalmente las que usan sistemas basados en una estrategia integrada o no integrada, con la posibilidad adicional de realizar el proceso en una o varias etapas.
Obviamente, cualquier estudio en este terreno implica el diseño e implementación de un sistema con tales características. Así, en este apartado describiremos los sistemas desarrollados pertenecientes a cada enfoque arquitectural, sistemas que serán susceptibles de ser combinados para obtener alternativas más potentes.
Capítulo 3. Estudio de arquitecturas 3-54
3.3.1 Sistemas integrados
En el desarrollo de la tesis se han diseñado e implementado dos sistemas que usan el enfoque integrado, al combinar en un único paso la información acústica y léxica disponible (como se muestra en la Figura 3-1):
• Reconocedor basado en el algoritmo de Viterbi sobre un diccionario lineal
• Reconocedor basado en el algoritmo de un paso sobre un diccionario en forma de árbol Evidentemente, ambos sistemas producen los mismos resultados de salida, en cuanto a palabras reconocidas y tasas de reconocimiento obtenidas, pero el segundo tiene como ventaja fundamental el considerable ahorro de tiempo fruto de la compresión del espacio de búsqueda, al compartir los nodos iniciales del mismo para todas las palabras, como se discutirá en el Apartado 4.3.5 "Consideraciones de ahorro en tiempo de proceso", a partir de la página 841.
En los dos sistemas propuestos, partimos de la misma fuente de información léxica, un diccionario (organizado en forma lineal o en árbol) que guía el proceso de búsqueda acústico, no permitiéndose, por tanto, la generación de soluciones no directamente pertenecientes al diccionario
En estos sistemas se pueden utilizar distintos diccionarios (descritos en el Anexo B para cada una de las bases de datos y tareas en estudio) y, por supuesto, todas las alternativas de modelado que se discuten en el Apartado 5.1 "Selección de unidades" (modelado discreto y semicontinuo, con modelos dependientes o independientes del contexto, para distintos alfabetos).
3.3.2 Sistema no integrado
Nuestro sistema no integrado consta de dos módulos fundamentales (como puede verse en la Figura 3-2, prescindiendo de los detalles referidos al módulo de preproceso y cuantificación): el primero encargado de generar una cadena o malla de unidades elementales (usando la información acústica disponible en un repertorio de modelos de mayor o menor precisión) y el segundo encargado de comparar dicha cadena o malla con las alternativas válidas pertenecientes al diccionario elegido del dominio de la aplicación (usando la información léxico-fonética disponible como descomposición de las palabras del vocabulario en unidades elementales).
1. Recordamos la consideración, ya hecha en el encuadre científico-tecnológico, al respecto de la posibilidad de que el espacio de búsqueda se incremente si usamos ciertos modelos de lenguaje. Nos referimos en este apartado al uso en reconocedores sin intervención modelado lingüístico.
Figura 3-1: Arquitectura integrada Preproceso
y cuantificación
Arquitectura integrada
Módulo de búsqueda integrado
HMMs Codebooks VQ Duraciones Habla Diccionario Índices Texto Estads. pares
Apartado 3.3. Arquitecturas evaluadas 3-55
La gran diferencia con el enfoque integrado es la falta de un guiado o restricción del espacio de búsqueda durante el proceso de búsqueda acústica (es decir, se usa la información acústica y la del diccionario en instantes distintos), lo que repercute, como ya se ha discutido, en una menor demanda computacional a costa de un previsible incremento en la tasa de error obtenida1.
3.3.2.1 Módulo de generación de cadena fonética
Basado en el algoritmo de un paso, cuya versión básica para sistemas que usaban DTW ("Dynamic Time Warping"), puede encontrarse en [Bridle82] y [Ney84]. La versión que hemos utilizado en nuestro caso funciona síncronamente en el tiempo, lo que la hace apropiada para su implementación en tiempo real, y utiliza HMM's, como ya se ha comentado. Al algoritmo básico se le ha dotado de una serie de mecanismos adicionales:
• Integración de factores de modelado de duraciones en el proceso de búsqueda. • Aplicación del proceso de reducción o no2.
• Uso de estadísticas de pares de unidades, modificando la decisión de salto que se analiza en el algoritmo, restringiendo dicha posibilidad a aquellas unidades que puedan ser predecesoras de la que se considere en cada momento.
• Uso de modelos de silencio, lo que permite imponer o no el encadenamiento de modelos
de silencio (inicial y/o final) al principio y/o final de la secuencia de símbolos. Dicha modificación es fundamental para hacer frente a los inevitables defectos en el proceso de detección de principio y fin.
• Generación de mallas (lattices) de unidades, en lugar de simples cadenas, lo que permite incrementar las alternativas de alineamiento en el acceso léxico, lo que puede ser contraproducente si la generación es excesiva.
1. Que habrá que evaluar en cada caso, discutiendo sobre el compromiso razonable entre ambos valores: coste vs. tasa.
2. Con reducción nos referimos a la posibilidad de tomar decisiones sobre el mejor estado en cada instante, trama a trama, dejando que únicamente dicho estado pueda encadenarse con los posibles siguientes. En caso de no usar gramáticas, no existe diferencia entre ese enfoque y el hecho de no usarlo, pero su uso es crucial en caso contrario, pudiendo producir resultados totalmente erróneos.
Figura 3-2: Arquitectura no integrada
Preproceso y cuantificación Acceso Léxico
Arquitectura no integrada
Generador de cadena fonética HMMs Codebooks VQ Duraciones Costes alineamien. Cadena fonética Habla Diccionario Índices Estads. paresCapítulo 3. Estudio de arquitecturas 3-56
3.3.2.2 Módulo de acceso léxico
El hecho de estar diseñando un sistema no integrado, obliga a la inclusión de un módulo adicional de acceso léxico, que se encargue de corregir en lo posible los errores cometidos por el módulo acústico (por falta de guiado léxico) y que permita obtener un rendimiento lo más óptimo posible.
La idea es aprovechar en lo posible toda la información disponible, como por ejemplo, estadísticas de los errores cometidos, matriz de confusión entre unidades, duraciones de fonemas o de palabras, y utilizarla en un módulo de post-proceso a la salida del decodificador acústico, aunque es posible que el sistema trabaje síncronamente en el tiempo (usando técnicas de parcial traceback, como las aplicadas en [Macías92]), abriendo las puertas a sistemas más complejos en tiempo real (reconocimiento de habla continua, por ejemplo).
En nuestro caso particular, utilizamos una implementación de la opción basada en la que se presenta en [Fissore89], junto con modificaciones que aumentan el rendimiento del algoritmo [Macías92]. Se trata de un algoritmo de programación dinámica modificado para trabajar en un espacio tridimensional en el caso de que se traten mallas (lattices) de unidades en lugar de cadenas (strings). En el proceso de alineamiento se utilizan costes entrenados de substitución, inserción y borrado (siendo los dos primeros contextuales).
El módulo recibe a su entrada una cadena o malla de unidades fonéticas (que son la salida del decodificador acústico), y genera a su salida una serie de palabras candidato que el sistema clasifica como las que más probablemente representan a la cadena (malla) de entrada.
El espacio de búsqueda se organiza en forma lineal o de árbol, al igual que discutíamos en el caso de los sistemas integrados. Los resultados obtenidos son idénticos en ambos casos, salvo por la menor demanda computacional del segundo. Además, en el Apartado 4.3 "Estrategias de exploración/ búsqueda", se discutirá el uso de grafos de distintos tipos para la estructuración del espacio de búsqueda en este tipo de sistemas, como alternativa a los tradicionales.
3.3.3 Sistemas basados en hipótesis verificación
Como se discutió en el encuadre, los sistemas basados en el paradigma hipótesis-verificación tratan de obtener progresivamente versiones más refinadas de la producción de habla realizada. Su característica fundamental es ir reduciendo el espacio de búsqueda en cada caso, aplicando métodos y técnicas cada vez más complejos. Así, se invierte cada vez más esfuerzo computacional, pero sobre un espacio de alternativas más pequeño, de modo que disminuyamos el tiempo de proceso total, manteniendo las tasas de reconocimiento.
De este modo, es planteable usar cualquier combinación de los módulos o sistemas individuales vistos anteriormente. Más adelante haremos las consideraciones oportunas sobre compromisos entre tiempo de proceso y fiabilidad, pero resumiendo indicaremos aquí que se trata de encontrar la combinación óptima de etapas y de tamaños de lista de hipótesis (preselección) que maximice la tasa de reconocimiento obtenida, minimizando la demanda computacional.
La estrategia de hipótesis-verificación es extendible a sistemas multi-módulo, como se discutirá más adelante, en la que cada uno de los incluidos en la cadena funciona para el siguiente como un generador de hipótesis (módulo de preselección).
3.3.3.1 Módulo de hipótesis
A lo largo del desarrollo de esta tesis se hizo una experimentación bastante exhaustiva con los módulos desarrollados o los que se encontraban disponibles en nuestro Grupo [Macías94b]. A partir de ella, se optó por utilizar el sistema no integrado descrito en el Apartado 3.3.2, con distintas alternativas de modelado. Este sistema supone un compromiso razonable entre coste computacional y tasas obtenidas.
Apartado 3.4. Consideraciones en sistemas multi-módulo