PLN, Curs 2005-2006 quatrimestre de tardor, examen final

Anuncio
PLN, Curs 2005-2006 quatrimestre de tardor, examen final
Duració 2 hores, sense apunts
Aquí teneis una posible solución del examen.
1) (6 puntos) Deseamos construir un sistema de extracción de información que nos permita obtener
relaciones binarias entre algunas unidades que aparezcan en documentos. Nos limitaremos a unidades de
tipo NE (personas, organizaciones, locativos), fechas, cantidades, etc. En el ejemplo del anexo se podrían
obtener relaciones como:
 lugar_nacimiento (Barceló_Miguel, Felanitx)
 contenido(Felanitx, España)
 año_nacimiento (Barceló_Miguel, 1957)
 lugar_formación(Barceló_Miguel, Barcelona)
 etc.
1a) Discutid los problemas de minería de textos que el sistema encontraría, ilustradlos, en los casos
posibles, con ejemplos del anexo.
Existen dos familias de problemas:
1.
2.
problemas de PLN
a. generales
i. segmentación en párrafos, oraciones, ...
ii. limpieza (eliminación de metainformación)
iii. detección de palabras
1. términos multipalabra, barbarismos, neologismos, fórmulas,
acrónimos, fechas, cantidades, ...
iv. ambigüedad en la morfología, locuciones, frases hechas, ...
v. tagging
vi. ambigüedad en la sintaxis
vii. polisemia
viii. elipsis, correferencia
b. específicos de esta aplicación
i. detección y clasificación de NE
ii. NE de granularidad fina (CITY vs. LOCATION)
iii. Gentilicios
iv. Necesidad de conocimiento externo (ej. Una ciudad está dentro de un país)
v. Formas variadas de la misma NE (ej. Miguel Barceló, Miquel Barceló,
Barceló, M. ...)
problemas de la detección de las relaciones
a. que una relación no esté presente en un documento
b. que la distancia entre dos entidades relacionadas sea muy grande
c. que aparezcan varios ejemplares de una relación en un documento
d. ambigüedad en la relación
e. relaciones poco precisas o indefinidas
f. dificultad de identificar las entidades relacionadas y la relación (p.ej. dos entidades no
contiguas, es decir con otras entidades entre ellas, están relacionadas)
1b) Proponed una especificación funcional del sistema (es suficiente una lista de funcionalidades con una
breve descripción de las no obvias).
Una opción inicial que teneis es considerar el sistema de extracción de relaciones partiendo de un
conjunto de relaciones predefinido (lo cual sería el ejemplo típico de un sistema de IE) o bien buscar
asociaciones entre NE en un documento sin tener un conjunto previo. En una transparencia de clase se
aludía al primer caso como “búscame tal relación” y al segundo “a ver qué encuentras aquí de
interesante”. Obviamente el primer enfoque es más preciso pero obliga al usuario a definir y caracterizar
las relaciones (por ejemplo la relación lugar_de_nacimiento se podría establecer entre PERSON y algún
tipo de LOCATION (CITY, COUNTRY, STATE, ...).
Funcionalidades básicas:
 Buscar relaciones binarias en un documento







o Buscar determinados tipos de relaciones
Realizar IR sobre una base de documentos o Internet
o Formas variadas de definir los documentos a recuperar
 Tema, palabras clave, ...
Configurar el sistema
o Número máximo de documentos a tratar
o Idioma
o ...
Gestión de la base de relaciones recuperadas
o Consultas varias
o Filtrados
o Validación manual
Gestión (de existir) del conjunto de relaciones a extraer
o Altas, bajas, modificaciones, consultas
Gestión de las reglas de extracción
(posiblemente) Aprendizaje de las reglas de extracción
Formas variadas de presentación y formateo de los resultados
Otras funcionalidades:
Se podrían aprovechar algunos de los módulos del sistema (algunos de vosotros lo habeis hecho) para
ofrecer funcionalidades adicionales (preproceso lingüístico, detección y clasificación de NE, clustering
temático, etc.)
1c) Proponed la arquitectura del sistema de extracción de relaciones (módulos que incluye, relaciones
entre ellos, etc.). Indicad las fuentes de conocimiento a utilizar por cada componente. Haced especial
hincapié en los componentes lingüísticos.
Los constituyentes básicos de la aplicación, siguiendo la especificación funcional anterior serían:








