Extracción de información con patrones de contenido Samuel Pérez Osés.

Slides:



Advertisements
Presentaciones similares
DISEÑO DE EXPERIMENTOS EXPERIMENTOS DE COMPARACIÓN SIMPLE
Advertisements

Maestría en Explotación de Datos y Descubrimiento del Conocimiento
Procesamiento de cadenas
EL DIRECTIVO FRENTE A LOS PROBLEMAS
El desarrollo de la escritura en niños muy pequeños
} LISSET BÁRCENAS MONTERROZA
Diseño orientado al flujo de datos
Investigación algorítmica
Tema 3 Revisión de diversos métodos robustos aplicados en algunos problemas fotogramétricos.
ANALISIS SINTACTICO DESCENDENTE
Sistemas Evolutivos Introduccion.
Buscador Es un sistema informático que busca archivos almacenados en servidores web HERRAMIENTAS DE COMPUTACION I.
RECONOCIMIETO DE PATRONES
Representación del Conocimiento
Unidad VI: PRUEBAS DE HIPOTESIS
Estadística aplicada al análisis financiero
FUNCIONES LOGICAS SI(PL;V_V;V_F)
Procesamiento de Imágenes Digitales
Diseño y análisis de algoritmos
Isabel Edo del Moral Susana Fernández LLoria Patricia Moraga Barrero
06. Algoritmo básico de la introducción
Tema 17: Contraste paramétrico de hipótesis I: Pruebas de contraste para un grupo. Pruebas de contraste para dos grupos: independientes o relacionados.
(Organización y Manejo de Archivos)
Descomposición Factorial Unidad 5
Descripción de Contenidos con Wavelets Jaime Gaviria.
Combinación de Clasificadores
Cynthia Fresno 1 QUESTION ANSWERING. Cynthia Fresno2 Índice: 1) ¿Qué es el question answering?. 2) Sistema de question answering. 3) TREC vs. CBC. 4)
Investigación Experimental
ESTADÍSTICA BÁSICA EN ECOLOGÍA EVOLUTIVA Juan J. Soler Cruz Estación Experimental de Zonas Áridas Almería.
LAS WEBQUEST. ¿Qué es la webquest? El creador de las WebQuest, Bernie Dodge, profesor de tecnología educativa de la San Diego State University, las define.
APLICACIONES DE LA LINGÜÍSTICA COMPUTACIONAL (I)
Datos: Estadística.
Seguridad y encriptación
Elaboración de gráficas
FACILITADOR JOSE HERIBERTO CRUZ GARCÍA
Capítulo 7 Estimación de Parámetros Estadística Computacional
Medidas de Posición y Centralización Estadística E.S.O.
Capacidad de Proceso.
Teorías mas importantes de la construcción del concepto de numero.
Inferencia Estadística
Problema de inclusión en una Curva Digital Por Orellana Muñoz, Alfonso Paz Vicente, Rafael Pérez Medina, Gerardo Rodríguez Naranjo.
Introducción a Pentaho BI Suite 3.5
P1. La medida en Psicología
BARAJA DE LOS NÚMEROS ENTEROS “Suma 0”
Teoría de Probabilidad Dr. Salvador García Lumbreras
SISTEMA PARA LA CATEGORIZACIÓN AUTOMÁTICA DE CORREO ELECTRÓNICO Camilo Rodríguez, Departamento de Ingeniería de Sistemas, Universidad Nacional de Colombia.
Desarrollo del Pensamiento Matemático
Christian Monrreal Gonzalez Daryl Silverman Aguilar Gone
PRUEBAS ESTADISTICAS NO PARAMETRICAS
Reconocimiento de caras usando Histogramas de Gradientes Orientados
Taller 2 Reflexiones sobre Metodología Cuantitativa: Potencial de la comparación de muestras Germán Fromm R.
TIPOS DE PRUEBAS DEL SOFTWARE
Son los atributos de un sistema que son visibles para un programador, es decir aquellos atributos que impactan directamente en la ejecución lógica de un.
Tomando decisiones sobre las unidades de análisis
Taller: Inteligencia Computacional
2.1 DEFINICIONES CARACTERÍSTICAS Y SUPOSICIONES.
Metodología de la programación
Diseño de Adiestramientos
Aplicaciones para la Administración de Negocios
Benemérita Universidad Autónoma Facultad de Enfermería Contenido de los Informes de Investigación.
Clase N°11 Métodos de reducción de varianza
Marco de Trabajo para Indexación, Clasificación y Recopilación Automática de Documentos Digitales Javier Caicedo Espinoza Gonzalo Parra Chico.
UNIVERSIDAD CENTRAL DEL ECUADOR FACULTAD DE CIENCIAS ECONOMICAS INFERENCIA ESTADISTICA TEMA: ESTIMACION PUNTUAL, PROPIEDADES DE LAS ESTIMACIONES;

