Sistemas de preguntas y respuestas

Un sistema Q ( sistema de respuesta a preguntas en inglés, o sistema QA ) es un sistema informático para responder automáticamente a las preguntas de los humanos, en un intercambio realizado en lenguaje natural (por ejemplo, francés). La disciplina relacionada pertenece a los campos del procesamiento automático del lenguaje y la recuperación de información . Se diferencia de la consulta del motor de búsqueda en que tiene como objetivo no solo recuperar los documentos relevantes de una colección de textos, sino también formular una respuesta muy específica a la pregunta formulada.

General

Una herramienta de preguntas y respuestas busca responder consultas, o preguntas, como "¿Cuál es el idioma más hablado en Europa?" "O" ¿Cuándo murió Luis XIV? ". Luego, el sistema utiliza técnicas de procesamiento automático del lenguaje para analizar la pregunta y encontrar una respuesta adecuada utilizando los documentos a los que tiene acceso.

Al ofrecer una serie de documentos clasificados según la estimación de su interés, el método del motor de búsqueda "clásico" obliga al usuario a realizar él mismo una clasificación posterior de los documentos relevantes, muchas de las páginas propuestas no responden a la pregunta, en ocasiones siendo inconsistente, repartido en diferentes páginas, etc. En el caso de un sistema de respuesta a preguntas, generalmente buscaremos construir una respuesta en lenguaje natural y no ofrecer al usuario una lista a veces larga de documentos.

El sistema START se puede dar como ejemplo de un sistema de respuesta a preguntas en línea.

Por lo tanto, los sistemas de preguntas y respuestas tienen 3 propósitos principales:

  1. Comprender preguntas en lenguaje natural.
    • Analice la pregunta, ¿cuál es su tipo?
    • Cual es su campo? Hablaremos de una pregunta cerrada para una pregunta relacionada con un campo específico (medicina, informática, etc.), y de una pregunta abierta que puede relacionarse con cualquier cosa y para la cual podemos apelar a sistemas y conocimientos ontológicos generales Acerca del mundo.
  2. Encuentra la información
    • Ya sea dentro de una base de datos estructurada ( especializada base de datos ), o dentro de los textos heterogéneos (búsqueda en Internet)
  3. Responde a la pregunta
    • Ya sea mediante una respuesta exacta o proponiendo pasajes que probablemente contengan la respuesta.

Para ello, utilizan estrategias de varios campos diferentes:

Cómo funcionan los sistemas de preguntas y respuestas

Hay cuatro etapas diferentes que conducen a la respuesta a una pregunta en un sistema de preguntas y respuestas: análisis de la pregunta, búsqueda de documentos, selección de pasajes, extracción de respuestas.

Análisis de preguntas

En una pregunta, se debe identificar un cierto número de elementos antes de poder abordarlos.

El tipo de pregunta

El tipo de pregunta es una categorización que se utilizará para seleccionar la estrategia para responder a la pregunta.

Podemos diferenciar entre muchos tipos de solicitudes:

Ejemplo de tipo de solicitud
Preguntas de hecho “¿Dónde se quemó Juana de Arco? "
Preguntas booleanas (sí o no) “¿Hosni Mubarak sigue siendo presidente? "
Definiciones “¿Qué significa el acrónimo HMI? "
Causas / Consecuencias "¿Por qué el mar es azul? "
Procedimientos "¿Cómo rehacer su cédula de identidad? "
Liza "Cite 3 presidentes estadounidenses"
Solicitudes evaluativas / comparativas “¿Cuál es la ciudad más grande de Francia? "
Opiniones “¿Qué piensan los franceses de Nicolas Sarkozy? "
Tipo de respuesta esperada

El tipo de respuesta esperada corresponde a la identificación del sujeto de la pregunta (a menudo desde el reconocimiento del tipo de entidad nombrada) o del tipo de oración esperada.

