1 WHISK Extracción automática de información por Francisco Javier Márquez López
2 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
3 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
4 ¿De qué hablamos? Nuestro objetivo: Automatizar el manejo de esa información Dotar a los sitios web de APIs Imprescindible poder extraer información de esos sitios
5 Extracción de información Nombre Título Dirección Edad DocumentosExtractor de informaciónAtributos Reglas de extracción
6 ¿Qué es WHISK? Stephen Soderland 1999 Basado en expresiones regulares Sistema de inducción de reglas supervisado Valido para lenguajes estructurado y lenguaje natural Extrae relaciones
7 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
8 Conjunto de entrenamiento WHISK Conjunto de entrenamiento Documentos a etiquetarDocumentos
10 Clases semánticas “* (Marcas):*
11 Número de errores de extracción + 1 Número de intentos de extracción + 1 2. Bondad de una regla L = “* (Marcas):*
12 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
13 Página de profesores del LSI Queremos extraer: Nombre Categoría Teléfono Despacho Correo Página personal Asignaturas
14 … @@ TAGS Profesor {Nombre Bernárdez Jiménez, Beatriz} {Categoria Profesor Asociado} {Telefono 954553870} {Despacho F1.47} {Correo [email protected]} {Pagina http://www.lsi.us.es/~} {Asignatura Bases de datos} {Asignatura Diseño de Bases de Datos} {Asignatura Ingeniería del Software III} {Asignatura Introducción al Desarrollo de Sistemas Software} Etiquetando
15 Creación de reglas Un profesor por página: Reglas particulares para cada dato. ID:: 1 Pattern:: * (*) Output:: Profesor {Nombre $1} Una regla para cada etiqueta no cubierta Bernárdez Jiménez, Beatriz
16 Regla inicial: “* ( * ) *” Formas de anclaje: Usando los elementos alrededor del dato: “* (*) *” Usando los elementos dentro del dato a extraer: “*(Number)*” Anclaje de reglas Teléfono 954553870
17 Ahora tenemos dos reglas candidatas: “* (*) *”“*(Number)*” Bernárdez Jiménez, Beatriz Datos personales Categoría Profesor Asociado Teléfono 954553870 Ninguna de las dos hará una extracción correcta Hay que ampliar las reglas ¡No funcionan los anclajes!
18 “* (*) ” “* * (*) ” “*Bernárdez* (*) ” “* * (*) ” “*Jiménez* (*) ” “*,* (*) ” “* * (*) ” … Conjunto de entrenamiento L1 L2 L3 L4 L5 L6 … Ampliando las reglas Error laplaciano más pequeño
19 Anclaje exterior Anclaje interior Conjunto de entrenamiento L1 L2 Eligiendo anclaje Error laplaciano más pequeño
20 “*Teléfono* (*) ” La mejoramos hasta: No se encuentra ninguna mejora en el error laplaciano La regla creada cubre todas las etiquetas Alcanzamos un límite Seguimos ampliando reglas
21 Cubiertas todas las reglas del conjunto de entrenamiento El conjunto de reglas Podado Reglas más generales Menos solapamiento
22 Ciclo de vida de WHISK Ampliación de anclajes Anclaje Ampliación de reglas
23 Publicaciones científicas: DBLP Queremos extraer: Título Autores Conferencia o revista Año
24 Varias publicaciones por página: Reglas particulares para cada publicación en vez de para cada dato ID:: 1 Pattern:: *(Number) *..*>(*):(*).*>(*) Output:: Publicacion {Agno $1}{Autores $2}{Titulo $3}{publicadoEn $4} Varios atributos en una regla Asociación implícita de atributos Reglas multislot
25 Anclaje multislot Anclamos los slots de uno en uno: “*(*)*(*)*(*)*(*)*”“*(*)*(*)*(*)*(*)*” Y así sucesivamente… “*(Number) *(*)*(*)*(*)*”“*>(*) *(*)*(*)*(*)*” “*(Number) *(Roger*Smith)*( *)*(*)*” “*(Number) *>(*):*(*)*(*)*”
26 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
27 Datos compuestos La etiqueta de autores quedaría: {Autores Roger A. Golliver, Silvia M. Müller, Stuart F. Oberman, Martin S. Schmookler, Debjit Das Sarma, Andrew Beaumont-Smith}
28 Datos compuestos (soluciones) Hacer reglas para cada dato, en vez de reglas multislot: Autores = Autor + Autor + Autor + Autor Si se hiciera esto con reglas multislot habría explosión de reglas Se rompen las relaciones entre datos pero se pueden rehacer de nuevo mediante un ontologizador Llamar al algoritmo de manera recursiva
29 Un dato y varias etiquetas
30 Datos con más de un significado
31 Otras debilidades Poco eficiente en páginas web grandes Cambios de posición: Explosión de reglas Registros intercalados
32 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
33 En resumen… Algoritmo todoterreno Extrae relaciones, pero usar un ontologizador es adecuado Cubre la necesidad de extraer información de un sistema wrapping
34 Índice WHISK Introducción Fundamentos WHISK en funcionamiento Debilidades Conclusiones Bibliografía
35 Enlaces Stephen Soderland Machine learning (Learning information extraction rules) Kluwer Acedemic Publishers http://www.cs.washington.edu/homes/soderlan/ Rafael Corchuelo Info extraction Seminario TDG-Seville 11/05/07 http://www.tdg-seville.info/projects/integraweb/
36 THE END Gracias por su atención