¿Qué estrategias de inteligencia artificial son útiles para el resumen?

8

Si tengo un párrafo que quiero resumir, por ejemplo:

Ponzo y Fila fueron al centro comercial durante el día. Caminaron un buen rato, deteniéndose en las tiendas. Fueron a muchas tiendas. Al principio, no compraron nada. Después de ir a varias tiendas, finalmente compraron una camisa y un par de pantalones.

Mejor resumido como:

Hoy compraron en el centro comercial y compraron algo de ropa.

¿Cuál es la mejor estrategia de IA para automatizar este proceso, si existe? Si no lo hay, ¿es porque dependería de tener primero un recurso de información externo que informara cualquier algoritmo? ¿O es porque el problema es inherentemente contextual?

dynrepsys
fuente

Respuestas:

6

La siguiente publicación tiene un poco de matemática, que espero ayude a explicar mejor el problema. Desafortunadamente parece que este sitio SE no es compatible con LaTex:

El resumen de documentos es un problema abierto en la investigación de IA. Una forma en que esta tarea se maneja actualmente se llama "resumen extractivo". La estrategia básica es la siguiente: divida este documento en oraciones y presentaremos como resumen un subconjunto de oraciones que juntas abarcan todos los detalles importantes en la publicación. Asignar oraciónyo, 1yonorte, una variable zyo{0 0,1}, dónde zyo=1 indica que la oración fue seleccionada y zyo=0 0significa que la oración fue omitida. Entonces,zyozj=1si y solo si se eligieron ambas oraciones. También definiremos la importancia de cada oración.wyo para la oración yo y términos de interacción wyo,j entre oraciones yo y j.

Dejar Xyo ser los vectores característicos de la oración yo. wyo=w(Xyo) captura lo importante que es incluir esta oración (o los temas cubiertos por ella) mientras wyo,j=w(Xyo,Xj)indica la cantidad de superposición entre oraciones en nuestro resumen. Finalmente ponemos todo esto en un problema de minimización:

maximizar zyoyowyozyo-wyo,jzyozjS t zyo=0 0 o 1

Esto intenta maximizar el peso total de las oraciones cubiertas e intenta minimizar la cantidad de superposición. Este es un problema de programación entero similar a encontrar el conjunto independiente de menor peso en un gráfico y existen muchas técnicas para resolver tales problemas.

Este diseño, en mi opinión, captura los problemas fundamentales en el resumen de texto y puede ampliarse de muchas maneras. Discutiremos eso en un momento, pero primero, necesitamos especificar completamente las característicasw. wyo=w(Xyo) podría ser solo una función de la oración yo, pero también podría depender del lugar de la oración en el documento o de su contexto (¿Está la oración al comienzo de un párrafo? ¿Comparte palabras comunes con el título? ¿Cuál es su longitud? ¿Menciona algún nombre propio? etc)

wyo,j=w(Xyo,Xj)Es una medida de similitud. Mide cuántas repeticiones habrá si incluimos ambas palabras en la oración. Se puede definir mirando palabras comunes entre oraciones. También podemos extraer temas o conceptos de cada oración y ver cuántos son comunes entre ellos, y usar características del lenguaje como los pronombres para ver si una oración se expande sobre otra.

Para mejorar el diseño, primero, podríamos hacer una extracción de frase clave, es decir, identificar frases clave en el texto y elegir definir el problema anterior en términos de esas en lugar de tratar de elegir oraciones. Ese es un problema similar al que hace Google para resumir artículos de noticias en sus resultados de búsqueda, pero no conozco los detalles de su enfoque. También podríamos dividir las oraciones en conceptos e intentar establecer el significado semántico de las oraciones (Ponzo y Fila son personas P1 y P2, un centro comercial es un lugar P, P1 y P2 fueron al lugar P en el momento T (día Modo de transporte caminando .... y así sucesivamente). Para hacer esto, necesitaríamos usar una ontología semántica u otras bases de datos de conocimiento de sentido común. Sin embargo, todas las partes de este último problema de clasificación semántica están abiertas y todavía no he visto a nadie hacer un progreso satisfactorio al respecto.

También podríamos ajustar la función de pérdida anterior para que en lugar de establecer el equilibrio entre la importancia de la oración wyo y el puntaje de diversidad wyo,ja mano, podríamos aprenderlo de los datos. Una forma de hacerlo es utilizar campos aleatorios condicionales para modelar los datos, pero seguramente existen muchos otros.

Espero que esta respuesta haya explicado los problemas básicos que deben resolverse para avanzar hacia buenos sistemas de resumen. Este es un campo de investigación activo y encontrará los documentos más recientes a través de Google Scholar, pero primero lea la página de Wikipedia para conocer los términos relevantes

Duro
fuente