Ejemplo de tipo de objeto
Nadie "Quién ...", "Qué ministro ..."
Organización "Quién ...", "Qué empresa ..."
Localización "Dónde ...", "En qué región ..."
Con fecha de "Cuándo ...", "En qué año ..."
Ejemplo de tipo de oración
Explicación "Por qué ...", "Por qué razón ..."
Procedimiento "Cómo ...", "Cuáles son los pasos para ..."
Foco de la pregunta

El foco de una pregunta es la propiedad o entidad que busca la pregunta.

  • "¿En qué región se encuentra el Mont Saint-Michel  ? "
  • “¿Qué edad tiene Jacques Chirac? "
Tema de la pregunta

El tema de la pregunta es el objeto sobre el que se aborda la pregunta.

  • “¿Qué edad tiene Jacques Chirac  ? "

Búsqueda de documentos

Después de analizar la pregunta, el objetivo es encontrar documentos que puedan responder a la pregunta.

El primer paso en la búsqueda de documentos suele ser una búsqueda "clásica". Extraemos las palabras clave de la pregunta y las usamos con el motor de búsqueda de Google o en una base de datos, por ejemplo.

Ejemplos de palabras clave generadas a partir de una pregunta
Preguntas Palabras clave
"¿Quién es Chuck Norris?" " Chuck Norris
“¿Qué hace la empresa Peugeot? " Peugeot; entreprise; fabriquer
"¿Qué país invadió Irak en 1990?" " Irak; envahir; 1990
“¿Cuántos habitantes había en Francia en 2005? " France, habitants, 2005

El segundo paso es entonces seleccionar los pasajes que probablemente contengan la respuesta.

El diagrama de la derecha ilustra este proceso.

Comenzamos usando el tipo de respuesta esperada, las palabras clave de la pregunta, sus entidades nombradas para seleccionar una primera serie de pasajes. Posteriormente, se estimará la calidad de los pasajes para reajustar las palabras clave utilizadas por la consulta, en caso de ser necesario. También se tiene en cuenta el número de pases obtenidos. Si obtenemos demasiadas, restringiremos el número de palabras clave, si por el contrario no son suficientes, ampliaremos la consulta.

Una vez que se han seleccionado una serie de pasajes, se les asigna una puntuación para clasificarlos.

Un pasaje seleccionado por el motor de búsqueda se llama pasaje candidato . Un pasaje puede constar de una sola oración o de un documento completo. Un pasaje candidato puede contener o no respuestas candidatas. Por lo general, se clasifican utilizando una puntuación asignada por el motor de búsqueda .

Una respuesta candidata es una palabra o grupo de palabras generalmente del mismo tipo que el tipo de respuesta esperada y que se puede utilizar para su construcción.

pregunta ¿Quién es el padre de la reina Isabel II? → Tipo de persona
Pasajes
candidatos y respuestas de los candidatos
  • François Mitterrand y la reina Isabel II inauguran el Túnel del Canal de la Mancha.
  • La reina Isabel II se refirió a la intervención de su padre, el rey Jorge VI , 48 años antes ante el Parlamento.

Extracción de respuestas

Existen diferentes técnicas para extraer una respuesta candidata de uno o más pasajes.

Patrones de extracciones

La idea es buscar una secuencia de capas que modele la respuesta. El elemento buscado se coloca en forma de variable. Por ejemplo, si uno se enfrenta a la pregunta "¿Cuál es la capital de Estados Unidos?" ", Podemos buscar (entre otros) el patrón" X es la capital de EE.UU. ". Este enfoque se hereda de las técnicas de extracción de información .

