viernes, 12 de junio de 2015

Extracción de Información: modelos de etiquetamiento secuencial para el reconocimiento de nombres de entidades (NER)

Los modelos basados en etiquetamiento secuencial, son métodos supervisados de clasificación, por lo tanto cuentan con dos partes: entrenamiento y prueba (o la clasificación, propiamente dicha)

Entrenamiento:

1. Conseguir un conjunto de documentos representativos de nuestro dominio.
2. Etiquetar cada palabra (token)  con la clase que le corresponde (persona, organización, etc.) o bien marcarla con la etiqueta: "otra". (simplemente la letra O).
3. Especificar características de extracción que se adecuen a las clases y el texto que tenemos.
4. Entrenar un clasificador secuencial para predecir las etiquetas del conjunto de prueba.

Prueba o clasificación:

1. Recibir un conjunto de documentos de prueba
2. Correr el algoritmo que inferirá la etiqueta de cada token.
3. Recuperar las entidades identificadas.

miércoles, 10 de junio de 2015

Extracción de Información: cómo evaluar el reconocimiento de nombres de entidades (NER)

Cuando aplicamos un algoritmo de reconocimiento de entidades, lo más probable es que parta el texto de entrada en tokens, es decir en palabras (ver post de tokenización). Con lo cual, siguiendo con el ejemplo anterior, obtendremos una primera salida como la siguiente:

Ready  =>libro
Player  =>libro
One     => Libro
Ernest  =>Persona
Cline.   => Persona
España   => Lugar, país
2011       => Fecha, año

Si queremos medir la precisión o incluso el recall (exactitud) de nuestro indicador, hay que hacerlo evaluando las entidades identificadas correctamente y NO los tokens. Es decir que sobre la salida anterior hay que realizar una tarea adicional, la cual consiste en identificar los limites de la entidad (el conjunto de tokens que la identifican):

Ready   =>libro 
Player   =>libro  
One      => Libro
Ernest   =>Persona
Cline.    => Persona
España  => Lugar, país
2011     => Fecha, año

En el ejemplo anterior identifiqué con colores el grupo de tokens que representan a la entidad. Si tuviésemos que medir la precisión para el ejemplo diríamos que hay 4 entidades clasificadas y que todas han sido identificadas correctamente.