Lectura de comprensión

Fernanda Mora

fernanda-mora.com

#datadaymx

https://sg.com.mx/dataday/

automatizada con DL

Contenido

 

  • Objetivo

  • Contexto

  • Preliminares

  • Proyecto

  • Conclusiones

Objetivo

 

2 objetivos

  1. Dar una intro a lectura de comprensión automática.

  2. Platicar sobre el proyecto de verano en Carnegie Mellon (lectura de comprensión).

Contexto

 

Motivación

  • Esfuerzos desde los 60's (lexemas, parsers, gramáticas

  • Meta: modelos que "entiendan"

  • ¿Dónde estamos?

  • Interés no sólo teórico sino comercial: Siri y Watson

Imagen tomada de Bengio et al., 2016

Retos

  • Lectura de comprensión automática es la habilidad de un programa de leer y entender documentos a un nivel tal de ser capaz de responder preguntas. 

  • Retos son en dos direcciones: datasets y modelos.

  • Datasets 'buenos' son esenciales: pequeños y realistas ([Richardson et al.2013) vs grandes pero sintéticos (Hermann et al.2015).

  • Modelos deben tomar en cuenta el contexto del lenguaje

Preliminares

Definición del problema

  • Agradecimientos a Luis Román (ITAM), Siddha Ganju, Arwush Arwal , Salvador Medina, Matthias Grabmair, Eric Nyberg (CMU, LTI)


  • Implementar un sistema que sea capaz de realizar lectura de comprensión automática sobre el dataset de SQuAD que mejore el estado del arte

SQuAD

  • SQuAD [Rajpurkar et al.2016], está formado de +100K pares de pregunta-respuesta basados en +500 artículos de Wikipedia

  • Las preguntas fueron hechas por humanos en plataforma de crowdsourcing

  • Las respuestas son un segmento del párrafo asociado

SQuAD

 

  • No hay un número fijo de respuestas

  • Cualquier sucesión de palabras del párrafo es una posible respuesta

  • Respuestas creadas por humanos: variedad, 99% son factoides

Numérico

Nombres propios

Otros

Modelos

 

  • [Hermann et al.2015] usó redes neuronales recurrentes con mecanismos de atención para predecir un sólo token

  • Modelos sequence-to-sequence se han aplicado con éxito en datasets más grandes

  • Memory networks no escalan bien  [Weston et al.2014] 

  • [Rajpurkar et al.2016] propone el primer modelo sobre SQuAD

  • F1 score de 51% vs 86.8 %

  • Regresión logística con features a la medida

  Proyecto

 

SQuAD

 

  • Dataset completo:

536 artículos de Wikipedia

108K pares pregunta-respuesta

Training, dev and test

 

  • Dataset de entrenamiento:

378 artículos de Wikipedia

42 pasajes por artículo

5 preguntas por pasaje

1 respuesta por pasaje

80K pares QA

 

  • Evaluación del modelo:

Output: sucesión de tokens

Mediciones: Exact match y F1

Análisis exploratorio

 

  • 99% de las preguntas son factoides

 

  • Longitud de preguntas y respuestas

Análisis exploratorio

 

  • Existe similaridad léxica entre pasajes del mismo artículo

Análisis exploratorio

 

  • Se hizo un LDA para entender los temas persistentes

  •  Variamos el número de palabras y el número de tópicos y se encontraron los siguientes tópicos persistentes:

history

government

nation-state

sports

 art

Análisis exploratorio

 

  • Embeddings extraen información sintáctica y léxica que permita encontrar relaciones semánticas 

  • Se hicieron embeddings por palabra, oración y párrafo

  • Se usó tanto Word2Vec como GloVe

Word embeddings

 

  • Cluster 2 identificó fechas, números y meses.
  • Cluster 4 deportes y música
  • Cluster 5  política, reyes y reinos

Word embeddings

Methodology

 

  • Adaptados la red convolutional propuesta por [Severyn and Moschitti2015]

  • Encontrar la oración que tiene la mayor probabilidad de contener la respuesta

Models: sentence selection

 

  • Red convolucional para rankear las oraciones:

  1. Aprender una representación óptima de pregunta-oración
  2. Aprender una función de similaridad entre pregunta oración 

Models: sentence selection

[Severyn and Moschitti2015]

 

  • BM25 y Jaccard similarity

Models: sentence selection

 

  • Results

Models: sentence selection

 

  • Idea: Usar features que extraigan  features que extraigan la estructura léxica, sintáctica y semántica de la oración, pregunta y respuesta para entrenar un clasificador

Models: answer extraction

 

  • Para cada palabra de la oración escogida, se obtiene:

Models: answer extraction

 

  • Results

Models: answer extraction

 

  • Final results

Models: combined result

Automated Pipeline

 

  • Ejecución End-to-end
  • Model training
  • Model testing
  • Interactive Mode

Automated Pipeline

Conclusiones

 

Conclusiones

  • Se hizo análisis exploratorio sobre SQuAD

  • Se probaron varios métodos de embeddings

  • No se logró mejorar el resultado de Stanford

  • Se diseñó un pipeline cuya modularidad permite desarrollar y probar modelos por partes, así como combinar sus resultados

  • Se implementó dicho pipeline

  •  

¿Preguntas?

fernanda-mora.com

fernandamoralba@gmail.com