Sin embargo, debido a las variaciones lingüísticas, suele ser fundamental utilizar muchas variaciones de cada capa:

  • Variación morfológica  : “¿Dónde está ubicada la capital de Europa  ” o “¿Dónde está ubicada la capital europea  ? "
  • Variación léxica  : "¿Cómo se llama la reina de Holanda?  " O "¿Cómo se llama la reina de Holanda  ?" "
  • Variación de sintaxis  : "Moscú tiene 9 millones de habitantes" o "Los 9 millones de habitantes de Moscú"
  • Variación semántica  : "¿Cómo murió Adolf Hitler  ?" "Donde la respuesta puede ser" Adolf Hitler se suicidó  "
  • etc.

El problema con los patrones de minería es que consumen mucho tiempo y son costosos de fabricar a mano. Una de las alternativas es utilizar métodos de aprendizaje que permitan extraerlos automáticamente del corpus. La idea es partir de un patrón determinado, luego reemplazar un elemento del patrón por una variable (un predicado o uno de los argumentos) y luego extraer del corpus un conjunto de elementos que pueden instanciar el patrón.

Por ejemplo, partiendo de <person>Steve Jobs</person> dirige <company>Apple</company>y desde el siguiente corpus:

  • Steve Jobs dirige Apple
  • Steve Jobs preside Apple
  • Steve Jobs, director ejecutivo de Apple

Es posible conseguir jefes Steve Jobs <dirige, préside> Appley <le PDG de> Apple <,> Steve Jobs.

Sin embargo, las anáforas y las expresiones temporales complican el problema.

Anáfora Andorra es un pequeño país sin salida al mar entre Francia y España en el suroeste de Europa,

[...]

El turismo es el principal sector de este pequeño país con una economía sana, que representa alrededor del 80% de su PNB ...

¿Cuál es el principal sector económico de Andorra?
Expresión temporal

Irán invadió Irak el22 de septiembre de 1980. Después de 8 largos años de lucha , la Resolución 598 de Naciones Unidas puso fin a la guerra ...

¿Cuánto duró la guerra Irán-Irak?

El simple reconocimiento de entidades nombradas también es problemático y puede dar lugar a inconsistencias. La modalidad es difícil de definir (el autor dice una verdad o simplemente una opinión o incluso un rumor) y finalmente la información en la web suele ser poco fiable (bromas ...).

Puntaje y criterios

La idea es calcular una puntuación que permita juzgar la respuesta de un candidato.

En general, se utilizan cuatro criterios diferentes:

  • Buen contexto general  : tratamos de evaluar la relevancia del pasaje del que proviene la respuesta del candidato. Para ello contamos con:
    • la cantidad de palabras clave presentes en el pasaje,
    • el número de palabras comunes a la pregunta y al pasaje,
    • la clasificación del motor de búsqueda para el pasaje,
    • etc.
  • Buen contexto local  : tratamos de juzgar la adecuación del pasaje en relación con la pregunta:
    • Distancia media entre la respuesta del candidato y las palabras clave presentes en el pasaje,
    • Número de palabras en la respuesta del candidato que no son palabras clave de la pregunta,
    • etc.
  • Tipo semántico correcto  : se asegura que el tipo de respuesta candidata sea el mismo o un subtipo del tipo de respuesta esperada.
  • Redundancia  : presencia de la respuesta en tantos pasajes seleccionados como sea posible.
Relaciones sintácticas

La idea es analizar la sintaxis de la pregunta y los pasajes candidatos.

Extraemos relaciones predicado-argumento:

Ejemplo de relaciones sintácticas
Preguntas Relaciones
“¿Quién escribió Los Miserables? " [X, écrire], [écrire, Les Misérables]
Respuesta del candidato Relaciones
"Victor Hugo escribió Los Miserables" [Victor Hugo, écrire], [écrire, Les Misérables]

Del ejemplo anterior, el sistema puede deducir X = Victor Hugo.

Para ir más allá, generalmente integraremos un poco más de análisis semántico introduciendo el tipo de relaciones que unen los elementos. De hecho, construimos un árbol de dependencia a partir de la pregunta.

Por ejemplo, de la oración "¿Qué metal tiene el punto de fusión más alto?" », Obtenemos las relaciones representadas en el árbol de la derecha.

