Uso de algoritmos genéticos para optimizar contextos en sistemas de reconocimiento del habla

Share on facebook
Share on twitter
Share on linkedin

Introducción

Los sistemas de reconocimiento automático del habla (ASR por sus siglas en
inglés) son usados en la actualidad por muchas aplicaciones para permitir a las per-
sonas comunicarse de manera verbal con las máquinas. Estos sistemas reciben
señales de audio como entrada y devuelven transcripciones de texto como salida,
utilizando un modelo acústico y un modelo de lenguaje. En algunos casos la transcripción resultante de este proceso sufre de errores al reconocer palabras o frases poco comunes en el modelo de lenguaje utilizado para generar el sistema ASR.

Figura 1. Sistema de reconocimiento del habla

En SoldAI hemos atacado este problema mediante algoritmos de pos-procesamiento de los resultados obtenidos por un ASR. El método desarrollado realiza correcciones utilizando la representación fonética del texto y un contexto conformado por un diccionario de palabras y frases propias del dominio de aplicación.

Nuestra experimentación previa utilizó el alfabeto fonético internacional (IPA por sus siglas en inglés) para la representación del texto, y una estrategia de ventana deslizante (WIN) para la búsqueda de coincidencias entre los elementos del contexto y segmentos candidatos de la frase a corregir. El contexto fue construido a partir de las palabras y frases que se observó no eran adecuadamente reconocidas por el ASR.

Con esta estrategia implementamos un sistema corrector de reconocimiento del habla que puede ser adaptado a diferentes dominios de aplicación mediante la construcción de un contexto especializado. A este sistema corrector lo nombramos como phonetic corrector o simplemente phoco.

En la práctica, los resultados de aplicar el phoco a diferentes aplicaciones
han sido satisfactorios, sin embargo, se consideró la posibilidad de extender y
mejorar dicho método, experimentado con diversas variantes de cada uno de
los componentes principales del mecanismo: transcripción fonética, método de
selección de frases candidatas, métrica de distancia de cadenas y modalidad de
corrección del ASR.

Además de lo anterior, consideramos una estrategia para mejorar el rendimiento
del sistema corrector por medio del uso de un contexto óptimo obtenido mediante algoritmos genéticos.

Variantes del phoco

Para comprender el trabajo realizado con el algoritmo de corrección es importante señalar cuales son las variantes experimentales con las que se trabajó:

Representación fonética de texto. La representación fonética es un sistema de sı́mbolos gráficos que representan los sonidos del habla humana. La experimentación fue realizada para comparar que representación resulta de mayor utilidad al corregir los errores del ASR. Se compararon las representaciones IPA, Double Metaphone (DM) y una versión modificada de Double Metaphone (DMV) que no descarta las vocales, además del uso de texto simple (TXT).

Generación de frases candidatas. Durante el proceso de corrección se usan segmentos de la frase a corregir, con los cuales se genera un conjunto de frases candidatas a ser sustituidas por un elemento del contexto, según el parecido fonético que tengan entre sı́. Se experimentó con los algoritmos de ventana deslizante (WIN), búsqueda incremental por caracteres (LET) o por sı́labas (SYL). Los algoritmos de búsqueda incremental toman segmentos crecientes de la frase mientras su tamaño sea comparable al de algún elemento del contexto, ya sea en sı́labas o caracteres.

Métricas de distancia. La métrica de distancia de edición es utilizada para comparar dos cadenas de texto. En la primera versión del phoco se utilizó exclusivamente la distancia de Levenshtein (LEV), mientras que en está nueva versión se experimentó además con la Alineación Óptima de Cadenas (OSA) y una variante denominada Damerau-Levenshtein (DL).

Servicio de voz a texto. Se utilizó el ASR de Google bajo dos modalidades, la básica (BAS) en la cual solo se envı́a el archivo de audio a transcribir y la contextual (CON) donde se envı́a un conjunto de frases para mejorar su reconocimiento.

Optimización del contexto con algoritmos genéticos

Los Algoritmos Genéticos (AG) son herramientas de búsqueda estocástica que permiten la optimización de problemas complejos. Están inspirados en técnicas de selección natural y evolución biológica que resultan útiles para encontrar soluciones creativas a problemas difı́ciles.

El algoritmo de corrección fonética que desarrollamos para la mejora del reconocimiento
en dominios especı́ficos, tiene como uno de sus componentes más importantes el contexto, que representa aquellas frases y palabras que debemos de utilizar para corregir las transcripciones erróneas resultantes de un sistema ASR.

Utilizamos AG para la optimización del contexto con el fin de hallar una combinación de
palabras y frases óptimas para la corrección de errores en el ASR. El AG se parametrizó por medio de una función de fitness que devuelve la tasa de error global (WER) obtenida por el algoritmo de corrección utilizando el contexto a evaluar.

El cromosoma se modeló utilizando unigramas y bigramas de las frases reales que los usuarios decı́an al generar los ejemplos de entrenamiento. Se utilizó una estrategia de cruce por medio de un punto de cruce aleatorio y la selección se realizó con una estrategia de torneo de 5 individuos.

