Resumen de Técnicas Básicas de Recuperación de Buscador

35
Técnicas Básicas (resumen) José Carlos Cortizo Pérez http://www.esp.uem.es/jccortizo [email protected] Departamento de Sistemas Informáticos Escuela Superior Politécnica Universidad Europea de Madrid

Transcript of Resumen de Técnicas Básicas de Recuperación de Buscador

Page 1: Resumen de Técnicas Básicas de Recuperación de Buscador

Técnicas Básicas (resumen)

José Carlos Cortizo Pérez http://www.esp.uem.es/jccortizo [email protected]

Departamento de Sistemas Informáticos Escuela Superior Politécnica Universidad Europea de Madrid

Page 2: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Índice

Esquema de funcionamiento

Normalización y Tokenización

Indexación

Modelo del Espacio Vectorial

Page 3: Resumen de Técnicas Básicas de Recuperación de Buscador

Sistemas Inteligentes de Acceso a la Información

Esquema de Funcionamiento

Page 4: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Esquema de Funcionamiento

José Carlos Cortizo Pérez

DocDocDoc

Q

NormalizaciónTokenización Indexación

NormalizaciónTokenización

MEV Res.

Page 5: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Documento 1:Pepe coge su coche por las mañanas

Documento 2:Mañana veré a Pepe

Documento 3:Me traen el coche mañana

Consulta: Coche

Page 6: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Documento 1:Pepe; coger; coche; mañana

Documento 2:Mañana; ver; Pepe

Documento 3:Traen; coche; mañana

Consulta: Coche

Normalizamos y Tokenizamos los Documentos

Page 7: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Consulta: Coche

Documento 1 Documento 2 Documento 3

Pepe 1 1

Coger 1

Coche 1 1

Mañana 1 1 1

Ver 1

Traer 1

Indizamos los Documentos

Page 8: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Consulta: Coche

Documento 1 Documento 2 Documento 3

Pepe 1 1

Coger 1

Coche 1 1

Mañana 1 1 1

Ver 1

Traer 1

Tokenizamos y Normalizamos la consulta

Page 9: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Consulta: Coche

Documento 1 Documento 2 Documento 3

Pepe 1 1

Coger 1

Coche 1 1

Mañana 1 1 1

Ver 1

Traer 1

Seleccionamos candidatos

Page 10: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Consulta:

Representamos en forma de Vectores

Documento 1: (1, 1, 1, 1, 0)

Representación:(Pepe, coger, coche, mañana, traer)

Documento 2: (0, 0, 1, 1, 1)

(0, 0, 1, 0, 0)

Page 11: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Consulta:

Aplicamos MEV

Documento 1: (1, 1, 1, 1, 0)

Representación:(Pepe, coger, coche, mañana, traer)

Documento 2: (0, 0, 1, 1, 1)

(0, 0, 1, 0, 0)

cos(D1, C) = 1·0 + 1·0 + 1·1 + 1·0 + 0·0

RC(4) · RC(1)= 0.5

cos(D1, C) = 0·0 + 0·0 + 1·1 + 0·0 + 0·0

RC(3) · RC(1)= 0.57

Page 12: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Ejemplo

José Carlos Cortizo Pérez

Y obtenemos un ranking de resultados

Resultados ordenados:Documento 2Documento 1

Page 13: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

¿Alguna pregunta?

Page 14: Resumen de Técnicas Básicas de Recuperación de Buscador

Sistemas Inteligentes de Acceso a la Información

Normalización y Tokenización

Page 15: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

Tokenizar: Separar las palabras o elementos a indizar

Normalizar: Estandarizar la forma de escribir algunas cosas. P.e. eliminar las tildes, cambiar de mayúsculas a minúsculas, etc.

¿Qué?

José Carlos Cortizo Pérez

Page 16: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

Tokenizar: Necesitamos tener unidades indizables para utilizarlas como base de nuestra representación. Pueden ser palabras, frases, n-gramas, etc.

Normalizar: El lenguaje es muy flexible, y además es muy corriente cometer errores de algún tipo. La normalización nos provee una forma de “eliminar” estos problemas.

¿Por qué?

José Carlos Cortizo Pérez

Page 17: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

Forma simple: utilizar un Tokenizador que separe por caracteres clave (p.e. espacios, signos de puntuación, etc.)

En java se haría con un String Tokenizer