Por lo tanto, buscamos completar la variable METALdel tipo “metal”.

Posteriormente, si la investigación nos permite obtener el pasaje "El tungsteno es un metal muy duro y tiene el punto de fusión más alto". »El tipo de respuesta es de hecho« metal ». Luego comparamos las relaciones obtenidas:

pregunta Paso

<METAL, a, sujet>
<point, a, objet>
<fusion, point, comp-nom>
<le plus haut, point, mod>

<tungstène, métal, pred>

<tungstène, a, sujet>
<point, a, objet>
...

Esto nos permite obtener la respuesta de tungsteno.

Usando la lógica

La idea es convertir la pregunta en un objetivo y luego convertir el pasaje en fórmulas lógicas . Agregamos un cierto número de predicados que permiten representar reglas de subsunción (permite definir que un elemento implica otro), conocimiento ... Luego intentamos probar el objetivo de la pregunta a partir del pasaje.

Entonces, "¿Quién asesinó a John Lennon?" "Convertido a: personne(X) & assassiner(X, Y) & John_Lennon(Y).

La respuesta del candidato "Mark Chapman disparó contra John Lennon en 1980, ..." se convertirá en Mark_Chapman(X) & abattre(X, Y) & John_Lennon(Y).

Aquí entonces necesitaremos inferencia léxica abattre → assassiner.

Aprendizaje automático

Se emplean técnicas de aprendizaje automático supervisado para entrenar modelos que intentan detectar automáticamente dónde se encuentra la respuesta en uno o más pasajes candidatos. Las características ( características ) utilizadas para realizar este tipo de discriminación cubren tanto la pregunta como el candidato a la respuesta, e incluyen:

  • el tipo de pregunta;
  • la presencia de patrones de extracción como se explicó anteriormente;
  • la distancia entre las palabras de la pregunta y la respuesta del candidato;
  • la localización de la puntuación (verdadero si la respuesta del candidato sigue inmediatamente a una puntuación, falso en caso contrario);
  • etc.

También es posible detectar las respuestas de los candidatos mediante el aprendizaje no supervisado , cuando los documentos relevantes son lo suficientemente redundantes, por ejemplo, cuando se consulta una gran colección. La teselación por n -gramas permite, por ejemplo, considerar y asignar un peso a todas las secuencias de palabras encontradas en los extractos relevantes de los documentos identificados, con la idea de que las secuencias de palabras más repetidas probablemente formen parte del respuesta. Las secuencias de palabras contiguas más interesantes constituyen la respuesta.

