LNE2NEXI: Traductor de consultas del lenguaje natural a NEXI con analizador sintáctico
Enviado por Adiel Plasencia Herrera
RESUMEN
Para interactuar con los Sistemas de Recuperación de Información sobre documentos XML, los usuarios deben expresar tanto su necesidad de contenido como las restricciones estructurales en forma de una consulta estructurada. Históricamente, estas consultas estructuradas han sido elaboradas en lenguajes formales, tales como XPath o NEXI. Desafortunadamente, los lenguajes formales de consulta son demasiado complejos para ser utilizados por los usuarios inexpertos, y están estrechamente ligados a la estructura física subyacente de la colección de documentos XML.
La presente investigación se basa en la idea de especificar el contenido de los usuarios y las necesidades estructurales a través de consultas en lenguaje natural. Consecuentemente, se desarrolló un traductor que transforma consultas formuladas en lenguaje natural a NEXI, que incluye un parser que verifica si las consultas obtenidas están correctas sintácticamente.
ABSTRACT
To interact with information retrieval systems on XML documents, users must express both their need for content and structural constraints in the form of a structured query. Historically, these structured queries have been developed in formal languages such as XPath or NEXI. Unfortunately, formal query languages are too complex to be used by inexperienced users, and are closely linked to the underlying physical structure of the collection of XML documents.
This research is based on the idea of specifying users' content and structural needs through natural language queries. Consequently, it is developed a translator that converts natural language queries to NEXI. This translator includes a parser which checks if obtained queries are syntactically correct.
INTRODUCCIÓN
Formular una consulta en lenguaje natural y obtener una respuesta pertinente es lo que el usuario frecuente echa de menos en el proceso de recuperación de información. Además, como el lenguaje natural es la mejor manera hasta ahora para exponer nuestra necesidad de información, su uso ayudaría en gran medida a cualquier Sistema de Recuperación de Información (SRI) si la consulta se analiza correctamente.
Sin embargo, en la actualidad, las técnicas de Procesamiento del Lenguaje Natural (NLP, siglas en inglés) no están lo suficientemente desarrolladas para acercarse a la percepción humana del lenguaje, y los resultados reales aún no se ajustan a los que podríamos esperar [1].
En el caso de los SRI "tradicionales", donde los documentos se consideran solo como texto (documentos planos), los motores de búsqueda clásicos necesitan una consulta compuesta por una lista de términos o palabras claves. Redactar este tipo de consultas es muy simple para el usuario ocasional, y el valor añadido por las técnicas de NLP no vale la pena debido a la complejidad de las mismas.
Por otra parte, se han desarrollado muchas interfaces en lenguaje natural (NLI, siglas en inglés) para consultar documentos estructurados como bases de datos; la mayoría de ellos mediante la transformación del lenguaje natural al lenguaje de consultas SQL [2]. Los beneficios que se pueden obtener usando estas interfaces son mucho más altos que en la Recuperación de Información (RI) tradicional. De hecho, SQL (y cualquier lenguaje de consulta estructurado) es apenas usado por los usuarios inexpertos. Además, el empleo directo de estos lenguajes exige al usuario conocer la estructura de la base de datos (o de los documentos).
La Recuperación de Información sobre documentos XML (RI-XML) se enmarca entre estos dos dominios pues combina características de la RI tradicional y la RI sobre bases de datos. Debido a que los documentos XML separan el contenido de su estructura, los Sistemas de Recuperación de Información sobre documentos XML (SRI-XML) son capaces de retornar como respuesta a una consulta resultados más específicos dentro de un documento y no el documento en su totalidad. Para que el usuario tome ventaja de esta posibilidad se necesita una interfaz lo suficientemente flexible que recoja tanto los requerimientos estructurales como los de contenido de sus consultas. Históricamente, los SRI-XML han utilizado dos tipos de interfaces: una basada en palabras claves y otra basada en un lenguaje de consulta establecido con este fin. Los primeros son por lo general fáciles de usar, pero son incapaces de expresar las necesidades estructurales del usuario. En comparación, las interfaces basadas en algún lenguaje de consulta son capaces de expresar las necesidades estructurales de los usuarios (así como las necesidades de contenidos), pero no son prácticos para un uso operativo toda vez que son muy difíciles de utilizar, especialmente para los usuarios no expertos; además de que están atadas a la estructura física del documento [3].
El lenguaje de consultas NEXI (Narrowed Extended XPath I) [4] para la RI-XML se introdujo en el 2005 como un lenguaje derivado de XPath [5] que elimina aspectos limitantes de este e incorpora nuevas características. La diferencia más significativa con XPath es la semántica. Mientras que en XPath se define la semántica, en NEXI el motor de recuperación debe deducir la semántica a partir de la consulta.
En la literatura se reportan diversos trabajos que tratan el empleo de técnicas de procesamiento del lenguaje natural para transformar consultas a lenguajes de recuperación de información ya establecidos como XPath y sus variantes, NEXI, etc. [3, 6-14]. Sin embargo estos trabajos usan como lenguaje natural al idioma inglés y algunas de las herramientas obtenidas como resultado de sus investigaciones no son de carácter público.
Atendiendo a lo expuesto anteriormente se percibe como problema de investigación la necesidad de una herramienta que transforme consultas formuladas en lenguaje natural sobre el idioma español al lenguaje de consultas NEXI para ser usada en un SRI-XML.
De esta forma, el objetivo general del presente trabajo es desarrollar una herramienta en el lenguaje de programación Java que transforme consultas formuladas en lenguaje natural sobre el idioma español a NEXI. Para dar cumplimiento a este objetivo se plantean los siguientes objetivos específicos:
1. Desarrollar una herramienta que transforme las consultas formuladas en lenguaje natural a NEXI haciendo uso de técnicas de procesamiento del lenguaje natural.
2. Implementar un analizador sintáctico que verifique la sintaxis de las consultas escritas en NEXI y adicionarlo a la herramienta anterior.
Justificación de la investigación:
El volumen de información electrónica existente en la actualidad es extremadamente grande y crece rápidamente, por lo que cada vez son más necesarios SRI eficientes que permitan obtener en cada momento aquellos documentos que respondan a una necesidad informativa dada.
Debido a la amplia aceptación del lenguaje XML como estándar para el modelado, almacenamiento e intercambio de datos estructurados, su potencialidad para mezclar información estructurada y no estructurada, así como a las ventajas que ofrece para la RI, este formato de datos constituye el más popular para representar documentos estructurados que formarán la colección documental de un SRI estructurado.
Los resultados de esta investigación se podrán aplicar en múltiples escenarios con un impacto positivo desde el punto de vista social, educacional y económico, pues contribuirá a la incorporación en los Sistemas de Información existentes de un motor de búsqueda sobre documentos estructurados (XML), con una interfaz de consulta en lenguaje natural.
El traductor que se obtendrá podrá ser adaptado para que tenga una aplicabilidad inmediata en diversos escenarios como en la medicina, bibliotecas o repositorios científicos; permitiéndoles a los usuarios obtener información relevante sobre una colección de documentos XML formulando una consulta en lenguaje natural.
Viabilidad de la investigación:
El volumen de trabajo que implica este proyecto se puede ajustar a un período de seis meses; teniendo en cuenta que existen los equipos y recursos necesarios para su desarrollo.
Con el propósito de brindar una adecuada exposición de los resultados obtenidos en esta investigación el resto del documento queda estructurado de la siguiente manera: en el primer capítulo se repasan los conceptos generales de la RI a través del estudio de los SRI. Por la importancia que tiene para el desarrollo de esta investigación, se estudia de manera especial la RI-XML. Se realiza una breve descripción de los lenguajes de consulta y las ventajas del NLP para la RI-XML. Se
efectúa una revisión de las soluciones previas al NLP en la RI-XML, haciendo énfasis en los sistemas que traducen de lenguaje natural a NEXI.
En el capítulo dos se detalla el mecanismo de traducción utilizado para transformar las consultas del lenguaje natural español a NEXI, y se describe la implementación de un analizador sintáctico para realizar el análisis sintáctico de las consultas en NEXI. Finalmente, en el tercer capítulo se describen los aspectos fundamentales a tener en cuenta para el uso de la herramienta obtenida. Se realizan pruebas al software y se analizan las vulnerabilidades que este presenta.
CAPÍTULO 1.
INTERFAZ DE CONSULTA EN LENGUAJE NATURAL EN LOS SISTEMAS DE RECUPERACIÓN DE INFORMACIÓN SOBRE DOCUMENTOS XML
En este capítulo se repasan los conceptos generales de la RI a través del estudio de los SRI. Por la importancia que tiene para el desarrollo de esta investigación, se estudia de manera especial la RI-XML. Se realiza una breve descripción de los lenguajes de consultas y las ventajas del NLP para la RI-XML. Además, se efectúa una revisión de las soluciones previas al NLP en la RI-XML, haciendo énfasis en los sistemas que traducen de lenguaje natural a NEXI.
1.1 Introducción
La RI es una disciplina que desde hace varios años está experimentando un renovado interés debido al aumento de la disponibilidad de documentos en formato electrónico y la necesidad de obtener en cada momento aquellos que respondan a una necesidad informativa dada.
Según [15] la RI es el conjunto de acciones, métodos y procedimientos para la representación, almacenamiento, organización y recuperación de la información. El objetivo fundamental de la RI es, dada una necesidad de información y un conjunto de documentos, obtener los documentos relevantes para esa necesidad, ordenarlos en función del grado de relevancia, y presentarlos al usuario. Se define relevancia como la medida de cómo un documento se ajusta a una consulta, entendiéndose como consulta una expresión formal de la necesidad informativa del usuario.
Se habla de recuperación de información automática cuando las tareas indicadas anteriormente se lleven a cabo con un ordenador, definiendo un Sistema de Recuperación de Información como el software concebido para cumplimentarlas, cuyo objetivo fundamental es brindarle a un usuario que ha articulado una consulta toda la información que la satisfaga.
Los SRI son comparados frecuentemente con BD relacionales. Tradicionalmente, los SRI utilizan como fuentes de datos texto no estructurado, mientras que las BD son diseñadas para consultar datos relacionales: registros que tienen valores para atributos predefinidos como número de empleado, título, salario, entre otros.
Existen diferencias significativas entre los SRI y los Sistemas de Gestión de Bases de Datos Relacionales (SGBDR) en términos del modelo de recuperación, estructuras de datos y lenguajes de consulta. Algunos problemas que requieren consultar texto estructurado son manejados más eficazmente por una base de datos relacional, donde una consulta en lenguaje SQL puede ser suficiente para satisfacer una necesidad de información con altos niveles de precisión y exhaustividad. Sin embargo, muchas fuentes de datos estructurados que contienen texto son modeladas como documentos estructurados en lugar de datos relacionales. Estos documentos pueden representar obras literarias, artículos científicos, vídeos anotados, historiales médicos, entre otros [16]. Reflexionando brevemente sobre el concepto de documento, se pueden citar múltiples ejemplos en los que, a pesar de poder considerarse este como una unidad indivisible, resulta más natural tratarlo como un conjunto de partes:
Ø Un libro podría dividirse en capítulos, estos a su vez en secciones y las secciones incluso se podrían estructurar en párrafos. En caso de una obra de teatro tendríamos más divisiones: actos, escenas, discursos y líneas.
Ø Un artículo científico normalmente consta de resumen, una serie de secciones (cada una pudiendo dividirse en varias subsecciones y así sucesivamente), referencias bibliográficas, agradecimientos, entre otras.
Ø Historias clínicas de pacientes, donde se suele seguir una estructura rígida en cuanto a las partes que la componen y su orden [17].
A la búsqueda que se realiza sobre tales documentos se le denomina recuperación estructurada y los sistemas que la ponen en práctica Sistemas de Recuperación de Información Estructurada [16].
Actualmente, el estándar más difundido para representar documentos estructurados es el XML. En el contexto de la RI, los SRI cuya colección documental está formada por este tipo de documentos se denominan Sistemas de
Recuperación de Información sobre documentos XML y con estos, ha surgido un importante campo de investigación dentro de la RI estructurada que es la RI en documentos XML.
1.1.1 Recuperación de información en documentos XML
Debido a la amplia aceptación del lenguaje XML como estándar para el modelado, almacenamiento e intercambio de datos estructurados, su potencialidad para mezclar información estructurada y no estructurada, así como a las ventajas que ofrece para la RI, este formato de datos constituye el más popular para representar documentos estructurados que formarán la colección documental de un SRI estructurada.
En las secciones siguientes se presentarán los desafíos que tienen lugar en la RI- XML; las diferencias entre los documentos XML orientados a los datos y orientados al contenido, sus variantes de recuperación y las formas de presentación de las consultas.
1.1.1.1 Desafíos en la recuperación de información sobre documentos XML
En esta sección se abordaron los desafíos que trae consigo la recuperación de información cuando la colección documental está formada por documentos XML y se presentan nuevos retos que tienen lugar para este tipo de documento estructurado.
El primer desafío que presenta la RI a partir de documentos XML es que los usuarios requieren que el sistema devuelva como resultado de sus búsquedas partes de documentos (ejemplo: elementos XML) y no documentos completos como es usual en los SRI clásicos.
Un criterio para seleccionar la parte del documento más apropiada es seguir el principio de recuperación de documentos estructurados: un sistema siempre debe recuperar la parte más específica de un documento en respuesta a una consulta [18]. Este principio motiva la estrategia de recuperación que devuelve la unidad más pequeña que contiene la información buscada, y no retornar nada por debajo de este nivel. Sin embargo, esto puede resultar difícil de implementar algorítmicamente [16].
Paralelo al problema de cuáles partes de un documento retornar al usuario, aparece el problema de cuál parte del documento indexar o simplemente encontrar la unidad de indexación correcta.
En la RI no estructurada seleccionar la unidad de indexación adecuada resulta bastante simple. En cambio, en la recuperación estructurada existen diferentes variantes para definirla.
Un enfoque es agrupar los nodos en pseudo-documentos que no se solapen como se muestra en la figura 1.1. En el ejemplo, libros, capítulos y secciones se han diseñado para que constituyan unidades de indexación. La desventaja de este enfoque es que los pseudo-documentos pueden no tener sentido para el usuario porque son unidades semánticamente incoherentes.
Otro método es usar uno de los elementos más extensos como unidad de indexación; por ejemplo, el elemento libro en una colección de libros. Se pueden postprocesar los resultados de la búsqueda para encontrar para cada libro el subelemento más relevante a la consulta. Desafortunadamente este proceso de recuperación en dos partes falla en retornar el mejor subelemento para muchas consultas, debido a que la relevancia de un elemento en su totalidad no es frecuentemente un buen predictor de la relevancia de los subelementos que lo componen.
En lugar de recuperar unidades extensas e identificar los subelementos relevantes se pueden buscar todos los nodos hojas, seleccionar los más relevantes y propagarlos a elementos más extensos. Este enfoque presenta problemas similares a los del anterior: la relevancia de los nodos hojas no es frecuentemente un buen predictor de la relevancia de los elementos en los que están contenidos.
El método menos restrictivo es indexar todos los elementos. Esto tiene el inconveniente de que muchos elementos XML no tienen importancia para las búsquedas, como elementos tipográficos o números que no tienen significado sin un contexto asociado. Además, indexar todos los elementos podría inducir a que los resultados de las búsquedas sean sumamente redundantes.
El anidamiento de elementos en un documento XML suele igualmente traer problemas de redundancia a la hora de presentar los resultados al usuario y para calcular la relevancia de los términos. En la mayoría de los enfoques, los resultados contienen elementos anidados. Se pueden eliminar algunos elementos en un postprocesamiento para reducir la redundancia o se pueden colapsar los elementos anidados en la lista de resultados y resaltar los términos de la consulta para enfocar la atención del usuario a los fragmentos de texto relevantes. Otro desafío relacionado con el anidamiento es que se necesita distinguir contextos diferentes de un término cuando se calculan las estadísticas del mismo para el ordenamiento, en particular la frecuencia documental inversa. Una posible solución para esto es calcular la frecuencia documental inversa para pares término/contexto [16].
En muchas ocasiones, tienen lugar esquemas XML diferentes en una misma colección, pues los documentos XML provienen de fuentes diferentes. Este fenómeno se denomina heterogeneidad o diversidad de esquemas y representa otro desafío a tener en cuenta en la RI-XML. En [16] se presenta una explicación detallada del mismo y posibles soluciones.
EL PRESENTE TEXTO ES SOLO UNA SELECCION DEL TRABAJO ORIGINAL. PARA CONSULTAR LA MONOGRAFIA COMPLETA SELECCIONAR LA OPCION DESCARGAR DEL MENU SUPERIOR.