Estadística descriptiva
POBLACIÓN Y MUESTRA CÁLCULO DEL TAMAÑO MUESTRAL. Descripción e inferencia Población Muestra Muestreo Inferencia Resultado.
CAPÍTULO 4 Introducción a la Estadística. Modelos de regresión.
ALGORITMO STALKER extracción de información en sitios web Juan Manuel Piñero Sánchez.
TEMA 7 ANÁLISIS DE LOS RESULTADOS TEMA 7 ANÁLISIS DE LOS RESULTADOS.
FiVaTech: Extracción de datos Web a partir de plantillas de páginas Antonio R. Gómez Sotelo.
Transcripción de la presentación:

Extracción de información con patrones de contenido Samuel Pérez Osés

Guía ① Introducción ② Ciclo de vida de un wrapper ③ Aprendiendo patrones de contenido ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ⑥ Conclusiones

Guía ① Introducción ② Ciclo de vida de un wrapper ③ Aprendiendo patrones de contenido ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ⑥ Conclusiones

Introducción Realidad: Hay una gran cantidad de información disponible Problema: Esta orientada al usuario humano Solución: uso de web wrappers que extraen información de fuentes semi-estructuradas Los wrappers dependen de reglas de extracción, este área ha sido muy estudiada y existen wrappers muy eficientes (USC).

Introducción

Guía ① Introducción ② Ciclo de vida de un wrapper ① Verificación y reinducción ② Tipos de reglas de extracción ③ Aprendiendo patrones de contenido ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ⑥ Conclusiones

Ciclo de vida de un wrapper Wrapper verificación Verifica que la información extraída por el wrapper es la esperada Wrapper reinducción Reconstruye las reglas de verificación para que el wrapper funcione correctamente con las páginas que han cambiado

Ciclo de vida de un wrapper GUI Wrapper Verification Automatic Re-Labeling Labeled web pages Wrapper Induction System Wrapper Pages to be labeled Web pages Change detected Reinduction System

Ciclo de vida de un wrapper El wrapper induction system (WIS) toma un conjunto de páginas etiquetadas con ejemplos de datos a extraer El WIS genera un wrapper, que recordemos que no es mas que un conjunto de reglas de extracción El WIS usa el wrapper en funcionamiento y aprende patrones que describen las estructuras de datos Si se detecta un cambio se repara con la información recopilada por el WIS

Ciclo de vida de un wrapper Reglas de extracción basadas en landmarks: Extrae datos usando la estructura de la página Reglas de extracción basadas en contenido: Extrae datos usando patrones de contenido, explota la estructura de los campos en sí mismo.

Guía ① Introducción ② Ciclo de vida de un wrapper ③ Aprendiendo patrones de contenido ① Representación de datos ② Aprendiendo a partir de ejemplos positivos ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ⑥ Conclusiones

Aprendiendo patrones de contenido Objetivo: extraer información de fuentes semi- estructuradas Representación de datos Anteriores trabajos: character-level grammar o colección de características globales (numero de palabras, densidad de caracteres numéricos…) Ahora: un nivel intermedio de representación de palabras, mas eficiente, mas compacto y con las del character level (poder descriptivo y especificidad)

Aprendiendo patrones de contenido Usamos character-level para hacer un sistema jerárquico multinivel Solo usamos el principio o el final de las secuencias de tokens para aprender la estructura. A lo anterior lo llamamos Data prototype

Aprendiendo patrones de contenido TOKEN PUNCTALPHANUMHTML NUMBER LOWERUPPER ALPHA

Aprendiendo patrones de contenido Aprendiendo de ejemplos positivos Tareas al aprender: Clasificación: Aprende ejemplos positivos y negativos discriminando Conservación: Aprende características redundantes a partir de ejemplos positivos No se usan ejemplos negativos ya que puede ser problemático.

Aprendiendo patrones de contenido Objetivo: encontrar secuencias de tokens que sean estadísticamente significativas. Secuencias que ocurren mas a menudo de lo que cabria esperar por azar Se utiliza un nivel de confianza (alpha) que se suele fijar a 0,05. Sigue una distribución binomial en la que si la n es grande (el numero de secuencias idénticas observadas) la distribución es normal

Aprendiendo patrones de contenido Ejemplo de patrones significativos Tenemos, queremos saber si es significativo Sabemos la probabilidad de que aparezca UPPER como hecho aislado Podemos saber la posibilidad de que UPPER siga a NUMBER por azar Si observamos que un numero considerable de estas secuencias llegamos a la conclusión de que es un patrón significativo

Guía ① Introducción ② Ciclo de vida de un wrapper ③ Aprendiendo patrones de contenido ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ⑥ Conclusiones

Algoritmo DataProg Encuentra patrones estadísticamente significativos en un conjunto de secuencias de tokens Los patrones se codifican en un árbol que llamaremos árbol de patrones Cada camino desde la raíz será un patrón significativo

Algoritmo DataProg Pasos del algoritmo 1. Paso previo: tokenizar el texto, esto es los tokens se asignan a uno o mas tipos sintácticos 2. Se hace crecer el árbol encontrando especializaciones significativas 3. Se podan los nodos de entre los nodos hermanos dejando las mas significativas de la misma longitud 4. Ultimo paso: extrae todos los patrones significativos del árbol de patrones