Limitaciones de los enfoques actuales

  • A veces, la respuesta a una pregunta se distribuye en varios documentos o en varios extractos dispersos. ¿Es posible generar una respuesta a partir de diferentes documentos candidatos? Los enfoques que tratan de resolver este problema se les llama multi-hop de pregunta y respuesta , literalmente, de preguntas y respuestas en varios saltos.
  • Algunas preguntas deben desglosarse. Por ejemplo, "¿Está casado el presidente francés?" "Implica" ¿Quién es el presidente de Francia? "Entonces" Emmanuel Macron, ¿está casado? ".
  • ¿Cómo saber si dos respuestas son iguales (estimaciones, etc.)? ¿Cómo lidiar con los casos de variaciones (el tamaño de un hombre, la población de un país, la esposa del presidente francés, etc.)?
  • Utilizando sistemas de traducción automática, uno puede imaginarse haciendo una pregunta en francés y buscando la respuesta en documentos en inglés.
  • ¿Cómo presentar la respuesta? ¿Qué formato usar? Lista, gráfico, diálogo, mapa ...
  • El tratamiento del lenguaje aún no es perfecto, algunos tratamientos no funcionan o de forma no óptima: el tratamiento de anáforas , sinónimos , paráfrasis , metonimias , negación, cuantificadores (unidades), el reconocimiento de figuras retóricas ...
  • Se pueden proponer nuevos métodos de inferencia. Por ejemplo, tomemos "¿Cuál es la ciudad más grande de Francia?" ". Podemos responder a esta pregunta de la siguiente manera:
    • Coincidencia  : buscamos "París es la ciudad más grande de Francia" (o una paráfrasis). Este es el método utilizado en general.
    • Podemos imaginarnos haciendo una búsqueda superlativa  : encontrando la lista de ciudades francesas y sus poblaciones y ordenando, encontrando las ciudades más grandes del mundo y eligiendo ciudades francesas ...
    • Algunas respuestas podrían deducirse de la heurística .
  • Sistemas de inferencia complejos: “Lille es la segunda ciudad más grande de Francia”; “Londres es más grande que Lille”; “París es más grande que Londres”; "París está en Francia". Entonces París> Londres> Lille, etc.
  • Se puede considerar el uso de un modelo de usuario . Permitiría así, a partir de datos relativos al usuario, poder resolver las ambigüedades de las entidades nombradas (por ejemplo, el usuario está buscando Chicago, ¿está hablando de la ciudad, el musical, la película?), resolver los problemas de granularidad (¿Dónde está Los Ángeles ?, en el planeta Tierra) ...
  • Resolver cuestiones relativas a las relaciones: "¿Cuáles son las relaciones entre Nicolas Sarkozy y Angela Merkel?" "
  • Implicación textual: ser capaz de reconocer que un pasaje puede implicar otro. Por ejemplo, "Nicolas Sarkozy hizo rehacer un avión para su transporte oficial" implica "Un avión está destinado a los viajes del presidente francés".

Evaluación de un sistema de respuesta a preguntas

Existen diferentes campañas destinadas a clasificar los mejores sistemas de respuesta a preguntas: TREC (inglés), CLEF (multilingüe), EQUER (francés), NTCIR (japonés), QUAERO (francés, inglés). Los sistemas se evalúan tanto de dominio abierto como de colecciones cerradas (generalmente artículos de revistas). Los tipos de preguntas analizadas son principalmente factores y definiciones.

Hay dos formas principales de juzgar una respuesta. El primer tipo de juicio es automático: por rango recíproco medio (MRR). Será por ejemplo dar 1 punto para el sistema cuando una re  respuesta es correcta, si 0,5 segundos es 0.2 y si es antes de la 5 e . La segunda forma de juzgar una respuesta es usar el juicio humano. Esto depende de la exactitud o precisión de la respuesta y su justificación.

Sin embargo, la precisión de la respuesta a una pregunta no es fácil de juzgar:

  • ¿Cuál es la respuesta a una pregunta errónea? Por ejemplo, ¿aceptamos la respuesta néanta la pregunta "¿Cuándo murió Johnny Hallyday?" " (sigue vivo !) ?
  • ¿Qué granularidad debemos aceptar? Por ejemplo, “¿Dónde está Los Ángeles? ". ¿En el planeta Tierra? En América ? En California ? En los Estados Unidos ? Entonces, es posible que necesitemos usar un modelo de usuario para tratar de determinar qué esperar como respuesta.

Otra medida importante es la recuperación y la precisión . El retiro mide la proporción de documentos relevantes seleccionados entre todos los documentos relevantes (por lo que cuantos menos documentos relevantes no fueron seleccionados, mejor será el retiro). La precisión mide la proporción de documentos relevantes seleccionados entre todos los documentos seleccionados (por lo tanto, cuantos más documentos malos se seleccionen, menor será la precisión). En general, aumentar la memoria da como resultado una disminución de la precisión y viceversa.

Ver también

Bibliografía

  1. Boris Katz, Anotando la World Wide Web usando lenguaje natural, 1997
  2. (en) Daniel Jurafsky y James H. Martin, "  Capítulo 23 - Búsqueda de Respuestas  " (acceso 30 de de septiembre de 2019 )