715 Zenbakia 2017-01-11 / 2017-02-01

Gaiak

Técnicas para mejorar un analizador sintáctico estadístico para el euskara

BENGOETXEA KORTAZAR, Kepa



Resumen de tesis doctoral Motivación

Hoy en día, la mayoría de la información está almacenada y procesada en los ordenadores. Para que el tratamiento informático de la información se realice de manera correcta, es necesario comprender el lenguaje humano.

Para llevar a cabo la tarea de comprender bien el idioma, se debe trabajar en los diferentes niveles de lenguaje (morfología, sintaxis, semántica, etc.) desarrollando herramientas y recursos. Por ejemplo: una base de datos léxica, analizadores morfológicos, analizadores sintácticos, y así sucesivamente.

Para poder entender y expresar una idea utilizamos frases, y para comprender una frase es necesario que las palabras que la forman cumplan un orden establecido por el idioma, es decir, que dependan de la sintaxis del idioma. Por ejemplo, en caso de que se escriba la frase “Blanco y o tiene”. Esta frase tiene cuatro palabras bien conocidas, pero si se juntan de esta manera, la frase carece de significado. Para poder detectar que las frases cumplen esta primera condición es necesario utilizar analizadores sintácticos. Sin embargo, el uso de los analizadores sintácticos se está extendiendo a diferentes áreas: análisis semántico, correctores gramaticales, recuperación de la información, preguntas y respuestas, traducción automática...

El rendimiento de los analizadores de lenguaje estadísticos ha mejorado tremendamente durante las dos últimas décadas, y ahora hay un gran número de sistemas que se pueden usar para generar analizadores para nuevos idiomas y nuevas aplicaciones. Esto incluye analizadores de constituyentes como el Analizador de Stanford o el Analizador de Berkeley, y también incluye analizadores de dependencias como MaltParser y MSTParser.

Los analizadores de dependencias están proliferando debido a que las conferencias recientes e importantes, incluyen sesiones dedicadas al análisis de dependencias en los que los investigadores han tenido, y tienen, la oportunidad de mostrar sus contribuciones. Un ejemplo claro, puede encontrarse en las Tareas competitivas de la décima y la undécima Conferencia de Aprendizaje Computacional del Lenguaje Natural (CoNLL en sus siglas en inglés, Conference of Computational Natural Language Learning).

Para poder entender y expresar una idea utilizamos frases, y para comprender una frase es necesario que las palabras que la forman cumplan un orden establecido por el idioma, es decir, que dependan de la sintaxis del idioma. Objetivo

El objetivo general del estudio es obtener un analizador sintáctico para el euskara de amplia cobertura. En este estudio se ha analizado en profundidad los generadores de analizadores de dependencias estadísticos que son el estado del arte. Se han obtenido diferentes analizadores sintácticos básicos para el euskara, optimizando los diferentes parámetros configurables que tienen los generadores de analizadores sintácticos: diferentes algoritmos sintácticos, modelos de aprendizaje y modelo de características.

Después de obtener diferentes analizadores básicos, y para mejorar la exactitud, se han aplicado diversas técnicas extendidas que han sido exitosas en otros idiomas, adaptándolas a las características lingüisticas propias del euskara. Las técnicas extendidas aplicadas son las siguientes: Técnicas de transformación para ciertas estructuras de dependencias. A la hora de representar ciertas relaciones de dependencias sintácticas en el treebank, existe una gran controversia. Por ejemplo, en los verbos auxiliares, si el verbo principal tiene que ser su gobernador o su dependiente; en los determinantes si este debe de ser gobernador o dependiente del nombre; en la coordinación, como representar la conjunción de dos o más componentes, si asignar el primer componente como gobernante, o en su lugar el último componente. En el momento de etiquetar el treebank podemos decidir entre varias teorías de etiquetado diferentes. Estas teorías afectan en el resultado del analizador de dependencias, es por ello, que podemos probar con diferentes tipos de teorías realizando transformaciones sobre los árboles de dependencias. Nosotros hemos probado las siguientes transformaciones: proyectivas y no proyectivas, diferentes transformaciones para representar la coordinación y la subordinación, así como transformaciones del sintagma nominal. Combinación de analizadores mediante stacking: Stacking es un método donde un analizador aprende de otro, utilizando la salida de ambos analizadores y utilizándola para el entrenamiento del otro mediante el uso de una pila. En este trabajo, para combinar los dos analizadores, la estructura de dependencias obtenida de la salida del primer analizador, se utiliza para enriquecer la entrada del segundo analizador basándonos para ello en ciertos principios lingüísticos del euskara.

Después de haber obtenido diferentes analizadores básicos y diferentes analizadores extendidos, se ha experimentado combinándolos utilizando la técnica de combinación mediante el sistema de votación. La idea es que cada analizador vota cual es la opción más apropiada para cada palabra, y de ese modo, la opción más votada es la seleccionada a la hora de construir el árbol de dependencias. Para analizar el impacto de la variedad de factores se han combinado en 2 grupos, por un lado se han combinado diferentes analizadores sintácticos básicos, y por otro lado se han combinado varios analizadores básicos y extendidos.

Todas pruebas se han realizado utilizando tanto información morfosintáctica manual obtenida por un grupo de lingüistas e información morfosintáctica automática extraida utilizando un analizador y un desambiguador morfológico automático cuyos resultados serían comparables a los obtenidos en una situación real. Principales conclusiones

Los resultados obtenidos después de aplicar las diferentes técnicas se pueden ver en la tabla 1. Los resultados han sido evaluados utilizando la medida Labeled Attachment Score (LAS) que mide el porcentaje de palabras evaluables para los que el sistema ha predicho el padre y la etiqueta de dependencias correctamente. Analizadores

Sintácticos Información morfosintáctica manual Información morfosintáctica automática

El mejor analizador básico

80,17

77,88

Técnicas de transformación

80,87

79,09

Stacking

80,77

78,55

Combinación por votación:grupo analizadores básicos

82,99

81,17

Combinación por votación:grupo analizadores básicos + extendidos

84,02

82,40

Tabla 1. Tabla de resultados obtenidos con las diferentes técnicas

En la primera fila se muestra el mejor resultado obtenido con los diferentes analizadores sintácticos básicos para el euskara, optimizando los diferentes parámetros configurables. Como se puede observar el uso de información morfosintáctica automática (obtenida de la salida del desambiguador morfosintáctico) provoca errores en la salida del analizador sintáctico.

En la segunda y tercera fila se muestran los resultados obtenidos después de aplicar las técnicas extendidas de transformaciones y stacking. En general las transformaciones y stacking son técnicas que son beneficiosas pudiéndose aplicar en casos reales, es decir, utilizando información morfosintáctica automática.

Y finalmente en la cuarta y quinta fila se muestran los resultados después de utilizar la combinación por votación. Se puede apreciar que el introducir técnicas extendidas en la combinación enriquece la salida del sistema combinado, obteniendo el mejor resultado en un sistema real de 82,40, mejorando respecto al mejor analizador base en 4,52 puntos.