TFM Daniel Fernández Álvarez.Pdf
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSIDAD DE OVIEDO ESCUELA DE INGENIERÍA INFORMÁTICA TRABAJO FIN DE MÁSTER “MERA: Musical Entities Reconciliation Architecture” DIRECTOR: Jose Emilio Labra Gayo AUTOR: Daniel Fernández Álvarez Vº Bº del Director del Proyecto Índice general Lista de figuras 5 Lista de tablas 7 1. Agradecimientos 9 2. Resumen 11 3. Abstract 13 4. Palabras clave 15 5. Introducción 17 5.1. Finalidad y financiación de proyecto . 20 5.2. Fijación de objetivos . 21 5.3. Ámbitos de aplicación . 22 6. Estado del arte 23 7. Descripción de la arquitectura MERA 31 7.1. Algoritmo adaptable de MERA . 34 7.2. Métodos . 39 7.2.1. Estandarización o pre-procesamiento . 40 7.2.2. Comparación de cadenas . 42 7.2.3. Bloqueo . 47 7.3. Esquema y navegación de grafo . 50 7.3.1. Búsqueda de formas alternativas . 50 7.3.2. Búsqueda de entidades relacionadas . 51 7.3.3. Forma de grafo y manejo de fuentes . 52 1 2 ÍNDICE GENERAL 7.3.4. Creación de grafos . 56 7.4. Configuración . 56 7.4.1. Configuración de comparaciones . 56 7.4.2. Reduciendo el número de resultados . 59 7.4.3. Filtrado de fuentes . 59 7.4.4. Especificación y adición de algoritmos . 60 7.4.5. Definición de formas alternativas . 60 7.4.6. Valores especificados por defecto . 61 8. Experimento 63 8.1. Descripción de los experimentos . 64 8.1.1. Condiciones de los experimentos . 64 8.1.2. Selección de datos . 65 8.1.3. Diseño de experimentos . 68 9. Discusión 75 9.1. Inclusión de características . 75 9.1.1. Experimento A. Sin navegación de grafo . 75 9.1.2. Experimento B.Navegación de grafo en búsqueda de formas alternativas . 76 9.1.3. Experimento C. Navegación de grafo en búsqueda de entidades relacionadas . 77 9.1.4. Experimento D. Ambos tipos de navegación de grafo . 78 9.1.5. Experimento E. Inclusión de la función de bloqueo adaptada a MERA . 79 9.2. Efecto de la calidad de los datos . 80 10.Descripción del Código 81 10.1. Estructura de paquetes . 81 10.2. Diferencias entre prototipo WMERA y la especificación de MERA . 82 10.3. Núcleo de MERA . 83 10.3.1. Modelo común . 83 10.3.2. Matcher . 84 10.3.3. Implementación de grafo . 85 10.3.4. Generador de grafo . 85 10.4. Código relacionado . 87 10.4.1. Parseadores . 88 ÍNDICE GENERAL 3 10.4.2. Índices de q-gramas . 89 10.4.3. Comprobadores de calidad de archivos . 89 10.5. Pruebas . 90 10.6. Modelo JSON de entrada de consultas . 90 10.7. Tratamiento de grandes volúmenes de datos . 93 10.8. Aplicación consumidora del prototipo . 95 10.9. Evolución del código . 95 11.Presupuesto 99 12.Conclusiones y trabajo futuro 101 13.Anexos 111 13.1. Material para las consultas extraídas de MusicBrainz . 111 13.2. Material para las consultas extraídas de AOL . 115 13.3. Script ejecución Mongo . 119 13.4. Ejemplo de consultas para MERA en JSON . 120 13.5. Copia del artículo de investigación . 120 4 ÍNDICE GENERAL Índice de figuras 7.1. Mapeo de dos cadenas s y t a un número real r ........ 39 7.2. Ejemplo de grafo sin esquema de MERA . 53 7.3. Ejemplo de grafo con el esquema de MERA . 53 7.4. Nodo auxiliar asociado a varios datasets . 54 7.5. Artista descrito en dos fuentes de datos . 55 10.1. Home de la aplicación web . 95 10.2. Página de resultados del proceso de matching . 96 5 6 ÍNDICE DE FIGURAS Índice de cuadros 7.1. Tabla de configuraciones . 57 7 8 ÍNDICE DE CUADROS Máster en Ingeniería Web Capítulo 1 Agradecimientos No hubiese sido posible afrontar este proyecto sin la intervención de mu- chas personas. Agradezco a mis compañeros en el Laboratorio de Tecnologías Orientadas a Objetos de la Facultad de Ciencias el ambiente de camaradería y ayuda desinteresada que siempre ha habido, en especial a Cristian por su continuo apoyo y a Ricardo por todo el tiempo que hemos echado encerrados traba- jando a horas intempestivas. Agradezco a mi familia, principalmente a mis padres y hermana, su com- prensión y ayuda en todo lo imaginable, durante este trabajo y durante toda mi vida. Agradezco Cristina, mi novia, su apoyo, su paciencia, su cariño incon- dicional, su esfuerzo para que todo vaya bien y toda la fuerza que me da. Además, le agradezco su aportación con el inglés en este artículo. Agradezco a mis amigos de siempre, que han sabido disculpar mis au- sencias prolongadas haciéndome sentir que ni la distancia ni los diferentes caminos que vamos tomando pueden con lo que nos une. Agradezco a mis compañeros en el Master de Ingeniería Web el camino andado juntos, el buen ambiente y el esfuerzo brutal que hemos conseguido realizar en muchas ocasiones, siempre más llevadero con el apoyo mutuo. Agradezco al Profesor Daniel Gayo su atención y ayuda en diferentes etapas de este trabajo y a mi director de proyecto, Jose Emilio Labra, su confianza ciega. A todos ellos, muchísimas gracias. 9 10 Máster en Ingeniería Web Capítulo 2 Resumen El problema de la reconciliación de entidades (record linkage) ha sido profundamente estudiado a pesar del hecho de ser aún hoy en día una rama de investigación abierta y activa. La proliferación de bases de datos con grandes volúmenes de datos de diversa naturaleza por la World Wide Web conduce a un interés generalizado de encontrar técnicas precisas y eficientes de detección de entradas equivalentes en aquellos escenarios en los que no se dispone de identificadores únicos confiables. Esto es deseable tanto para la detección de duplicados dentro de una propia base de datos como para el reconocimiento de entradas en diferentes bases de datos que hacen referencia a la misma realidad. Existe un conjunto de problemas habituales cuando nos enfrentamos a un problema de reconciliación de entidades, como puede ser la presencia de erratas. No obstante, los diferentes tipos de fuentes pueden presentar dis- tintos tipos de problemas asociados a la hora de llevar a cabo un proceso de reconciliación. Hemos estudiado el caso concreto de las fuentes de datos asociadas al mundo musical, encontrando que no es posible elaborar una lista común de problemas asociados a todas las bases de datos de este tipo. La calidad de los datos, el idioma, las convenciones de nombres y el tipo de con- tenido son algunos de los factores que determinan qué tipo de estrategias se deberían poner en marcha en cada caso para llevar a cabo satisfactoriamente un proceso de conciliación. Hemos también observado que ciertos conceptos musicales son habitualmente referidos usando formas válidas pero de distinta naturaleza. Un ejemplo ilustrativo sería la forma de denominar a un artista o grupo en una fuente de datos concreta, donde tanto nombres artísticos, civiles, alias o componentes de un grupo podrían ser usados. 11 12 Para aportar una mejora sobre los actuales sistemas de reconocimiento de entidades musicales proponemos MERA (Musical Entities Reconciliation Architecture), una arquitectura pensada para el linkado de dos bases de da- tos capaz de adaptarse a las técnicas y los algoritmos de reconciliación más convenientes en cada caso particular. MERA incluye ademas mecanismos para involucrar fuentes de datos de terceros con el objetivo de mejorar los resultados. Nuestra propuesta está basada en tecnologías de web semántica, almacenando y manejando información a través del uso de grafos rdf. MERA trabaja sobre un esquema general de relaciones entre los nodos del grafo para organizar la información, no necesariamente atado a ontologías particulares, proponiendo una nueva forma de exploración de grafo acorde a dicho esque- ma. Hemos implementado y evaluado un prototipo que recoge la mayor parte de los aspectos de diseño de MERA. Máster en Ingeniería Web Capítulo 3 Abstract The problem of entity recognition or record linkage has been largely stu- died despite the fact it is still an opened issue. The proliferation of large databases with potentially repeated records across the World Wide Web dri- ves into a generalized interest to find precise and efficient methods to detect duplicate entries when no reliable unique identifiers are available. This is desirable both to detect duplicate records within a database and to recognize as pointers to the same real-world object two records in different databases. There is a set of issues that may appear when facing a record linkage scenario that are potentially shared by databases or different nature, such as the presence of misspellings. However, the different types of sources may present different type of common issues. We have studied the cases of datasets containing information linked to the music world, finding that is hard to elaborate a list of problems common to every musical database. Data quality, naming conventions and content nature may drastically vary the list of issues to face in each case. We also find some musical concepts are usually named with different but valid forms that identify the same reality. An illustrative is the way to designate an artist or group, where artistic name, civil name(s), group members or alias could be provided. We propose MERA (Musical Entities Recognition Architecture), an ar- chitecture thought to link two databases adapting the techniques and recon- ciliation algorithms to each particular case. MERA also includes mechanisms to manage third party sources to improve the results. Our approach is based in web semantic technologies, storing and organizing the information in rdf graphs, in which every entity could be linked to its related concepts or known alternative forms. MERA defines a graph schema to organize info, not ne- 13 14 cessary linked to particular ontologies, and propose a novel way no navigate that graph during the linking process.