UNIVERSIDAD NACIONAL DEL CENTRO DE LA PROVINCIA DE BUENOS AIRES FACULTAD DE CIENCIAS EXACTAS
TESIS DE GRADO DE INGENIER´IA DE SISTEMAS
Una herramienta para la confecci´
on de bibliom´
etricas basada en
repositorios de datos cient´ıficos no estructurados
por
Ezequiel Fernandez Vera
Dr. Cristian Mateos Director
Resumen
Las bibliom´etricas componen un conjunto de m´etodos para el an´alisis cuantitativo de la lite-ratura cient´ıfica. Estas se han convertido en una herramienta fundamental para el desarrollo de pol´ıticas cient´ıficas y el manejo de la investigaci´on. A su vez, brindan innumerables datos de inter´es en el campo de las ciencias de la informaci´on, tal como los v´ınculos existentes entre investigadores y entre institutos de investigaci´on, el desarrollo de las ´areas del conocimiento a trav´es del tiempo, el conjunto de revistas m´as importantes dentro de una disciplina cient´ıfica, entre otros. Las fuentes de datos m´as utilizadas para el c´alculo de indicadores bibliom´etricos son las bases de datos bibliogr´aficas tales como Web of Science, Scopus o Google Scholar. Estas cuentan con informaci´on sobre un conjunto de art´ıculos e investigadores, a partir de la cual calculan ciertos indicadores. Existen otras posibles fuentes de informaci´on tales como los reposi-torios institucionales de universidades o de centros de investigaci´on, los cuales cuentan con datos bibliogr´aficos, generalmente ingresados por los propios investigadores, que pueden ser utilizados para el calculo de indicadores bibliom´etricos que provean informaci´on sobre la instituci´on. Es-ta informaci´on se encuentra, generalmente, accesible libremente en un portal Web y requiere de un adecuado procesamiento para asegurar los niveles de calidad necesarios para el c´alculo de indicadores confiables. El presente trabajo presenta una herramienta para la obtenci´on y procesamiento de los datos de este tipo de repositorios semiestructurados. El procesamiento de datos involucra una mejora en la calidad de los datos obtenidos, eliminando posibles errores e informaci´on duplicada. A partir de estos datos mejorados, la herramienta crea un conjunto de entidades que almacenan la informaci´on del repositorio en forma estructurada. Sobre estas entidades la herramienta provee un conjunto de indicadores bibliom´etricos junto a una inter-faz para el agregado de nuevos indicadores. La herramienta desarrollada es extensible a varios tipos de repositorios semiestructurados. En este trabajo la misma se adapt´o para su funciona-miento sobre el repositorio institucional del Consejo Nacional de Investigaciones Cient´ıficas y T´ecnicas (CONICET).
Agradecimientos
A mi familia, por el afecto y apoyo que me dieron en todos estos a˜nos. Sin ellos no podr´ıa haber terminado esta carrera y cumplir el sue˜no de dedicarme a lo que me apasiona.
A mi director, el Dr. Cristian Mateos Diaz, por su constante apoyo y por el esfuerzo dedicado al desarrollo de este trabajo.
A mis amigos y compa˜neros, por haber compartido tantos momentos lindos a lo largo de esta carrera.
A todos, ¡Muchas Gracias!
Ezequiel Fernandez Vera
´
Indice general
´Indice de figuras VIII
´Indice de cuadros IX
Acr´onimos XI
1. Introducci´on 1
1.1. Motivaci´on . . . 2
1.2. Tesis . . . 2
1.3. Organizaci´on del trabajo . . . 3
2. Contexto 5 2.1. Bibliom´etricas . . . 5
2.1.1. Bases de datos acad´emicas . . . 9
2.2. Extracci´on de informaci´on . . . 10
2.2.1. Crawling . . . 10
2.2.2. Extracci´on de informaci´on Web . . . 11
2.3. Posprocesamiento . . . 11
2.3.1. Gram´aticas . . . 13
2.3.2. Normalizaci´on y correcci´on de errores . . . 14
2.4. Conclusiones . . . 17
3. Confecci´on de bibliom´etricas sobre repositorios no estructurados 19 3.1. Enfoque . . . 20
3.2. Modelo de datos . . . 23
iv ´INDICE GENERAL
3.2.2. Modelo de datos propuesto . . . 24
3.3. Obtenci´on de datos . . . 27
3.4. Procesamiento y mejora de datos . . . 28
3.4.1. Interfaz de acceso a los datos . . . 29
3.4.2. Procesamiento de t´ıtulos . . . 30
3.4.3. Procesamiento de autores . . . 34
3.4.3.1. Listas de autores . . . 35
3.4.3.2. Soluci´on propuesta . . . 37
3.4.3.3. Preprocesamiento . . . 38
3.4.3.4. Generaci´on de tokens . . . 39
3.4.3.5. Extracci´on de autores . . . 40
3.4.3.6. Heur´ısticas . . . 40
3.4.3.7. Traductor . . . 41
3.4.3.8. B´usqueda de autores . . . 42
3.5. Indicadores bibliom´etricos . . . 44
3.5.1. Indicadores bibliom´etricos base . . . 44
3.6. Conclusiones . . . 45
4. Implementaci´on 47 4.1. Repositorio Objetivo . . . 47
4.1.1. Descripci´on del repositorio . . . 48
4.1.2. Estructura del repositorio . . . 48
4.2. Obtenci´on del repositorio objetivo . . . 54
4.2.1. Crawler . . . 56
4.3. Interfaz de acceso a los datos . . . 58
4.3.1. Converter y Fetcher . . . 58
4.4. Modelo de datos . . . 60
4.4.1. Ejemplo . . . 61
4.4.2. Tablas de la base de datos . . . 63
4.4.2.1. Nombres propios de investigadores . . . 68
´
INDICE GENERAL v
4.6. Procesamiento de autores . . . 72
4.6.1. Preprocesamiento . . . 73
4.6.2. Generaci´on de tokens . . . 73
4.6.3. Heur´ısticas . . . 74
4.6.3.1. Patrones considerados por las heur´ısticas . . . 74
4.6.4. Traductor . . . 76
4.6.5. B´usqueda de autores . . . 79
4.6.5.1. B´usqueda de investigadores pertenecientes a la instituci´on . . . . 79
4.6.5.2. B´usqueda de investigadores ajenos a la instituci´on . . . 81
4.7. Indicadores bibliom´etricos . . . 82
4.7.1. Implementaci´on de indicadores bibliom´etricos base . . . 83
4.8. Conclusiones . . . 85
5. Resultados Experimentales 87 5.1. Composici´on del data-set . . . 87
5.2. Evaluaci´on del procesamiento de t´ıtulos . . . 88
5.3. Evaluaci´on del procesamiento de autores . . . 89
5.4. Indicadores bibliom´etricos . . . 92
5.5. Conclusiones . . . 94
6. Conclusiones y trabajos futuros 97 6.1. Limitaciones . . . 99
6.2. Trabajos futuros . . . 100
´
Indice de figuras
2.1. Proceso realizado por uncrawler . . . 10
2.2. Proceso de extracci´on de informaci´on Web . . . 12
2.3. Proceso de extracci´on de informaci´on con gram´aticas . . . 15
3.1. Flujo del procesamiento . . . 21
3.2. M´odulos del modelo de datos . . . 25
3.3. Modelo de datos abstracto . . . 25
3.4. Procesamiento de t´ıtulos y b´usqueda de art´ıculos . . . 32
3.5. Lista de autores para un art´ıculo del repositorio del CONICET . . . 34
3.6. Ejemplos de patrones presentes en diversos repositorios . . . 36
3.7. Proceso de reconocimiento de autores . . . 37
4.1. Secci´on datos acad´emicos . . . 49
4.2. Tipos de p´aginas del repositorio del CONICET . . . 50
4.3. Secci´on art´ıculos y p´agina Web de un art´ıculo . . . 52
4.4. Secci´on cap´ıtulos y p´agina de un cap´ıtulo de libro . . . 53
4.5. Secci´on congresos y p´agina de un art´ıculo de conferencia . . . 55
4.6. Proceso general de obtenci´on del repositorio . . . 56
4.7. Estructura de directorios creada para los identificadores 31603 a 31605 . . . 57
4.8. Diagrama de clases para el modulo Converter . . . 58
4.9. Ejemplo de atributos de los documentos, junto al c´odigo HTML correspondiente 60 4.10. Modelo de datos para el repositorio de CONICET . . . 61
4.11. Objetos para un repositorio de ejemplo . . . 62
viii ´INDICE DE FIGURAS
4.13. Tablas de la base de datos . . . 64
4.14. Modificaciones al esquema de la base de datos . . . 69
4.15. Reglas l´exicas . . . 76
4.16. Reglas sint´acticas . . . 77
4.17. Acciones asociadas a las reglas sint´acticas . . . 79
4.18. Diagrama de clases para la b´usqueda de investigadores pertenecientes a la instituci´on 80 4.19. Diagrama de clases de los indicadores bibliom´etricos . . . 83
5.1. Resultados del proceso de unificaci´on de art´ıculos . . . 89
5.2. Resultados del reconocimiento de autores . . . 90
5.3. Resultados del reconocimiento de autores por la etapa de heur´ısticas . . . 91
5.4. Resultados del reconocimiento de autores por la etapa de traducci´on . . . 92
´
Indice de cuadros
2.1. Ejemplos de errores e irregularidades en los datos . . . 16
Acr´
onimos
ANTLR ANother Tool for Language Recognition API Application Program Interface
CONICET Consejo Nacional de Investigaciones Cient´ıficas y T´ecnicas DOM Document Object Model
EBNF Extended Backus-Naur Form HTML Hyper Text Markup Language ISSN International Standard Serial Number
SIGEVA Sistema Integral de Gesti´on y Evaluaci´on SFS SciFinder Scholar
SCIE Science Citation Index Expanded URL Uniform Resource Locator
Cap´ıtulo 1
Introducci´
on
Las bibliom´etricas representan en l´ıneas generales un conjunto de m´etodos para analizar literatu-ra cient´ıfica y t´ecnica [De Bellis, 2009]. Dos m´etodos muy comunes dentro de este conjunto son el an´alisis de citas (qu´e y cu´antos art´ıculos cient´ıficos referencian otro art´ıculo cient´ıfico), y an´alisis de contenido, que involucra por ejemplo analizar si dos art´ıculos se relacionan tem´aticamente. Esto permite a su vez facilitar la b´usqueda y relaci´on de informaci´on cient´ıfica, incrementando en principio la productividad en la generaci´on de conocimiento.
Si bien el uso de bibliom´etricas se origin´o en el campo de las ciencias de la informaci´on, est´a creciendo en la actualidad su empleo en la medici´on del impacto de los resultados cient´ıficos de un campo del conocimiento, de un investigador, o incluso un art´ıculo particular. As´ı, como corolario, en varios pa´ıses, el empleo de bibliom´etricas como forma de evaluar y gestionar la producci´on cient´ıfica se est´a popularizando notablemente. Como ejemplo, puede citarse el caso del Australian Research Council, quien ha apelado al uso t´ecnicas avanzadas de bibliom´etricas para detectar posibles incongruencias en el esquema actual de evaluaci´on que dicho Consejo utiliza para puntuar las publicaciones en revistas de los investigadores que nuclea [Vanclay, 2011]. Uno de los pilares de las bibliom´etricas existentes hasta el momento ha sido mayormente centrarse en medir aspectos de inter´es bas´andose en las relaciones entre art´ıculos. Con el surgimiento de las redes sociales y la Web 2.0, se ha instalado complementariamente la idea de aplicar bibliom´etricas para medir relaciones entre pares investigadores [Tonta and Darvish, 2010]. As´ı resulta por ejemplo posible construir indicadores interesantes de ciencia y tecnolog´ıa tales como qu´e porcentaje de investigadores de un pa´ıs trabajan en temas de investigaci´on similares, cu´al es la concentraci´on de esfuerzo en t´opicos particulares de acuerdo a los centros de investigaci´on, qu´e tipo de cooperaciones interinstitucionales se encuentran activas, entre otras.
Este cap´ıtulo est´a organizado como se detalla a continuaci´on. La Secci´on 1.1 describe los pro-blemas que motivaron esta tesis. Luego, en la Secci´on 1.2 se describe la soluci´on propuesta. Por ´
2 CAP´ITULO 1. INTRODUCCI ´ON
1.1.
Motivaci´
on
Todas los estudios bibliom´etricos requieren de datos sobre los cuales calcular los indicadores. Generalmente, estos datos se encuentran en bases de datos de publicaciones cient´ıficas. Existen varias bases de datos de este tipo, las cuales almacenan datos sobre las publicaciones tales como t´ıtulo, resumen del contenido, fecha de publicaci´on, medio donde se encuentra publicada (revista cient´ıfica, conferencia, libro, etc.), palabras clave, autores, entre otros. A su vez, estas bases cuentan con informaci´on personal sobre los investigadores y el listado de art´ıculos de las que particip´o el investigador. Toda esta informaci´on es utilizada por estas bases de datos para brindar servicios de asistencia en la investigaci´on, tales como b´usqueda de art´ıculos por palabras clave, b´usquedas por autor, acceso al texto de art´ıculos, seguimiento de citas de los art´ıculos, etc. Entre los servicios ofrecidos, se encuentra el c´alculo de indicadores bibliom´etricos. El tipo de indicadores y su confiabilidad, son determinados por la informaci´on con la que cuenta la base de datos.
El desarrollo de nuevos estudios bibliom´etricos requiere de acceso a informaci´on como la que es almacenada por las bases de datos mencionadas. Estas bases, generalmente, no hacen p´ublico su repositorio de datos, por lo que los usuarios se encuentran limitados al conjunto de indicadores ofrecidos por las mismas. A su vez, las bases de datos no cuentan con una cobertura del 100 % de la literatura cient´ıfica [Larsen and Von Ins, 2010, Hilbert et al., 2015].
Existen fuentes alternativas de informaci´on bibliom´etrica, tales como las p´aginas Web personales de los investigadores o los portales Web de instituciones cient´ıficas. Estas contienen, general-mente, datos ingresados directamente por los investigadores por lo que se puede considerar que cuentan con una buena cobertura de las publicaciones. En su mayor´ıa, estas fuentes son del tipo semiestructuradas, por lo que los datos requieren de un adecuado procesamiento antes de poder ser utilizados.
1.2.
Tesis
El objetivo del presente trabajo es la construcci´on de una herramienta que derive informa-ci´on estructurada (grafos) a partir de un repositorio de informaci´on cient´ıfica semiestructurado, aprovechando t´ecnicas cl´asicas de recuperaci´on de informaci´on tales como miner´ıa de textos y desambiguaci´on de t´erminos para reconocer entidades de inter´es (art´ıculos, investigadores) y sus relaciones. Estas entidades representan nodos del grafo a derivar.
Sobre el grafo de entidades generado se implementaron herramientas que brindan informaci´on sobre la estructura y el contenido del repositorio de origen. En particular, se implementaron un conjunto de indicadores bibliom´etricos, junto a una interfaz de programaci´on la cual facilita la creaci´on de nuevos indicadores.
1.3. ORGANIZACI ´ON DEL TRABAJO 3 su ejecuci´on sobre el repositorio provisto por el Consejo Nacional de Investigaciones Cient´ıficas y T´ecnicas (CONICET). En ´el se encuentra la informaci´on personal de todos los investigadores de la instituci´on y las publicaciones de cada uno de ellos.
1.3.
Organizaci´
on del trabajo
El resto del trabajo se encuentra organizado como se detalla a continuaci´on. El Cap´ıtulo 2 presenta el concepto de bibliom´etricas junto con ejemplos de algunos indicadores bibliom´etricos. A su vez, se presentan los conceptos y t´ecnicas utilizados en la obtenci´on y procesamiento de los datos del repositorio objetivo.
En el Cap´ıtulo 3 se presenta el enfoque utilizado en el presente trabajo. El mismo comienza describiendo el modelo de datos utilizado por la herramienta, el cual debe representar los art´ıculos cient´ıficos, los investigadores, los v´ınculos entre art´ıculo e investigador, los diferentes medios de publicaci´on, etc. Luego, se describen las etapas de procesamiento de la herramienta, los problemas que estas presentan y como se solucionaron. Por ´ultimo, se presenta un conjunto de indicadores bibliom´etricos, los cuales pueden calcularse con la informaci´on contenida en el modelo de datos. Mientras que en este cap´ıtulo se describe la herramienta en t´erminos generales, el Cap´ıtulo 4 describe los detalles de implementaci´on de la herramienta y como est´a se adapt´o para su aplicaci´on sobre el repositorio de datos del CONICET.
Posteriormente, el Cap´ıtulo 5 detalla los resultados obtenidos al ejecutar la herramienta sobre el repositorio objetivo. El mismo comienza describiendo c´omo se componen los datos obtenidos, para luego detallar la efectividad de la herramienta en el procesamiento de t´ıtulos y listas de autores de los art´ıculos. Como se describe a lo largo del trabajo, estas tareas son las de mayor importancia para lograr que los indicadores bibliom´etricos sean confiables. Por ´ultimo, el cap´ıtulo presenta el resultado de ejecutar los indicadores bibliom´etricos implementados, sobre el conjunto de datos obtenido.
Cap´ıtulo 2
Contexto
Las bibliom´etricas pueden ser utilizadas con m´ultiples fines tales como comprender qu´e t´opicos son los m´as tratados dentro de un ´area de investigaci´on, evaluar el rendimiento de investigadores, tomar decisiones de pol´ıtica cient´ıfica, entre otros. Actualmente, estos indicadores bibliom´etricos son, mayormente, calculados a partir de la informaci´on provista por bases de datos de publica-ciones cient´ıficas, tales como Web of Science1, Scopus2 o Google Scholar3. Existen otras bases de datos que almacenan informaci´on sobre publicaciones cient´ıficas, en formatos semiestructura-dos, como por ejemplo los portales Web de universidades o institutos cient´ıficos. Como se detall´o en el cap´ıtulo anterior, el objetivo de este trabajo es la creaci´on de una herramienta capaz de calcular indicadores bibliom´etricos sobre la informaci´on contenida en este tipo de repositorios. Este cap´ıtulo introduce los principales conceptos y la t´ecnicas utilizadas en este trabajo. El mismo se estructura como se detalla a continuaci´on. En la Secci´on 2.1 se presenta el concepto de bibliom´etricas junto con ejemplos de estas. La Secci´on 2.2 describe las t´ecnicas involucradas en la extracci´on de informaci´on de repositorios semiestructurados. La Secci´on 2.3 menciona las t´ecnicas utilizadas en el procesamiento de la informaci´on obtenida del repositorio. Finalmente, la Secci´on 2.4 presenta las conclusiones del cap´ıtulo.
2.1.
Bibliom´
etricas
Las publicaciones acad´emicas son una de las principales formas de comunicaci´on con la que cuentan los cient´ıficos [Osareh, 1996]. Entre los tipos de publicaciones se encuentran las revis-tas, libros, actas de conferencias, patentes, etc. El objetivo de las bibliom´etricas es analizar, cuantificar y medir esta comunicaci´on, para construir representaciones formales de su compor-tamiento con prop´ositos evaluativos, explicativos y administrativos [De Bellis, 2009]. El termino fue acu˜nado por Alan Pritchard, quien defini´o las bibliom´etricas como la aplicaci´on de m´etodos matem´aticos y estad´ısticos a los libros y otros medios de comunicaci´on [Pritchard, 1969].
1
http: // wokinfo. com/
2
https: // www. elsevier. com/ solutions/ scopus
3
http: // scholar. google. com
6 CAP´ITULO 2. CONTEXTO
Uno de los aspectos m´as importantes de las bibliom´etricas es que brindan herramientas para la evaluaci´on de los avances en ciencia y tecnolog´ıa, mediante indicadores basados en la medici´on de las publicaciones, patentes y citas. El gran volumen de publicaciones y patentes demanda el uso de indicadores para caracterizar la actividad cient´ıfica y tecnol´ogica [Narin et al., 1994]. Una correcta utilizaci´on de estos indicadores como herramientas de evaluaci´on involucra asegurar que los mismos cuentan con el suficiente nivel de sofisticaci´on, que sus limitaciones son tenidas en cuenta y que son utilizados en combinaci´on con informaci´on cualitativa sobre el objetivo evaluado [Moed and Visser, 2007]. En la actualidad, las bibliom´etricas son aplicadas en una variedad de campos [Okubo, 1997]:
Historia de la ciencia: el desarrollo de las disciplinas cient´ıficas puede ser comprendido mediante un estudio de la historia de los resultados obtenidos por los cient´ıficos.
Las ciencias sociales: el an´alisis de las publicaciones permite observar la estructura de la comunidad cient´ıfica, sus motivaciones y los v´ınculos que se dan entre investigadores. Documentaci´on: la medici´on de publicaciones permite, por ejemplo, identificar el n´ucleo de revistas de una disciplina, mediante un an´alisis de la cantidad de revistas que cubren el 50 %, 80 % y 90 % de la informaci´on de un ´area dada.
Pol´ıtica cient´ıfica: los indicadores bibliom´etricos son una herramienta importante para medir la productividad y calidad cient´ıfica. Estos indicadores proveen una base para evaluar y orientar la investigaci´on y desarrollo cient´ıficos. El trabajo de [Narin et al., 1994] propone que las bibliom´etricas se pueden pueden utilizar para tomar decisiones de pol´ıtica nacional, decisiones estrat´egicas a nivel institucional y decisiones t´acticas a nivel del manejo de la investigaci´on.
Con el objetivo de ayudar a comprender qu´e son las bibliom´etricas, a continuaci´on se presentan algunos de los indicadores bibliom´etricos existentes m´as importantes junto a una breve des-cripci´on de estos. Las fuentes citadas contienen descripciones de otros indicadores ampliamente usados.
N´umero de publicaciones
El n´umero de publicaciones realizadas provee una medida simplificada de la cantidad de trabajo producida por un cient´ıfico, un grupo de investigadores o una universidad [Okubo, 1997]. Este indicador cuantitativo es sencillo de calcular pero no da cuenta de la calidad del trabajo produ-cido. Uno de sus posibles usos es comparar la cantidad de trabajo producido por un cient´ıfico o un grupo de investigaci´on contra el promedio de producci´on del ´area que se est´e analizando y determinar si la producci´on se encuentra en valores normales [Kermarrec et al., 2007].
2.1. BIBLIOM ´ETRICAS 7 altoimpact factor pueden considerarse m´as importantes que un n´umero mayor de publicaciones en revistas de menor impacto [Moed et al., 1995].
N´umero de citas
El impacto de un trabajo acad´emico, luego de su publicaci´on, puede ser evaluado, en parte, por el n´umero de citas recibidas [Cronin and Sugimoto, 2014]. Para fortalecer la calidad de este indicador, como medida del impacto de un art´ıculo, es necesario considerar las siguientes caracter´ısticas de las citas [Moed and Visser, 2007]:
El n´umero de citas aumenta con el tiempo desde que fue publicado el art´ıculo.
El tipo de la publicaci´on citada, ya que, por ejemplo, los art´ıculos de tiporeview osurvey cuentan con m´as citas que los art´ıculos regulares.
Cada disciplina cient´ıfica cuenta con caracter´ısticas que pueden afectar el n´umero de citas de los art´ıculos. Por ejemplo, las publicaciones del ´area de F´ısica presentan, generalmente, mayor n´umero de citas que las del ´area de Ciencias de la Computaci´on.
Un autor puede citar art´ıculos de su propia autor´ıa, por lo cual es necesario decidir si estas citas se consideran o no.
Factor de impacto
El factor de impacto es uno de los indicadores m´as diseminados en el mundo
cient´ıfico [Moed, 2009]. Este indicador intenta dar una medida de la calidad de una revista cient´ıfica a partir del n´umero de citas que reciben los art´ıculos publicados en
esta [Kermarrec et al., 2007]. El valor de este indicador se calcula para un a˜no en particular, como el promedio de citas recibidas por los art´ıculos publicados en la revista en los dos a˜nos previos. La ecuaci´on se muestra a continuaci´on:
J ifn=
(Cn−1+Cn−2)
(Pn−1+Pn−2)
Donde J ifn es el journal impact factor en el a˜no n, Cn el n´umero de citas a los art´ıculos publicados en la revista durante el a˜no n yPn el n´umero de art´ıculos publicados durante el a˜no n. Este indicador es publicado todos los a˜nos, por Thomson Reuters, en el reporte anual Journal Citation Reports4.
4
8 CAP´ITULO 2. CONTEXTO
Eigenfactor
Este indicador, de forma similar al factor de impacto, intenta brindar informaci´on sobre la calidad de una revista cient´ıfica, a trav´es de un an´alisis de las citas recibidas por los art´ıculos publicados en esta. La principal caracter´ıstica que diferencia a este indicador del anterior es que tiene en cuenta la importancia de las revistas en donde se encuentran publicados los art´ıculos citantes y no solo el n´umero de citas. De esta forma, se intenta reflejar el hecho que una cita proveniente de una revista prestigiosa puede ser m´as importante que varias citas originadas en art´ıculos publicados en revistas de menor relevancia [Bergstrom, 2007].
El algoritmo utilizado para calcular este indicador aplica t´ecnicas de an´alisis de redes al grafo compuesto por los art´ıculos y las referencias entre ellos. El sitio Web 5 provee una explicaci´on detallada del algoritmo.
H Index
A diferencia de los indicadores previamente descriptos, que brindan informaci´on sobre la calidad de art´ıculos y revistas, el indicador H Index caracteriza la producci´on cient´ıfica de un investiga-dor. Este indicador asigna un valor h a cada investigainvestiga-dor. Un investigador con n art´ıculos tiene un valor h si h de sus n art´ıculos cuentan con h citas cada uno y los restantes n-h art´ıculos cuen-tan con menos de h citas cada uno [Hirsch, 2005]. Por ejemplo, un ´ındice h de 10 significa que de todos los art´ıculos del investigador, 10 de ellos cuentan con 10 o m´as citas mientras que los h-10 restantes tienen menos de 10 citas cada uno. Este indicador se puede calcular sencillamente ya que solo se necesita conocer el n´umero de citas recibidas por los art´ıculos correspondientes a un autor. Las bases de datos Google Scholar, Web of Science y Scopus computan este indicador para cada investigador. Existe evidencia de que este indicador se corresponde con los resultados de evaluaciones por parte de otros investigadores [Van Raan, 2006, Batista et al., 2006].
Crown
Al igual que el H Index, el indicador Crown intenta presentar una medida del impacto de un autor. Este se calcula como la raz´on entre el promedio de citas recibidas y el promedio de citas de art´ıculos del mismo tipo, publicados en el mismo a˜no y en revistas de la misma ´
area [Lundberg, 2007]. El objetivo de esta m´etrica es comparar las citas recibidas por los art´ıcu-los de un investigador, contra el promedio de citas dentro del campo de estudio del mismo. Un valor Crown mayor a 1 significa que el autor es m´as citado que el promedio mundial. Al con-siderar los diferentes campos de estudio, este indicador intenta presentar un valor que permite comparar el impacto de investigadores pertenecientes a distintas ´areas. Uno de los principales problemas que presenta este indicador es que los campos de estudio no se encuentran definidos estrictamente [Kermarrec et al., 2007].
5
2.1. BIBLIOM ´ETRICAS 9 Los indicadores descriptos aqu´ı son un peque˜no subconjunto del total de indicadores existentes. El estudio de las bibliom´etricas es un ´area activa donde se presentan nuevos indicadores y se plantean problemas presentes en los indicadores existentes. Por otra parte, el c´alculo de cualquier indicador bibliom´etrico requiere de acceso a una base de datos de publicaciones. Los tipos de indicadores que se pueden calcular y la calidad de estos depende de los datos a los que se tiene acceso y de cuan fieles son estos a la realidad que representan. A continuaci´on se presentan las bases de datos de publicaciones acad´emicas.
2.1.1. Bases de datos acad´emicas
Los art´ıculos acad´emicos se encuentran registrados en bases de datos de publicaciones cient´ı-ficas, com´unmente accesibles a trav´es de Internet. En general, para cada art´ıculo, almacenan informaci´on sobre sus autores, palabras clave, campo de estudio, resumen, texto completo del art´ıculo (en algunos casos) y un listado de los art´ıculos citados, entre otros datos. A su vez, estas bases cuentan con motores de b´usqueda que permiten buscar art´ıculos por una gran variedad de par´ametros [Falagas et al., 2008]. La informaci´on brindada por estas bases de datos es la base para el c´alculo de los indicadores bibliom´etricos [Kermarrec et al., 2007]. La mayor´ıa de las bases incluyen indicadores bibliom´etricos entre los servicios que ofrecen.
Actualmente existe un gran n´umero de bases de datos de publicaciones cient´ıficas. Las que cubren un mayor n´umero de art´ıculos son Web of Science, Scopus y Google Scholar [Farhadi et al., 2013]. Estas fuentes contienen art´ıculos de m´ultiples pa´ıses y disciplinas, y son las m´as utilizadas para el la obtenci´on de indicadores bibliom´etricos.
Las bases de datos mencionadas extraen los campos relevantes de los art´ıculos (t´ıtulo, resumen, autores, citas, etc.), ya sea manualmente o por m´etodos autom´aticos, con los cuales se crean las entradas en la base de datos [Bar-Ilan, 2008]. Esta tarea est´a relacionada con el objetivo de este trabajo.
El objetivo de este trabajo es dise˜nar una herramienta que provea los servicios m´as relevantes de las bases de datos mencionadas, tales como el c´alculo de indicadores bibliom´etricos, sobre los datos provistos por una fuente de informaci´on semiestructurada. Un ejemplo de este tipo de fuente es el sitio Web de una instituci´on donde se almacenan las publicaciones de los investiga-dores que pertenecen a la misma. El principal problema que presenta esta tarea es la extracci´on de la informaci´on contenida en el repositorio y la creaci´on de un conjunto de entidades, junto a los v´ınculos entre ellas, que representen esta informaci´on. Las entidades de inter´es en este caso son los investigadores y sus publicaciones. Una vez que se cuenta con un conjunto de entida-des vinculadas correctamente, se pueden implementar las consultas e indicadores bibliom´etricos deseados.
10 CAP´ITULO 2. CONTEXTO
que esto no se corresponde con la realidad que se intenta representar. A continuaci´on se presenta una descripci´on de estos dos aspectos.
2.2.
Extracci´
on de informaci´
on
Como se mencion´o en la secci´on anterior, una de las tareas a realizar por la herramienta desa-rrollada es la extracci´on de las entidades de inter´es, de fuentes de datos semiestructuradas. Se denominan semiestructuradas a aquellas fuentes de informaci´on que poseen una estructu-ra, pero la misma no cuenta con la rigidez presente en sistemas de bases de datos tradicio-nales [Abiteboul, 1997]. En particular, este trabajo se centra en repositorios de informaci´on semiestructurada disponibles como p´aginas Web accesibles a trav´es de Internet.
La extracci´on de informaci´on de este tipo de fuentes consta de dos tareas principales. En primer lugar, se debe recorrer el sitio Web objetivo descargando las p´aginas que contienen los datos de inter´es. Luego, la informaci´on contenida en estas p´aginas debe ser procesada para extraer los campos necesarios para la creaci´on de las entidades de tipo investigador y art´ıculo. A continua-ci´on se detallan las t´ecnicas utilizadas en estas dos tareas.
2.2.1. Crawling
Uncrawler es un programa que descarga y almacena p´aginas Web [Shkapenyuk and Suel, 2002]. El proceso llevado a cabo por el mismo consiste en mantener una cola priorizada de direcciones Web, o Uniform Resource Locators (URLs), que deben ser descargadas. El crawler obtiene una URL de esta cola, descarga la p´agina que se encuentra en esa direcci´on Web, y encola las URLs que se encuentran en la p´agina descargada. Este proceso se repite hasta que se recorrieron un n´umero suficiente de p´aginas o alg´un otro objetivo fue alcanzado [Cho and Garcia-Molina, 2002]. La Figura 2.1 muestra el proceso general detr´as de un crawler. En la misma se ve c´omo la cola de URLs es inicializada con un conjunto de URLs llamadas semillas a partir de las cuales el crawler comenzar´a su proceso. El proceso realizado por elcrawler es comparable a un algoritmo de b´usqueda sobre grafos, como por ejemplo breadth depth search. El sitio Web que se desea recorrer puede ser visto como un grafo donde las p´aginas son los nodos y los hiperv´ınculos, los v´ertices. Desde esta perspectiva, el algoritmo realizado por el crawler comienza desde un grupo de nodos semilla y sigue los v´ertices para alcanzar los nodos vecinos [Liu, 2007].
2.3. POSPROCESAMIENTO 11 2.2.2. Extracci´on de informaci´on Web
Luego de obtener las p´aginas Web de la fuente de informaci´on objetivo, estas deben ser procesa-das para extraer la informaci´on almacenada sobre los art´ıculos e investigadores. Los programas utilizados para la extracci´on de informaci´on semiestructurada, tal como la que se encuentra en las p´aginas Web, se denominan wrappers [Liu, 2007].
Generalmente, las p´aginas Web son generadas a partir de registros, almacenados en bases de datos tradicionales, de acuerdo a reglas que no son conocidas por el usuario. El prop´osito de un wrapper es extraer estos registros del c´odigo Hyper Text Markup Language (HTML) de una p´agina Web, para lo cual debe conocer las reglas, o parte de ellas, con las que se generan las p´aginas [Li and Ng, 2004].
Los enfoques para la creaci´on de wrappers se dividen en manuales y autom´aticos [Liu, 2007]. En el enfoque manual, el programador debe identificar patrones presentes en el c´odigo HTML del sitio Web objetivo, que le permitan implementar un programa capaz de extraer los datos de inter´es. Por otro lado, los m´etodos autom´aticos se centran en identificar estos patrones sin que el programador deba describirlos expl´ıcitamente. Algunos de estos m´etodos autom´aticos requieren de ejemplos marcados por el usuario, mientras que otros no requieren intervenci´on de un humano. Los m´etodos autom´aticos son de inter´es cuando se desea extraer informaci´on de un gran n´umero de sitios Web y el trabajo de describir los patrones de todos ellos es considerable. Los m´etodos manuales son sencillos de implementar y permiten un control preciso de los patrones. En este trabajo se utiliz´o el enfoque manual dado que solo se desea trabajar con un repositorio a la vez y se necesita de buena precisi´on en la extracci´on.
En t´erminos generales, el proceso realizado por unwrapper consiste en transformar los archivos HTML obtenidos por el crawler, en una estructura de ´arbol de acuerdo al Document Object Model (DOM)6. Luego, las reglas de extracci´on definidas se aplican sobre este ´arbol para extraer los campos de inter´es [Liu et al., 2000, Sahuguet and Azavant, 1999]. La Figura 2.2 muestra el ´
arbol creado para un segmento de c´odigo HTML, junto al resultado de aplicar las reglas de extracci´on sobre este. Como se observa en la figura, el segmento de c´odigo HTML contiene el campo autores de un art´ıculo. Este es transformado en una estructura de ´arbol, de acuerdo al modelo definido por DOM, donde el nodo “campo” es el padre de los nodos “nombre” y “valor”. La regla de extracci´on para este caso debe indicar que al encontrar dos nodos hoja, cuyos padres contengan el atributo class=”nombre“ y class=”valor”respectivamente, se debe extraer el texto de los mismos para formar el nombre de un campo y su valor, como se muestra en la figura.
2.3.
Posprocesamiento
Una de las caracter´ısticas de la informaci´on semiestructurada es que puede contener errores o requerir de un an´alisis adicional para llevarla a un estado correcto, a diferencia de lo que sucede
6
12 CAP´ITULO 2. CONTEXTO
2.3. POSPROCESAMIENTO 13 con las bases de datos tradicionales, donde se asegura que los datos cumplen un conjunto de restricciones [Abiteboul, 1997]. Es por esto que los datos obtenidos por el wrapper deben pasar por una etapa de posprocesamiento con el fin de corregir posibles errores o de derivar nuevos datos a partir de los existentes. Por ejemplo, es posible que un campo contenga errores l´exicos, que varios campos deban ser combinados en uno solo, que algunos campos falten, entre otros tipos de problemas.
Aqu´ı se describen dos herramientas utilizadas en este trabajo durante las etapas de posprocesa-miento. Por un lado, el uso de gram´aticas libres del contexto para la extracci´on de informaci´on de campos obtenidos por el wrapper, que necesitan de una etapa adicional de procesamiento. Por otro lado, la aplicaci´on de un flujo de transformaciones que eliminen posibles errores o irregularidades en los campos extra´ıdos.
2.3.1. Gram´aticas
Una de las t´ecnicas m´as utilizadas en el ´area de extracci´on de informaci´on es el uso de gram´ ati-cas para expresar patrones que se desea extraer de informaci´on textual [Chiticariu et al., 2010, Appelt and Onyshkevych, 1998]. Los sistemas que implementan esta t´ecnica consideran al texto de entrada como una cadena de s´ımbolos sobre los cuales se debe identificar la presencia de un conjunto de patrones que son expresados mediante una gram´atica. Cuando se detecta un conjunto de s´ımbolos que cumplen con uno de los patrones, se activa una acci´on vinculada al patr´on reconocido.
Una gram´atica es un conjunto de reglas de producci´on que definen la sintaxis de un lengua-je [Louden, 1997]. Esta consta de 4 componentes:
Un conjunto de s´ımbolos terminales, llamados tokens. Los terminales son los s´ımbolos elementales del lenguaje. Es decir que toda cadena que pertenece al lenguaje consta de una serie de estos s´ımbolos.
Un conjunto de no terminales. Cada uno de estos representa un conjunto de cadenas de terminales.
Un conjunto de reglas de producci´on. Cada una de estas est´a compuesta por un no terminal en el lado izquierdo, una flecha y una serie de no terminales y terminales en el lado derecho. El lado derecho tambi´en se denomina cuerpo de la regla. Estas reglas indican las posibles formas en que los no terminales del lado izquierdo pueden ser reemplazados por los elementos del lado derecho.
Por ´ultimo, la designaci´on de uno de los no terminales como s´ımbolo de comienzo. To-da derivaci´on, es decir toda serie reglas de producci´on aplicadas, comienza con este no terminal.
14 CAP´ITULO 2. CONTEXTO
terminales, indicados con may´usculas, son AUTORES y AUTOR. Los terminales, o tokens, in-dicados con min´usculas, sonnombre,apellido,inicial y;. Las reglas de producci´on se muestran numeradas del 1 al 5. El s´ımbolo de comienzo es el no terminal AUTORES.
El lenguaje descripto por una gram´atica es el conjunto de cadenas de caracteres a las que se puede llegar mediante derivaciones [Aho et al., 1986]. Una derivaci´on consiste en aplicar las reglas de producci´on de la gram´atica, reemplazando los no terminales por el cuerpo de la regla aplicada. Este proceso comienza con el s´ımbolo de comienzo y termina cuando no hay mas no terminales que puedan ser sustituidos. El producto final de una derivaci´on es una cadena de terminales, llamada sentencia, aceptada por el lenguaje descripto por la gram´atica.
Los caracteres de entrada son agrupados en tokens los cuales corresponden con los s´ımbolos terminales de la gram´atica. Esta tarea es realizada por el analizador l´exico. La Figura 2.3 muestra c´omo los nombres de personas son transformados en los tokensapellido,nombre, inicial y;. Se denomina parsing al proceso de verificar si una cadena de caracteres corresponde con el len-guaje definido por una gram´atica. Este proceso implica encontrar la secuencia de derivaciones correctas que permitan llegar desde el s´ımbolo de comienzo a la cadena de terminales que repre-senten la entrada que se desea verificar. Si no es posible encontrar esta secuencia de derivaciones, la cadena de caracteres de entrada no pertenece al lenguaje.
La forma tradicional de mostrar una secuencia de derivaciones es mediante un ´arbol deparsing, como el que se muestra en la Figura 2.3. Los nodos internos del ´arbol corresponden a los s´ımbolos no terminales mientras que las hojas representan terminales. Los hijos de cada nodo interno representan la sustituci´on de un no terminal por el cuerpo de la regla de producci´on que tenga a este no terminal como parte izquierda de la regla. El nodo ra´ız del ´arbol se corresponde con el s´ımbolo de comienzo.
En cuanto a la extracci´on de informaci´on, el ´arbol deparsing cuenta con la informaci´on necesaria para extraer los datos de inter´es de la cadena de caracteres de entrada, ya que muestra el vinculo entre los tokens de entrada y los no terminales. Por ejemplo, en la Figura 2.3 se ve c´omo la asociaci´on entre las tres ocurrencias del no terminal AUTOR y los tres conjuntos de tokens correspondientes a los autores nombrados en la cadena de entrada.
2.3.2. Normalizaci´on y correcci´on de errores
Toda fuente de informaci´on que contenga datos sobre el mundo real puede contener errores e irregularidades [Orr, 1998]. Por esto, adem´as del posprocesamiento dedicado a extraer informa-ci´on de los datos obtenidos por elwrapper, es necesario contar con una etapa de procesamiento dedicada a mejorar la calidad de los datos. El objetivo es contar con un conjunto de datos que representen adecuadamente la realidad.
2.3. POSPROCESAMIENTO 15
16 CAP´ITULO 2. CONTEXTO
a nivel de ingreso de datos son aquellos que no pueden ser prevenidos en el esquema de datos, como por ejemplo los errores ortogr´aficos. Estas son las dos categor´ıas sobre las cuales se hace foco en este trabajo. El Cuadro 2.1 muestra ejemplos de errores de ambos grupos.
Problema Ejemplo Notas
Valores ilegales
fecha=”12/40/2015” Valores fuera del dominio del campo.
Violaci´on de dependencias funcionales
edad=”15”,
fecha de nacimiento=”10/5/1969”
La dependencia edad=fecha actual - fecha nacimiento debe
respetarse. Violaci´on de
unicidad
investigador(nombre=”Juan Gomez”, DNI=”12345678”)
investigador(nombre=”Julieta Perez”, DNI=”12345678”)
El atributo DNI debe ser diferente para todas las personas.
Violaci´on de integridad referencial
investigador(nombre=”Juan Gomez”, oficina=”123”)
Si la oficina referenciada no est´a definida, se viola la integridad
referencial. Valores
faltantes
tel´efono=”555-55555” Al momento de ingresar los datos manualmente, algunos valores pueden faltar o ser falsos. Errores
ortogr´aficos
ciudad=”Buenos Aiires” Generalmente se dan por errores de tipeo.
Abreviaciones t´ıtulo=”Ing. en S.” Algunas abreviaciones no son claras.
Valores compuestos
autores=”Jose Perez; Julieta D. Fernandez; L. Gomez”
Algunos campos deben ser descompuestos. Este es el problema descripto previamente. Campos
mezclados
ciudad=”Argentina” Un usuario puede confundir los campos de un formulario. Transposici´on
de palabras
investigador(nombre=”Jose P.”) investigador(nombre=”D. Julieta”)
Este tipo de errores es com´un en campos “libres” donde el usuario
debe ingresar m´as de una palabra.
Registros duplicados
investigador(nombre=”Juan Gomez”) investigador(nombre=”Juan G.”)
Debido a un error de tipeo, pueden existir dos registros distintos para la misma entidad. Registros con-tradictorios investigador(nombre=”Juan Gomez”, DNI=”123456789”) persona(nombre=”Juan Gomez”, DNI=”87654321”)
La misma entidad se encuentra descripta por dos valores
contradictorios. Referencias
incorrectas
investigador(nombre=”Juan Gomez”, oficina=”123”)
La oficina referenciada est´a definida, pero es incorrecta.
Cuadro 2.1:Ejemplos de errores e irregularidades en los datos
2.4. CONCLUSIONES 17 1. Auditor´ıa de los datos.La auditor´ıa consiste en encontrar los tipos de anomal´ıas existentes en los datos que se desea procesar. Un an´alisis de los datos revela los rangos de los valores, valores faltantes, frecuencia de valores, patrones, etc. A partir de esta informaci´on se puede observar los tipos de anomal´ıas presentes para luego elaborar un listado de las mismas y sus caracter´ısticas.
2. Definici´on de un workflow. En esta etapa se definen la serie de operaciones que se deben realizar sobre los datos con el fin de corregir anomal´ıas. Las operaciones a realizar y su orden son decididas a partir de los resultados entregados por la auditor´ıa. Generalmente, elworkflow se compone de una combinaci´on de las siguientes tareas:
a) Adaptaci´on de formato de las tuplas y valores. b) Aplicaci´on de restricciones de integridad.
c) Derivaci´on de nuevos valores a partir de los existentes. d) Eliminaci´on de contradicciones entre tuplas.
e) Unificaci´on y eliminaci´on de duplicados. f) Detecci´on de tuplas consideradas invalidas.
3. Verificaci´on del workflow. Es necesario verificar que el workflow definido entregue resul-tados correctos. Para esto, se puede ejecutar el workflow sobre los datos, analizar los re-sultados obtenidos y, de ser necesario, actualizar la definici´on del mismo. Este proceso de an´alisis, dise˜no y evaluaci´on puede realizarse m´as de una vez hasta obtener los resultados deseados.
Elworkflow de transformaciones debe ser implementado y ejecutado sobre los datos entregados por el wrapper. La Secci´on 4.5 describe el proceso de creaci´on del workflow de transformaciones utilizado por la herramienta implementada.
2.4.
Conclusiones
En este cap´ıtulo se present´o el concepto de bibliom´etrica, sus usos y ejemplos de indicadores bibliom´etricos. A su vez, se coment´o cuales son las bases de datos de publicaciones m´as utilizadas para el c´alculo de estos indicadores.
18 CAP´ITULO 2. CONTEXTO
la creaci´on de las entidades de tipo art´ıculo e investigador que correspondan. En cuanto a este proceso, las t´ecnicas mencionadas son el uso de gram´aticas para la descripci´on de patrones y la confecci´on de unworkflow de mejora de la calidad de los datos.
Cap´ıtulo 3
Confecci´
on de bibliom´
etricas sobre
repositorios no estructurados
Los indicadores bibliom´etricos proveen informaci´on sobre el impacto, inter´es y visibilidad de las publicaciones cient´ıficas, las colaboraciones que se dan entre investigadores, la productividad de los investigadores, las tendencias presentes en la investigaci´on cient´ıfica, entre otros. Las fuentes de informaci´on desde las cuales se obtienen los datos para el c´alculo de estos indicadores son, mayormente, las previamente mencionadas bases de datos de publicaciones cient´ıficas tales como Web Of Science, Scopus y Google Scholar.
En la actualidad, un gran n´umero de universidades y centros de investigaci´on cuentan con reposi-torios institucionales de publicaciones, donde sus miembros registran sus publicaciones [Crow, 2004]. Generalmente, estos repositorios son accesibles desde la Web. A su vez, muchos investigadores publican sus trabajos en p´aginas Web personales, con el fin de maximizar el alcance de sus publicaciones [Antelman, 2004]. Estas fuentes de informaci´on cuen-tan con el potencial para ser utilizadas como base del calculo de indicadores bibliom´etricos, que permitan analizar la realidad de una instituci´on o un grupo de investigadores [Day, 2004].
Este cap´ıtulo se estructura como se detalla a continuaci´on. En la Secci´on 3.1 se describe el enfoque utilizado en el presente trabajo, describiendo los componentes de la herramienta creada. La Secci´on 3.2 describe el modelo de datos y los tipos de entidades utilizados por la herramienta desarrollada. Una vez presentado el modelo, se describen las etapas de obtenci´on y procesamiento de datos. En la Secci´on 3.3 se describe la soluci´on propuesta para obtener los datos del repositorio objetivo, mientras que la Secci´on 3.4 presenta las etapas de procesamiento de los datos obtenidos y como estos son transformados en entidades, de acuerdo a los tipos definidos en el modelo de datos. Por ´ultimo, en la Secci´on 3.5 se propone un conjunto de indicadores bibliom´etricos y se describe como deber´ıan calcularse.
20 CAP´ITULO 3. CONFECCI ´ON DE BIBLIOM ´ETRICAS
3.1.
Enfoque
Esta tesis propone el desarrollo de una herramienta capaz de realizar la obtenci´on y procesa-miento de un repositorio de informaci´on cient´ıfica semiestructurado, para luego instanciar un conjunto de entidades, y relaciones entre ellas, que represente la informaci´on contenida en el repositorio. Los posibles tipos de entidades se encuentran definidos en un modelo de datos. Las entidades creadas son utilizadas para la elaboraci´on de indicadores bibliom´etricos del repositorio objetivo. El objetivo es que la herramienta permita la implementaci´on de estos indicadores, a trav´es del uso de la interfaz de acceso predefinida, sin la necesidad de trabajar directamente con los datos del repositorio, los que normalmente no son accesibles. De esta forma se facilita la extensi´on de la herramienta mediante el agregado de nuevos indicadores bibliom´etricos.
Una de las caracter´ısticas m´as importantes que se debe tener en cuenta en el dise˜no de la herramienta, es el hecho que se tiene como objetivo el trabajar con todo tipo de repositorios semiestructurados. Dada la diversidad de posibles estructuras, formas de almacenamiento y de acceso con las que puede contar un repositorio de este tipo, este trabajo propone la creaci´on de una herramienta capaz de ser adaptada a una gran variedad de repositorios diferentes. La soluci´on planteada define un modelo de datos y un conjunto de etapas de procesamiento, ambos pensados para ser adaptados a las caracter´ısticas del repositorio semiestructurado sobre el cual se deseen elaborar indicadores bibliom´etricos. El Cap´ıtulo 4 detalla la extensi´on de la herramienta descripta en este cap´ıtulo para su uso en un repositorio concreto.
Otra caracter´ıstica que presentan este tipo de repositorios es la posible presencia de errores e inconsistencias en la informaci´on provista. Ejemplos de esto son el uso de distintos t´ıtulos para nombrar un mismo art´ıculo, diferencias en la forma en que se indican los autores de los art´ıculos, errores ortogr´aficos en los campos de los art´ıculos tales como los nombres y apellidos de autores, etc. Estos posibles errores e inconsistencias son esperables en repositorios con grandes vol´umenes de informaci´on, especialmente, cuando el mismo no posee mecanismos de validaci´on de los datos ingresados.
3.1. ENFOQUE 21 Este estilo se adapta al problema que se debe resolver en el cual se tiene una clara separaci´on de las etapas de obtenci´on, procesamiento, almacenamiento y generaci´on de resultados, que componen el flujo de ejecuci´on de la herramienta.
Figura 3.1:Flujo del procesamiento
La Figura 3.1 muestra el flujo de procesamiento que considera la herramienta. El procesamiento comienza con la obtenci´on del repositorio objetivo. Para esto, se debe implementar un subsistema capaz de realizar esta tarea de forma eficiente y con la flexibilidad necesaria para adaptarse a futuros cambios en la estructura del repositorio.
La siguiente etapa realiza las transformaciones necesarias de los datos para adaptarlos a una representaci´on uniforme predefinida. El producto de esta etapa consta de un conjunto de enti-dades listas para ser persistidas en una base de datos, respetando un conjunto de restricciones, facilitando el acceso a las mismas por parte de las etapas posteriores.
Una vez generado el conjunto de entidades, accesible a trav´es de una estructura de representaci´on com´un, se lleva a cabo una etapa de posprocesamiento de las mismas. El fin de esta etapa es garantizar niveles aceptables de consistencia de las entidades relevantes al problema en cuesti´on. En particular, las entidades de inter´es son los investigadores y art´ıculos del organismo de ciencia y t´ecnica que se utilice como base. Al finalizar esta etapa las entidades son nuevamente persistidas en la base de datos. En este punto el conjunto de las entidades existentes y sus relaciones se considera como un grafo que representa adecuadamente la realidad de las relaciones entre los art´ıculos e investigadores del organismo de ciencia y t´ecnica bajo estudio.
Finalmente, se est´a en condiciones de calcular los indicadores bibliom´etricos de inter´es por sobre el grafo resultante. La implementaci´on de indicadores bibliom´etricos consiste en generar resultados de utilidad para el estudio del repositorio con el que se est´a trabajando, a partir de las entidades derivadas del mismo.
Al tratarse de una herramienta que debe consumir datos desestructurados o semiestructurados desde un repositorio, para generar un conjunto de entidades de estructura predefinida, el pro-blema principal a enfrentar es la identificaci´on de estas entidades en el cuerpo del repositorio. De la efectividad de esta transformaci´on es que depende la precisi´on del an´alisis a realizar sobre el conjunto de entidades derivadas.
22 CAP´ITULO 3. CONFECCI ´ON DE BIBLIOM ´ETRICAS
problema a resolver se reduce a una correcta evaluaci´on y aplicaci´on de distintas t´ecnicas de identificaci´on de las entidades relevantes dentro del conjunto de datos provisto por el repositorio. En el desarrollo de la herramienta se pueden identificar las siguientes problem´aticas a resolver:
Obtenci´on del repositorio de datos. En primer lugar, es necesario almacenar el repositorio objetivo en una estructura que facilite el acceso al mismo. Para esto se debe crear un subsistema capaz de adaptarse a las particularidades de la estructura del repositorio ob-jetivo, sin perder la flexibilidad necesaria para responder a posibles cambios estructurales del mismo. Al contar con una instancia inalterable del repositorio, tal es el caso del repo-sitorio base a utilizar, es posible la implementaci´on de distintas t´ecnicas de identificaci´on de entidades y la evaluaci´on de las mismas.
Creaci´on de las estructuras de almacenamiento.Como se mencionaba anteriormente es ne-cesario que las estructuras de almacenamiento, que representan a las entidades relevantes del dominio (art´ıculos e investigadores), sean independientes de la estructura del reposi-torio. A su vez, estas estructuras deben implementar una interfaz de acceso que permita responder a las distintas consultas que sean necesarias. Para lograr esta independencia se utilizan t´ecnicas de programaci´on orientada a objetos en conjunto con lenguajes de manejo de bases de datos.
Normalizaci´on de datos. Los datos obtenidos del repositorio objetivo deben respetar una representaci´on com´un, establecida por la herramienta. Es necesario el dise˜no e implemen-taci´on de una alternativa adecuada para lograr una representaci´on homog´enea de los datos. Este punto es fundamental para asegurar un adecuado nivel de precisi´on de las bibliom´ e-tricas.
Identificaci´on de autores. Dada la naturaleza semiestructurada del repositorio objetivo es indispensable la implementaci´on de las t´ecnicas necesarias para poder identificar los investigadores que participan de la autor´ıa de un art´ıculo. Es com´un que los repositorios carezcan de apropiadas funciones de validaci´on de entrada de datos. En estos casos, los investigadores responsables de ingresar la informaci´on correspondiente a los art´ıculos de su autor´ıa, no se encuentran obligados a respetar una representaci´on com´un de los distintos campos que componen estos art´ıculos y en especial de la lista de autores de los mismos. Para solucionar este problema es necesario identificar los distintos patrones utilizados por los investigadores para listar los autores de un art´ıculo. Una vez identificados estos patrones, los mismos se utilizar´an, en la etapa de posprocesamiento, para transformar una lista de autores desnormalizada en un conjunto de referencias a entidades de tipo autor.
3.2. MODELO DE DATOS 23 mencionaba anteriormente, es posible que el investigador ingrese el art´ıculo y sus campos al repositorio con errores. En el desarrollo del criterio mencionado, es posible el uso de t´ecnicas de miner´ıa de texto y desambiguaci´on de t´erminos.
A continuaci´on, se describen las soluciones dise˜nadas para cada uno de los problemas planteados.
3.2.
Modelo de datos
Un modelo de datos es un conjunto de conceptos que pueden ser usados para describir la es-tructura de una base de datos: tipos de datos, relaciones y restricciones que deben cumplirse en los datos [Elmasri and Navathe, 2014]. Su finalidad es representar las entidades existentes en la realidad, las propiedades de las entidades, las relaciones entre estas entidades y las restricciones que deben cumplirse, tanto en las entidades como en las relaciones. El modelo de datos debe mantener una relaci´on con la realidad y estar estructurado de forma que sea ´util a los fines bus-cados. A su vez, es com´un que en un modelo de datos se incluyan aspectos din´amicos, los cuales especifican las operaciones que se pueden realizar sobre el modelo. En el contexto de este trabajo el modelo de datos cumple un papel principal. A trav´es de todas las etapas de procesamiento y del c´alculo de indicadores bibliom´etricos se hace uso de los tipos de entidades definidos en el modelo, para almacenar, consultar y transformar los datos obtenidos del repositorio objetivo. Al igual que los dem´as componentes dise˜nados para este trabajo, el modelo de datos fue creado teniendo en cuenta que cada repositorio cuenta con caracter´ısticas particulares. Estas caracter´ıs-ticas, propias de cada repositorio, dificultan la creaci´on de un modelo ´unico que sirva para todos los posibles repositorios objetivos. Es por esto que el modelo de datos contiene las entidades y relaciones identificadas en el dominio de las publicaciones cient´ıficas, definidas de modo abs-tracto teniendo en cuenta que el modelo deber´a ser extendido para adaptarse a cada repositorio objetivo sobre el cual se intente trabajar.
3.2.1. Dominio
El dominio en estudio est´a compuesto de investigadores y los art´ıculos publicados por ellos. Estos art´ıculos son publicados en diferentes medios de difusi´on como revistas cient´ıficas, libros y conferencias. Este domino se analiz´o, informalmente, con el objetivo de derivar un modelo de datos que represente las entidades y relaciones que lo componen.
24 CAP´ITULO 3. CONFECCI ´ON DE BIBLIOM ´ETRICAS
un nombre, una editorial y un a˜no de publicaci´on. Por ´ultimo, las conferencias cient´ıficas cuentan con el nombre de la conferencia, el lugar en el que se desarrolla, el nombre de la instituci´on organizadora y el a˜no en que se realiz´o.
Como se mencion´o previamente, el modelo de datos debe representar las relaciones entre las entidades que lo componen. La principal relaci´on que presenta el dominio es la que se da en-tre investigadores y art´ıculos. Los investigadores poseen art´ıculos de su autor´ıa y los art´ıculos cuentan con un conjunto de autores.
Estos tipos de entidades y sus relaciones conforman un modelo de datos general para representar el dominio compuesto por investigadores y los art´ıculos de su producci´on. Como se ver´a m´as adelante, es necesario un estudio del repositorio de datos objetivo para poder construir un modelo de datos concreto.
3.2.2. Modelo de datos propuesto
Como se mencionaba previamente, una de las caracter´ısticas m´as importantes con la que debe contar el dise˜no de la herramienta es la posibilidad de ser extensible y adaptable a los diferentes repositorios con los que se desee trabajar. El dise˜no del modelo de datos debe tener en cuenta esta caracter´ıstica en el modelado de los tipos de entidades que componen el dominio de la aplicaci´on.
En el dise˜no del modelo de datos se opt´o por utilizar el paradigma orientado a objetos, el cual ofrece flexibilidad frente a sistemas de bases de datos tradicionales. Estos ´ultimos limitan al desarrollador a utilizar s´olo los tipos de datos y el lenguaje de consulta provistos por la base de datos seleccionada. Una caracter´ıstica fundamental de los modelos de datos orientados a objetos es que permiten al desarrollador definir tanto la estructura de los objetos que componen el modelo, como las operaciones que se aplican a estos objetos [Elmasri and Navathe, 2014]. La elecci´on de este paradigma permite desarrollar un modelo de datos que pueda ser adaptado a otros repositorios, distintos al elegido, de forma sencilla y sin la necesidad de una reestructuraci´on total del modelo.
Las entidades derivadas del repositorio, modeladas bajo el paradigma orientado a objetos, son almacenadas en una base de datos relacional. El Cap´ıtulo 4 describe como se utiliz´o el framework Hibernate 1 para vincular el modelo de datos con la base de datos relacional.
El problema de contar con un modelo de datos que sea capaz de adaptarse a cualquier repositorio semiestructurado que se desee se resolvi´o a trav´es de la creaci´on de un m´odulo abstracto donde se definen las clases del modelo. Las clases de este m´odulo de alto nivel representan las principales entidades identificadas en el dominio. Este m´odulo abstracto, si bien define las entidades que se consideran fundamentales en el dominio, debe ser extendido en un m´odulo concreto por cada repositorio objetivo con el cual se desee trabajar. En estas extensiones se incorporan las caracter´ısticas particulares del repositorio objetivo tales como atributos, entidades o relaciones
1
3.2. MODELO DE DATOS 25 no consideradas por el m´odulo de m´as alto nivel. La Figura 3.2 muestra un diagrama de m´odulos donde el m´odulo que contiene las clases del modelo de datos abstracto se extendi´o para adaptarse a dos repositorios distintos.
Figura 3.2: M´odulos del modelo de datos
Figura 3.3:Modelo de datos abstracto
Los tipos de entidades del modelo abstracto se muestran en la Figura 3.3. Este diagrama de clases muestra las entidades, atributos y relaciones que componen el modelo. A continuaci´on se describen los detalles de cada una de las clases que componen este modelo.
26 CAP´ITULO 3. CONFECCI ´ON DE BIBLIOM ´ETRICAS
code: C´odigo ISSN. Este c´odigo est´a presente para los medios de publicaci´on del tipo revista y ciertos cap´ıtulos de libro.
name: T´ıtulo del medio de publicaci´on.
JournalMedia: Subclase deMedia. Contiene la informaci´on correspondiente a un medio de publicaci´on del tipo revista de difusi´on cient´ıfica.
impactFactor: Factor de impacto de la revista. El factor de impacto de una revista es una estimaci´on del promedio de citas durante un determinado intervalo de tiem-po [De Bellis, 2009].
publisher: Nombre de la editorial por la cual se public´o la revista.
shortName: Abreviaci´on del nombre de la revista. Cada revista tiene un nombre ´unico de este tipo.
ConferenceMedia: Subclase de Media. Contiene la informaci´on correspondiente a una con-ferencia o reuni´on cient´ıfica.
institution: Nombre de la instituci´on organizadora de la conferencia. place: Nombre de la ciudad y pa´ıs donde se llev´o a cabo la conferencia.
BookMedia: Subclase de Media. Contiene la informaci´on correspondiente a un libro. publisher: Nombre de la editorial por la cual se public´o el libro.
Article: Esta clase almacena la informaci´on correspondiente a un art´ıculo. Los autores del art´ıculo se almacenan como referencias a la clase Researcher. Las cardinalidades de la relaci´on que se muestra en el diagrama indican que uno o m´as investigadores participan de la autor´ıa de un art´ıculo y que un investigador puede participar de la autor´ıa de cero o m´as art´ıculos.
El medio de publicaci´on del art´ıculo se almacena como una referencia a una instancia de la clase Media. El tipo del medio determina el tipo del art´ıculo. Es decir, cuando el campo mediareferencia a una instancia deConferenceMedia, el art´ıculo en cuesti´on fue presentado en una conferencia. Cuando la referencia es hacia una instancia de BookMedia el art´ıculo est´a representando un cap´ıtulo de un libro. Finalmente, cuando el medio referenciado es una instancia de la claseJournalMedia,el art´ıculo fue presentado en una revista de divulgaci´on cient´ıfica.
title: T´ıtulo del art´ıculo.
authors: Conjunto de autores del art´ıculo. Los elementos de este conjunto referencian a instancias de la claseResearcher.
3.3. OBTENCI ´ON DE DATOS 27 year: A˜no de publicaci´on del art´ıculo.
media: Referencia a una instancia de una de las subclases de la clase Media. La subclase deMedia referenciada determina el tipo de art´ıculo.
summary: Resumen del contenido del art´ıculo.
Researcher: Esta clase contiene la informaci´on correspondiente a un investigador y cuenta con tres relaciones. La primera de ellas, vincula a los investigadores con sus art´ıculos pu-blicados. Los detalles de esta relaci´on se mencionan en la descripci´on de la clase Article. La segunda relaci´on vincula a un investigador con uno o m´as instancias de la clase Name. Cada instancia de la claseName,asociada a un investigador, representa un nombre propio del mismo (ya sean nombres de pila o apellidos). Por ultimo, los investigadores est´an vin-culados a cero o m´as instancias de la claseDiscipline. Esta relaci´on describe las disciplinas que ejerce el investigador dentro de la instituci´on a la que pertenece.
articles: Conjunto de art´ıculos del investigador. Los elementos de este conjunto refe-rencian a instancias de la clase Article.
firstNameSet: Conjunto de nombres de pila del investigador. Los elementos de este conjunto referencian instancias de la claseName.
lastNameSet: Conjunto de apellidos del investigador. Los elementos de este conjunto referencian instancias de la clase Name.
Name: Esta sencilla clase contiene una cadena de caracteres que representa un nombre propio correspondiente a un determinado investigador.
name: Conjunto de caracteres que componen el nombre propio.
researcher: Referencia a instancia de la clase Researcher. La instancia referenciada representa a un investigador que posee el nombre propio en cuesti´on.
Discipline: Esta clase contiene el nombre de una disciplina asociada a un investigador. Un investigador puede estar asociado a cero o m´as disciplinas. De igual forma, una disciplina puede estar asociada a cero o m´as investigadores.
name: Cadena de caracteres que componen el nombre de esta disciplina. Tipo: cadena de caracteres.
3.3.
Obtenci´
on de datos
28 CAP´ITULO 3. CONFECCI ´ON DE BIBLIOM ´ETRICAS
herramienta. Esto hace a la modificabilidad el atributo de calidad que gu´ıe el dise˜no de esta etapa.
Los repositorios que son el objetivo de este trabajo generalmente son de acceso p´ublico y no poseen una estructura que contemple el acceso a los mismos para su procesamiento. En muchos casos, los repositorios se encuentran disponibles a trav´es de Internet, como una colecci´on de archivos HTML vinculados entre s´ı pensados para ser recorridos mediante un navegador Web. Para este tipo de repositorios el proceso de obtenci´on de datos consiste en recorrer todas las p´ a-ginas del sitio Web donde se encuentra el repositorio y almacenar el c´odigo HTML que compone estas p´aginas.
El enfoque planteado para esta etapa es la utilizaci´on de uncrawler, tal como se mencion´o en la Secci´on 2.2.1, el cual tiene la responsabilidad de recorrer el repositorio objetivo y descargar las p´aginas de inter´es. Existe una variedad de implementaciones de crawlers las cuales pueden re-utilizarse evitando as´ı tener que realizar una implementaci´on desde cero. El trabajo que se deber realizar es el de la configuraci´on del crawler para que pueda ser ejecutado sobre el repositorio objetivo. El Cap´ıtulo 4 describe el crawler utilizado, y su configuraci´on, en la adaptaci´on de la herramienta al repositorio del CONICET.
3.4.
Procesamiento y mejora de datos
El paso siguiente a la obtenci´on del repositorio objetivo consiste en transformar estos datos en un conjunto de entidades, de acuerdo a los tipos definidos en el modelo de datos. Estas entidades representan la informaci´on contenida en el repositorio objetivo y son utilizadas para calcular los indicadores bibliom´etricos que dan informaci´on sobre el mismo.
Para realizar esta transformaci´on es necesario recorrer los datos obtenidos del repositorio, iden-tificar el tipo de cada uno de ellos, vincularlos con las propiedades de los tipos de entidades definidas y, finalmente, crear las entidades correspondientes. Las transformaciones a aplicar sobre los datos deben considerar los posibles errores e inconsistencias presentes en estos. El co-rrecto tratamiento de estos problemas lleva a crear un conjunto de entidades que representen correctamente la realidad.
El enfoque de alto nivel desarrollado en esta secci´on est´a compuesto de los siguientes elementos:
Interfaz de acceso a los datos: En primer lugar, se detalla la interfaz de acceso a los datos obtenidos del repositorio. Esta interfaz es utilizada por las etapas que procesan los art´ıculos, acceder a los datos del repositorio sin necesidad de conocer el formato o estructura interna de los mismos.
3.4. PROCESAMIENTO Y MEJORA DE DATOS 29 utilizado para determinar si el repositorio cuenta con m´as de una copia de un mismo ar-t´ıculo y en caso de que esto suceda unificar las copias evitando la creaci´on de entidades innecesarias.
Procesamiento de autores: Otro de los componentes importantes de los art´ıculos son sus autores. Es necesario identificar correctamente los autores de los art´ıculos para crear las relaciones correspondientes entre las entidades del tipo art´ıculo e investigador.
A continuaci´on se detalla el dise˜no de alto nivel de cada uno de los componentes utilizados en el procesamiento de datos. El Cap´ıtulo 4 describe la implementaci´on concreta de estos elementos para el caso del repositorio de CONICET.
3.4.1. Interfaz de acceso a los datos
El objetivo de esta etapa es abstraer a las etapas de procesamiento de t´ıtulos y autores, de las particularidades de los datos obtenidos del repositorio tales como su estructura, el formato de los datos y la forma en que se deben acceder. El procedimiento para extraer tuplas de una fuente de informaci´on particular se conoce con el nombre de wrapper [Kushmerick, 1997]. Un wrapper puede verse como una funci´on que va de un conjunto de documentos a un conjunto de tuplas. En el caso de este trabajo, los documentos son aquellos que componen el repositorio de informaci´on cient´ıfica objetivo (como por ejemplo las p´aginas Web que forman el repositorio del CONICET) mientras que las tuplas contienen informaci´on sobre investigadores y art´ıculos.
Generalmente, la construcci´on de un wrapper consta de la siguiente serie de pasos [Hsu and Dung, 1998]:
1. Definir qu´e datos se van a extraer y marcar donde se encuentran estos en documentos de ejemplo.
2. A partir de los documentos marcados buscar patrones que permitan identificar donde se encuentran los datos que se desea extraer.
3. Desarrollar un parser que utilice estos patrones para procesar los documentos y extraer los datos de inter´es.