Table des matières

Reingeniería de una aplicación de minería de datos para el rastreo del talento altamente calificado en la Web

Resumen del tema de la maestría

Aportar modificaciones en cada etapa del proceso con la finalidad de mejorar los scores de precisión y cobertura de la tarea de predecir el estatus de mobilidad a partir de una base de datos de potenciales miembros de las diásporas altamente calificadas.

Objetivos

Plan de trabajo

TODO: Producción de un artículo científico sobre Multilingual Web People Search para Enero del 2016

  1. Bibliografía
  2. Planteamiento de la tarea
  3. Se parte de un conjunto de nombres de personas con atributos de tres tipos: afiliación, lugar geográfico y temática de trabajo.
  4. Se parte también del conjunto resultante de snippets que un motor de búsqueda produce al interrogarlo con
    • Nombre de la persona
    • Nombre de la persona + afiliación
    • Nombre de la persona + lugar geográfico
    • Nombre de la persona + temática de trabajo
  5. Los resultados producidos por el motor de búsqueda son multilingües, y en cada uno de ellos hay una variación válida del nombre de la persona.
  6. La tarea consiste en 1) agrupar los resultados del motor de búsqueda de acuerdo al número de individuos presentes en el conjunto de resultados y 2) extraer atributos biográficos de los individuos
  7. Nos interesamos en los mismos atributos que en la tarea Attribute Extracion de WePS, pero con la diferencia de que buscamos también extraer información de movilidad reciente (cuartetas <fecha, afiliación, lugar geográfico, profesión>, ejemplo: <2010, LIPN-Paris 13, Villetaneuse, Ingeniero de investigación>).
  1. Creación del corpus
    • Nos interesa particularmente encontrar del corpus
    • # Cuántas personas distintas hay en el corpus
    • # Cuántos snippets hay por persona
    • # Cuántos snippets hay en el corpus
    • # El porcentaje de multilingüismo en el corpus
  2. Medidas de evaluación

TODO CRÍTICO (Ene 2016): ingeniería de software y reingeniería UnoporunO

Visualización de resultados

    • DONE
  1. Reproducir la funcionalidad de UnoporunO.Galilée en Spring & MVC empezando por la administración de usuarios, permisos y acceso a la base de datos
    • Visualización de consultas y de personas por cada consulta (detalle de la consulta)
    • Fecha de entrega: 1o de septiembre del 2015
  2. Visualización del detalle de las personas
    • Visualizar todos los snippets correspondientes a una persona
    • Filtrar por características semánticas
    • # Presencia de elementos biográficos
    • # Presencia de nombres de organizaciones
    • # Presencia de un nombre propio en el URL
    • # etc… (c.f. artículo de JAP TAL 2012)
    • Fecha de entrega: 14 de septiembre del 2015

Meta motor de búsqueda

TODO: Administrativo

  1. Definir nuevo ciclo de reuniones con el Mtro. Gustavo Márquez Flores (Hecho)
  2. DELF A1 (dic 2015) y A2 (mayo del 2016)

DONE: Puesta a nivel en Linux

  1. Febrero 2015
  2. Instalar Ubuntu o en su defecto Arch Linux (y acá la doc de Arch Linux y UEFI con Windows 8.1)
  3. Marzo-Abril 2015
  4. Instalar Java
  5. Instalar node.js y Express.js (lúdico-experimental)
  6. Instalar Hybernate
  7. Mayo-Junio 2015
  8. Scripting bash (.sh)
  9. Julio-Agosto 2015
  10. Instalar servidor UnoporunO
  11. Instalar MySQL (MariaDB)
  12. Crear la BD de UnoporunO
  13. Instalar y correr UnopornO

Segunda Reunión con Mtro. Gustavo Arturo Márquez Flores y Dr. Jorge García Flores

  1. Proponer una metodología para el desarrollo de software.
  2. Establecer el patrón de desarrollo (posiblemente MVC).
  3. Establecer la metodología para el ciclo de vida del proyecto
    1. Problemática que el software resuelve.
    2. Definición de usuarios finales.
    3. Justificación de la latencia del sistema y comparación con la búsqueda manual.
    4. Benchmarking con versiones anteriores del sistema.
    5. Definición de requerimientos
      • Requerimientos funcionales (Justificación del lenguaje y tecnologías a utilizar).
      • Requerimientos técnicos (Equipos y servidor de desarrollo).
  4. Propuesta de pruebas con usuarios finales, Jorge propone tres usuarios especializados, <Nombre> de Canada, <Nombre> de Francia, y finalmente <Nombre> de Uruguay.

Microproyecto científico (enero-febrero 2016)

El objetivo del micro proyecto es:

  1. Repetir dos de los experimentos reportado en el artículo de JapTal 2012
  2. Implementar y evaluar el impacto de una modificación relativa al tratamiento de los nombres propios.

Los experimentos que hay que repetir son los correspondientes a las secciones 4.4 (Snippets classifiers evaluation) y 4.6 (Automatic MTC task evaluation) del mencionado artículo.

Evaluación de clasificadores de resultados Google

El primer experimento consiste en comparar una serie de clasificadores basados en aprendizaje automático en la tarea de estimar, a partir de un conjunto de resultados de búsquedas de Google, cuáles predicen con menor margen de error la calidad informacional de cada resultado. Los resultados Google (o snippets) han sido anotados de acuerdo a su estatus informacional (anotación binaria: 0 no contiene información, 1 contiene información, referirse a la tabla unoporuno_snippet). En el artículo de JapTal 2012 fueron comparados cuatro clasificadores, siendo SVM el que ofrecía el menor margen de error. El estudiante es libre de agregar otros clasificadores al experimento.

Evaluación de la clasificación automática de personas

El experimento de JapTal 2012 evaluaba la capacidad del sistema de predecir automáticamente el estatus de movilidad (dos categorías: local o móvil) de 50 investigadores de la base de datos UnoporunO cuyos estatus de movilidad se conocen previamente (25 móviles, 25 locales). Repetir el experimento implica echar a andar la rama master del sistema UnoporunO original desarrollado en Python. En términos de la figura 1 del artículo de JapTal 2012 esto implicaría hacer funcionar los tres módulos posteriores a Web Search (es decir: name filtering, feaure analysis y classification and ranking. Tras la clasificación automática de los snippets usando un SVM, un módulo se encarga de utilizar una heurística basada en topónimos para decidir si el investigador es móvil o local.

Implementación y evaluación de una mejora relativa a los nombres propios

Esta mejora consiste en:

  1. 1 Estimar la probabilidad de ocurrencia de un nombre propio: la probabilidad de los nombres propios muy comunes tenderá a 1 mientras que la probabilidad de los nombres propios poco comunes tenderá a 0.
  2. Aplicar esta estimación a los 50 investigadores del corpus de prueba.
  3. Evaluar el margen de error de la estimación.
  4. Ajustar la estrategia de procesamiento de los snippets antes de su clasificación: en los snippets provenientes de investigadores con un nombre poco común, se procesarán solamente aquellos que resultan de consultas (o queries) consistentes únicamente en el nombre propio. Por el contrario, para los snippets correspondientes a personas con un nombre muy común, se privilegiarán aquellos que resulten de queries de tipo NOMBRE DEL INVESTIGADOR + TEMA DE INVESTIGACIÓN.
  5. Comparar la clasificación automática sin preprocesamiento de nombres propios con la que cuenta con dicho preprocesamiento

Resultados esperados

Recursos