La mutación se realizó gen a gen con cada uno de los individuos generados y se realizó a nivel binario, es decir aquellos genes que se encontraban establecidos a 1 se convertı́an a su valor de 0 y aquellos en 0 a su valor de 1.

Experimentación

Como datos de entrada para la experimentación se usaron 451 archivos de audio conteniendo frases relacionados con el levantamiento de pedidos de una pizzerı́a real. Esta aplicación es interesante puesto que el menú de la pizzerı́a contiene combinaciones de palabras poco comunes en español, ası́ como extranjerismos y frases en otros idiomas.

En la búsqueda de una configuración óptima para el phoco se realizaron experimentos con las 72 variantes que resultan de la combinación de los elementos mostrados en la tabla 1.

REPRESENTACIÓN TEXTOGENERACIÓN FRASESMÉTRICA DISTANCIAMODO GOOGLE
IPAWINLEVBAS
DMLETOSACON
DMVSYLDL
TXT

Tabla 1.  Variantes de configuración para cada elemento del phoco.

Para cada variante de configuración se realizó el proceso de corrección a cada una de las 451 transcripciones resultantes del servicio de voz a texto de Google en ambas modalidades (BAS y CON).

La forma más común de evaluar los resultados de un sistema de reconocimiento del habla es por medio de la métrica WER, la cual es similar a la distancia de Levenshtein pero considerando palabras completas en lugar de caracteres. Mientras menor sea la distancia entre dos frases más parecidas son y por lo tanto más precisa es la transcripción, por tal motivo una transcripción totalmente correcta corresponde a un WER=0.La figura 2 muestra resultados promedio en el WER utilizando las diferentes representaciones fonéticas conforme se varı́a el umbral de distancia. El umbral de distancia es un parámetro que indica que tan estricta tiene que ser la similitud entre la frase del contexto y el segmento de la cadena a corregir. Las lı́neas horizontales representan el WER calculado con las transcripción sin corregir del servicio de Google en su modalidad básica (33.7% en azul) y contextual (31.1% en naranja). Se observa que los mejores resultados se obtienen con la representación IPA (27.8%) con un umbral de 0.4.

Figura 2.  WER promedio para diferentes representaciones de texto

Los algoritmos de búsqueda que presentaron mejores resultados fueron los de búsqueda incremental por letras o sı́labas, obteniendo el WER promedio mı́nimo (29.4%) con un umbral de 0.4. La figura 3 muestra el WER promedio por cada método. A pesar de presentar un desempeño similar los métodos de búsqueda incremental por letras y sı́labas, el primero es preferible debido a que presenta un menor costo computacional debido a que no realiza la transformación y conteo de sı́labas.

Figura 3.  WER promedio para diferentes métodos de búsqueda

No se encontró una diferencia importante al cambiar las métricas para calcular la distancia de edición, lo cual se puede apreciar en la figura 4.

Figura 4.  WER promedio para diferentes métricas de distancia

En general parece que el umbral de distancia que resulta más efectivo es el valor de 0.4, pues con este se obtienen de manera consistente los WER promedio más bajos, de 33.7% a 28.1% partiendo de la transcripción básica y de 31.1% a 27.3% partiendo de la transcripción contextual. El umbral 0.4 conjuntamente con la representación fonética IPA, el método de generación de candidatos por tamaño incremental basado en letras (LET) y la distancia de Levenshtein (LEV) fue la configuración que presentó un mejor desempeño para el contexto utilizado.

Pero entonces ¿cómo estar seguros de que el contexto es el correcto?

Para intentar optimizar el contexto se experimentó con algoritmos genéticos. Se realizaron cinco ejecuciones del experimento alcanzándose un WER promedio mínimo de 24.9% en la generación 100, partiendo de un WER promedio de 31.2%.

En la figura 5 se muestran los errores promedio de las 100 generaciones en la quinta ejecución del experimento. El mejor contexto encontrado quedó conformado por 64 unigramas y 117 bigramas con un WER total de 24.7%.

Figura 5.  Error por generación en la quinta ejecución del experimento

Resultados

Con nuestra estrategia experimental se obtuvo una mejora importante en el WER global del 11.9% utilizando el contexto optimizado genéticamente y la mejor combinación encontrada después de experimentar con las variantes del algoritmo de corrección fonética. El resultado resulta valioso pues nos permitió duplicar la mejora en comparación del primer planteamiento de resolución del problema además de encontrar una técnica que permita aprovechar tanto el conocimiento a priori del dominio como la interacción con los usuarios reales para modificar y mejorar el reconocimiento. Esta investigación fue presentada en el XI Congreso Mexicano de Inteligencia Artificial (COMIA 2019).

Share on facebook
Share on twitter
Share on linkedin

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


*

*

¡Conozcámonos mejor!

Súmate a nuestra newsletter donde además de ofertas exclusivas y novedades de SoldAI estaremos envíandote noticias y tendencias del mundo de la tecnología e Inteligencia Artificial.

¡Entérate de todo!