ROOT ALPHANUM NUMBER UPPER ALPHAALPHANUM ALPHANUMBoulevardALPHA StreetWay 4676 Admiralty Way Pico Boulevard 512 Oak Street 2431 Main Street 5257 Adams Boulevard TOKEN PUNCTALPHANUMHTML NUMBER LOWERUPPER ALPHA

Guia ① Introducción ② Ciclo de vida de un wrapper ③ Aprendiendo patrones de contenido ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ① Verificación de wrappers ② Reinducción de wrappers ① Algoritmo de plantilla ② Algoritmo de Re-etiquetado ⑥ Conclusiones

Aplicación de patrones aprendidos Verificación de wrappers Los wrappers son vulnerables a cambios lo cual ocurre con frecuencia cuando la página se re-diseña Los datos extraídos nos indican si algo ha cambiado Usamos ejemplos extraídos anteriormente que se sabe que son correctos Se aprende una descripción basadas en patrones aprendidos con DataProg y características numéricas Se calculan dos vectores k y r que son las características y patrones de cada ejemplo y los datos que se saben correctos Se comparan estos dos vectores y se ve si son iguales a un nivel significativo mediante el test estadístico de Pearson

Aplicación de patrones aprendidos Reinducción de wrappers Siguiente tarea: reconstruir los wrappers Se intenta automatizar el proceso de inducción Empleamos un conjunto de páginas que sabemos que funcionaban correctamente y otro de la misma fuente Método de aprendizaje supervisado y no supervisado para aprender de los campos de las nuevas páginas Los patrones aprendidos de DataProg y otras características globales juegan un papel fundamental

Aplicación de patrones aprendidos Algoritmo de plantilla Las páginas webs utilizan plantillas para representar los datos ej.. Productos Podemos inducirlas plantillas que usan Se siguen los siguientes pasos: Dentro del conjunto de páginas se coge la mas pequeña como semilla (seed) Se empieza por el primer token y se concatenan todos los que cumplan que aparecen una sola vez en todas las páginas del conjunto Si la secuencia tiene al menos 3 tokens (medida empírica) y cumple lo anterior, pertenece a la plantilla

Aplicación de patrones aprendidos

Web Pages Labeled web pages Grups Extracts Wrapper Induction System Patterns Wrapper Extracted data score Apply Score Extract

Aplicación de patrones aprendidos Algoritmo de re-etiquetado automático DataProg ha aprendido patrones finales e iníciales durante el funcionamiento normal del wrapper Estos patrones se usan para identificar segmentos de textos de posibles datos, cuando se sabe que ha cambiado algo Se calcula la media del numero de token y su varianza en los ejemplos de entrenamiento Cada página nueva se escanea con los patrones y se extraen candidatos que entrenen los limites de la varianza y la media anterior (se eliminan outliers)

Aplicación de patrones aprendidos Algoritmo de re-etiquetado automático Se extraen demasiados segmentos ya que los patrones son demasiado generales Se asigna un vector de características a cada candidato a extraer con: Su posición Si es visible o no (HTML tag) El hueco que ocupa en la plantilla El contexto (token adyacentes)

Aplicación de patrones aprendidos Algoritmo de re-etiquetado automático Se agrupan los candidatos en grupos según tengan vectores característicos similares Se puntúan estos grupos según la similaritud que tengan entre ellos Se ordenan estos grupos según esta puntuación Se les pasa como argumentos de entrada a STALKER los “mejores” grupos STALKER aprende reglas de extracción de las páginas que han cambiado Estas reglas son las que se asumen para los ejemplos nuevos que han cambiado

Guia ① Introducción ② Ciclo de vida de un wrapper ③ Aprendiendo patrones de contenido ④ Algoritmo DataProg ⑤ Aplicación de los patrones aprendidos ⑥ Conclusiones

Conclusiones Resultados Verificación Se usaron 27 wrappers y 23 fuentes distintas (altavista, amazon, bigbook, yahoo (quote, people, weather)…) Se hicieron 438 comparaciones Se apreciaron 37 cambios que se atribuyeron al formato de los datos y etiquetado Se detectaron 35 de esos cambios De estos 15 fueron fallos de los cuales 13 fueron falsos positivos (el sistema dijo que fallaba cuando en realidad no lo hacia) 2 fueron falsos negativos.

Conclusiones Reinducción Se usaron 10 fuentes de las 23 que se usaron antes Reglas basadas en contenido Se considera correctos y se identifica en 3 de las 10 páginas que se usan, lo mínimo que necesita STALKER son 2 de esas 10 De las 277 veces que se hizo en todos los datos hubo 61 errores De los cuales 31 fueron falsos positivos (campos parciales “Cloudy” en vez de “Mostly Cloudy”) 30 fueron falsos negativos

Conclusiones Reinducción Reglas basadas en landmarks No se especifica el numero de comparaciones que se hicieron ni cuantas veces Los resultados para los falsos positivos son de un 10% respecto a los positivos Para los falsos negativos son de un 20% respecto a los positivos

Conclusiones Ideas prometedoras Uso de test y distribuciones estadísticas Cambios muy localizados Fuentes reales Resultados buenos como base para el futuro

FIN ¿ALGUNA PREGUNTA?