Si en lugar de palabras, queremos separar frases, la cosa es algo más compleja (dependiendo del tipo de frase)

Análisis del lenguaje

¿Cómo tokenizar?

José Carlos Cortizo Pérez

Page 18: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

Por lo general aplicando reglas heurísticas

P.e. Cambiar todas las vocales acentuadas por vocales sin acentuar

Pasar las mayúsculas a minúsculas

Eliminar “palabras vacías”

¿Cómo normalizar?

José Carlos Cortizo Pérez

Page 19: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

Las palabras muy frecuentes no aportan semántica

Artículos, pronombres, conjunciones, etc.

Las apariciones de las 10 palabras más frecuentes del inglés constituyen un 20/30% de un documento

Se suelen incluir en una lista de parada

Estas listas se obtienen a partir de un córpora representativo del idioma

Palabras vacías

José Carlos Cortizo Pérez

Page 20: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

Múltiples palabras son variaciones morfológicas, con idéntico significado

Los stemmers (extractores de raíces), normalizan a una forma canónica, p.e.

analizar, análisis, analizador... => ‘anali’

Algoritmo de Porter, SnowBall

Normalización morfológica

José Carlos Cortizo Pérez

Page 21: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Normalización y Tokenización

En función del idioma, podemos aplicar reglas de normalización que permitan una mejor recuperación (p.e. tolerante a errores)

P.e., para el Castellano

Eliminar las ‘h’

Cambiar ‘v’ por ‘b’

Cambiar ‘ll’ por ‘y’

Esto aumenta el recall pero puede bajar la precisión

Normalización “avanzada”

José Carlos Cortizo Pérez

Page 22: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

¿Alguna pregunta?

Page 23: Resumen de Técnicas Básicas de Recuperación de Buscador

Sistemas Inteligentes de Acceso a la Información

Indexación

Page 24: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Indexación

Los índices son necesarios para poder realizar las consultas en tiempos aceptables

Generan un “overhead” en cuánto a almacenamiento

2 tipos de índices importantes

Directos

Inversos

Indexación

José Carlos Cortizo Pérez

Page 25: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

IndexaciónIndice directo

José Carlos Cortizo Pérez

Pal1 Pal2 Pal3 Pal4

Doc1 1 1 0 0

Doc2 0 1 0 0

Doc3 1 0 1 0

Doc4 0 0 0 1

Page 26: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

IndexaciónIndice inverso

José Carlos Cortizo Pérez

Doc1 Doc2 Doc3 Doc4

Pal1 1 1 0 0

Pal2 0 1 0 0

Pal3 1 0 1 0

Pal4 0 0 0 1

Page 27: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Indexación

Cada uno tiene sus pros y sus contras

Sin embargo, el inverso es muy eficiente en consulta (nos interesa más)

El inverso es el que se suele implementar en la práctica (p.e. Google)

¿Cuál es mejor?

José Carlos Cortizo Pérez

Page 28: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

¿Alguna pregunta?

Page 29: Resumen de Técnicas Básicas de Recuperación de Buscador

Sistemas Inteligentes de Acceso a la Información

Modelo del Espacio Vectorial

Page 30: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Modelo del Espacio Vectorial

Es un modelo más sofisticado que el Booleano

Se basa en el álgebra vectorial

La representación se realiza en base a vectores de pesos de términos

Introducción

José Carlos Cortizo Pérez

Page 31: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Modelo del Espacio Vectorial

Cálculo de similitud: el coseno de los vectores que forman el documento y la consulta

Introducción

José Carlos Cortizo Pérez

Page 32: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Modelo del Espacio VectorialIntroducción

José Carlos Cortizo Pérez

Page 33: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

¿Alguna pregunta?

Page 34: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

Bibliografía

Baeza-Yates, Ricardo; Ribeiro-Neto, Berthier. Modern information retrieval. Addison-Wesley, 1999 (Z699.35 .I53 B34 Biblioteca UEM, edificio C).

Raymond Mooney. Basic Tokenizing, Indexing and Implementation of Vector-Space Retrieval. Tema 3 de su curso en IR.

http://www.cs.utexas.edu/~mooney/ir-course/slides/Evaluation.ppt

Adicional

Page 35: Resumen de Técnicas Básicas de Recuperación de Buscador

José Carlos Cortizo Pérez

¿Alguna pregunta?