Módulo de IR
o Permitiría la recuperación de documentos potencialmente relevantes a partir de
colecciones cerradas o Internet
o Incorporaría submódulos para la extracción del contenido textual de los documentos.
Tened en cuenta que los documentos pueden ser homogéneos (p.ej. un .txt) o
heterogéneos (p.ej. una página Web). Hay varias formas de codificación (.txt, .doc, .pdf,
...). Se debe, por una parte, identificar el formato y características del documento y, por
otra parte, extraer el contenido textual
Módulo de enriquecimiento (o preproceso) del texto (preproceso)
o Segmentación, limpieza, tokenización, análisis morfológico, POS tagging, NER, NEC,
anotación semántica, posiblemente desambiguación semántica, chunking y extracción
de relaciones sintácticas (no parece a priori útil el realizar full parsing). Posiblemente
búsqueda de correferencias. ...
Módulo de configuración
Módulo de gestión de tipos de relaciones
o Alta, baja, consulta, modificación de los tipos de relaciones
Módulo de gestión de las reglas de extracción
Módulo de gestión de la base de datos de relaciones extraídas
Módulo de extracción de relaciones
Módulo de visualización
Los módulos básicos son el de enriquecimiento (o preproceso) y el de extracción de relaciones.
1d) Ilustrad el funcionamiento del módulo de extracción con algún ejemplo (preferiblemente no trivial) de
los que aparecen en el anexo.
Supongamos que el módulo de extracción implica la ejecución de un conjunto de reglas de extracción que
se activan a partir de un trigger word.
Supongamos que son reglas de tipo relacional a(X,Y,...) :- b(X,Y, ...), c(...). (en notación Prolog, a, b, c ...
son predicados y X,Y, ... son variables.
Considerad la siguiente regla, activada por el trigger word FORMAR:
lugar_formacion(X,Y) :persona(X),
lugar(Y),
accion(Z,formar),
elipsis(U),
tema(Z,U),
correferencia(U,X).
donde las variables denotan tokens ( o posiciones en la oración)
Considerad el siguiente fragmento:
Barceló, Miquel(Felanitx, España, 1957) Pintor español. Formado en Barcelona, ...
Una vez preprocesado tendríamos la siguiente lista de tokens:
1_"Barceló, Miquel"_persona
2_"("
3_"Felanitx"_ciudad
4_","
5_"España"_pais
6_","
7_"1957"_año
8_")"
9_""_elipsis
10_"Pintor"_profesion
11_"español"_gentilicio(España_pais)
12_"."
13_""_elipsis
14_"Formado"_accion(formar)
15_"en"
16_"Barcelona"_ciudad
17_","
...
El analizador sintáctico superficial (o el identificador de relaciones sintácticas) habrá detectado que el
tema de la accion(14,formar) es el elemento elidido 13.
El identificador de correferencias habrá detectado que el correferente de 14 es 1.
el lema "formar" activaría la regla enterior. Con ello la instanciación de la regla podría ser (con algunas
inferencias como ciudad => lugar):
lugar_formacion(1,16) :persona(1),
lugar(16),
accion(14,formar),
elipsis(13),
tema(14,13),
correferencia(13,1).
con lo que obtendríamos la relación lugar_formacion("Barceló, Miquel", "Barcelona")
2) (4 puntos) Deseamos disponer de un módulo de detección de acrónimos o siglas (FIB) y de sus
posibles referentes (Facultat d'Informàtica de Barcelona, Federación Internacional de Billar, ...).
Deseamos también poder localizar abreviaturas (Dr.) y ser capaces de distinguir las abreviaturas de los
acrónimos.
2a) Definid las diferentes tareas implicadas y discutid los problemas que se presentan para llevar a cabo
estas tareas
Detectar un acrónimo en un documento
Detectar una abreviatura en un documento
Detectar el correferente de un acrónimo
Desambiguar un acrónimo en contexto
Detectar un acrónimo en un documento
Los patrones más frecuentes para caracterizar un candidato a acrónimo son sencillos (por ejemplo, una
secuencia de mayúsculas de longitud > 1 pero no muy larga opcionalmente separadas por puntos). El
problema es que numerosos acrónimos no cumplen ese patrón y si lo hacemos menos estricto entonces
podemos detectar como acrónimos cosas que no lo son.
Detectar una abreviatura en un documento
Las abreviaturas suelen tener un patrón del tipo mayúscula seguida de minúsculas y de punto y no suelen
ser muy largas. El problema es que a menudo hay excepciones.
Es decir que dado un conjunto de patrones para identificar candidatos a ACRO, a ABREV nos
encontramos con que una determinada expresión puede ser candidata a ACRO y a ABREV. El problema
es un proceso de clasificación de la candidata entre 3 clases: ACRO, ABREV, NADA.
Detectar el correferente de un acrónimo
El correferente de un acrónimo (Facultat d' Informàtica de Barcelona respecto a FIB) puede detectarse
con unas cuantas reglas sencillas.
Por ejemplo, localizar una NE de tipo organización tal que el número de palabras plenas que la
compongan (despreciando palabras funcionales) sea igual al número de letras del acrónimo y cada letra
del acrónimo corresponda a la inicial de la palabra correspondiente. El problema es que esta regla tan
estricta hay que relajarla para aumentar la cobertura (y las reglas relajadas ya no son tan precisas) y tener
en cuenta la distancia, la frecuencia, la coocurrencia, etc.
Desambiguar un acrónimo en contexto
Obviamente de forma aislada no podemos saber cuál de las posibles expansiones de un acrónimo es la
correcta (FIB => Facultat d' Informàtica de Barcelona, Federación Internacional de Billar, etc.). Ahora
bien si disponemos de un contexto de aparición la ambigüedad puede resolverse ("la matrícula en la FIB
se llevará a cabo ..."). El problema es que no siempre las cosas van tan bién ("la DAFIB ha organizado en
la FIB el campeonato catalán de billar").
2b) ¿Qué funcionalidades debiera cubrir el módulo?
Posibles funcionalidades:
Hay dos grandes familias:
1. Confección de un gazetteer:
a. confeccionar (extraer [semi-] automáticamente) una Base de datos de <acrónimo, expansión,
contexto>
b. explotar la BD
2. Detección de acrónimos, abreviaturas y sus expansiones
a. dado un texto identificar los acrónimos
b. dado un texto identificar las abreviaturas
c. dado un acrónimo identificar las posibles expansiones en un documento
d. dado un acrónimo identificar las posibles expansiones en una colección de documentos
e. dado un acrónimo con varias posibles expansiones desambiguar la correcta
f. dada una expansión extraer los posibles acrónimos
g. dada una abreviatura, expandirla
2c) Proponed la arquitectura del sistema. Describid con cierto detalle cómo se lleva a cabo la tarea de
búsqueda de un referente para un acrónimo ya detectado.
* Módulo de procesamiento linguístico (No es necesario procesamiento sintáctico profundo ni semántico,
las cosas se pueden abordar a nivel superficial).
* Módulo de gestión del (de los) gazetteer (s) de acrónimos
* Módulo de gestión del (de los) lexicones de abreviaturas y expansiones
* Módulo de gestión de documentos
* Módulo de identificación de candidatos a acrónimo y a abreviatura
* Módulo de clasificación de candidatos en ACRO, ABREV, NADA
* Módulo de correferencia acrónimo <-> expansión
* Módulo de desambiguación
2d) Si un acrónimo puede tener varios referentes proponed alguna forma de desambiguación entre los
mismos (es decir, si en un texto aparece el acrónimo FIB cómo podemos saber si se refiere a la Facultat
d'Informàtica de Barcelona o a la Federación Internacional de Billar?)
La mejor manera es usar alguna forma de representación del tema (topic) de la expansión de forma que a
la hora de desambiguar se buscara:
dado <acrónimo, contexto>
y las siguientes posibilidades:
<expansión 1, tema 1>
...
<expansión n, tema n>
la expansión i tal que la distancia(contexto, tema i> fuera mínima. Podeis usar como representación de
tema i algo del tipo de las Topic signatures (bags ponderados de términos, palabras, lemas, etc.) y como
medida de distancia alguna de las explicadas en clase (y usadas en las prácticas) como la información
mutua, el coseno, el producto escalar, etc.
Anexo
Barceló, Miquel
(Felanitx, España, 1957) Pintor español. Formado en Barcelona, adquirió notoriedad internacional tras la
Documenta 7 de Kassel (1982), en la cual expuso obras primerizas en las que se reflejaba la influencia del
neoexpresionismo alemán y la transvanguardia italiana. Su pintura, siempre dentro del marco del
figurativismo, incorpora numerosos referentes culturales, entre los que cabe destacar en una primera etapa
el trasfondo mediterráneo, y a raíz de una prolongada estancia en Mali, iniciada en 1988, el paisaje y la
forma de vida africanos; más recientemente ha introducido en su obra complejas e intelectualizadas
reflexiones sobre el entorno privado del artista: su taller, su biblioteca, etc. Otro ámbito destacado de su
actividad artística es la ilustración de libros, capítulo en el cual ha ilustrado obras de Paul Bowles y
Enrique Juncosa, entre otros. En 1996 fue objeto de una doble exposición retrospectiva celebrada en los
museos parisinos del Jeu de Paume y el Centro Pompidou.
Véase:
Dubuffet, Jean
Saura, Antonio
Tàpies, Antoni
Descargar