41
Motores de Búsqueda Motores de Búsqueda Autores: Autores: Pedro Flores Pérez, José Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Ernesto Brau, Adrian Lucero, Carlos David Lucero, Carlos David Briceño, Ivo Jimenez, Juan Briceño, Ivo Jimenez, Juan A. Raygoza y Fernando A. Raygoza y Fernando Razo. Razo.

Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Embed Size (px)

Citation preview

Page 1: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Motores de BúsquedaMotores de BúsquedaMotores de BúsquedaMotores de Búsqueda

Autores:Autores:

• Pedro Flores Pérez, José Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y Jimenez, Juan A. Raygoza y Fernando Razo.Fernando Razo.

Autores:Autores:

• Pedro Flores Pérez, José Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y Jimenez, Juan A. Raygoza y Fernando Razo.Fernando Razo.

Page 2: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Qué es un motor de búsqueda?

-  Es un sistema de recuperación de información

-   Ejemplos: Google, Yahoo!

 

Page 3: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

¿Para qué se utiliza?

Buscar “algo”

donde

Páginas HTMLdocumentos: *.doc, *.pdf

“algo” imágenesotros, proporciona información,

realizar cálculos, etc. 

Universo de

Búsqueda

Universo de

Búsqueda

Page 4: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

A futuro

 

“algo” = Música, melodía,

letra, video

Ejemplo:

¿Silvar una canción?

Page 5: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

¿Por qué estudiar Motores de Búsqueda?

Porque es una de las areas de mayor desarrollo tecnológico y lo seguirá siendo durante los próximos años.

  Ejemplos: Buscador de MicrosoftBuscador de Google para Documentos en PC.

Investigación en Yahoo! y Altavista para desarrollar sus propios métodos de búsqueda.

Nuevos esquemas de venta (E-Comerce) a través de la red de Internet.

Page 6: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Porque es una de las areas de mayor desarrollo en Investigación.

El crecimiento exponencial de la información en la red plantea nuevos problemas en las areas de lingüística, matemáticas, Matemática Numérica, Bases de Datos, Inteligencia Artificial, etc

Page 7: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Desde el punto de vista académico, es toda una experiencia el investigar sobre este tema, ya que se aplican conocimientos de Bases de Datos, Estructuras de Datos, Redes (Clúster), Ingeniería del Software, Métodos Matemáticas, Teoría de Lenguajes, Compiladores, etc

Page 8: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

¿Porqué hacer un motor de búsqueda?

Porque es algo que esta al alcance de la mano, pero ....

“es dificil..... dificil la primera vez....”

Canción: “Difícil”

Autor: Alex Lora y el Tri

Page 10: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

• Yahoo! se funda en 1994 por David Filo y Jerry Yang.

Page 11: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

¿Qué estamos haciendo en el curso de Motores de Búsqueda?

Desarrollando un motor de búsqueda original con las siguientes características:

  - Que no sea muy grande.     - Que tenga un funcionamiento comparado con el de un motor de búsqueda como Google.     - Que se monte sobre clusters y que sea escalable. 

Page 12: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Otras actividades:

    - Revisión de materiales, artículos, libros, etc.

    

- Escribiendo material.

- Impartiendo este curso

Page 13: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Expositores del curso:Clusters y Bases de Datos.

José Figueroa Martínez.

Robots.

Ernesto Brau y Caleb Lizárraga.

Conversión a texto plano (Word)

Adrian Lucero

Compresión de Archivos.

Carlos David Briceño.

Un ejemplo con triadas.

Ivo Jiménez Ramos y

Juan Antonio Raygoza.

Estructuras de Datos

Fernando Razo Mendivil

Page 14: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Temario:

- Principales aspectos de la recuperación de información.

- Estructura de un motor de búsqueda.

- Una introducción a las distintas partes de un motor de búsqueda.

Page 15: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Objetivo del curso: En 3 horas, dar una brevísima introducción a

motores de búsqueda

Page 16: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Motor de búsqueda:

Un sistema almacenamiento de

datos (Bases de Datos),

diseñado para indexar

direcciones web.

Page 17: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

¿Qué es Indexación?

Análisis de documento para ver como está estructurado (título, autor, cuerpo), como se presenta la información más importante; tablas, gráficas, imágenes, etc. Esto nos lleva a establecer partes del documento que sean importantes.

Page 18: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Análisis por palabras de las secciones importantes, tratando de encontrar qué palabras o frases sean las que identificaran el documento estableciendo la mejor respresentación de los contenidos semánticos (significado del documento). 

Existen diversas formas de hacer el indexado, las más importantes son: latent semantic indexing (LSI) que trata de representar los documentos por su contenido a diferencia de la coincidencia de palabras.

Page 19: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

El indexado puede ser totalmente manual como en yahoo! donde una persona decide la clasificación por categorías del documento.

Semi automático: sería cuando alguien ayuda a un programa a establecer la indexación.

  Totalmente automática, donde un

programa se encarga de todos los pasos de indexación, por ejemplo: Google

 

Page 20: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Representación vectorial de documentos:

SMART (System for the Mechanical Análisys and Retrieval of Text) desarrollado por Gerald Selton fue el sistema básico para representar documentos.

 

Page 21: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Ejemplos:

Documento 1La Bamba

 Para bailar la bambaPara bailar la bambase necesita una

poca de gracia y otra cosita......

Page 22: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Documento 2

Sin ti

Sin ti, no podre vivir jamas

y pensar que nunca mas estaras

junto a mi

Sin ti, que me puede ya

importar, si lo que me hace

soñar está lejos de mi

Page 23: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Documento 1 #1854

  R1 La Bamba

R2 Para bailar la bamba

R3 Para bailar la bamba

R4 se necesita una

R5 poca de gracia y

R6 otra cosita......

Page 24: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Documento 1 #1854

  R1 La Bamba

R2 Para bailar la bamba

R3 Para bailar la bamba

R4 se necesita una

R5 poca de gracia y

R6 otra cosita......

Page 25: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Documento 2 # 7523

R1 Sin ti

R2 Sin ti, no podre vivir jamas

R3 y pensar que nunca mas estaras

R4 junto a mi

R5 Sin ti, que me puede ya

R6 importar, si lo que me hace

R7 sonar está lejos de mi

Page 26: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Documento 2 # 7523

R1 Sin ti

R2 Sin ti, no podre vivir jamas

R3 y pensar que nunca mas

estaras

R4 junto a mi

R5 Sin ti, que me puede ya

R6 importar, si lo que me hace

R7 soñar está lejos de mi

Page 27: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

¿Qué palabras incluir?

Hay una base de datos de los términos incluidos en todos los documentos. Google en 1998, tenía 14 millones de términos.

Con esta base de datos se crea una estructura en memoria de tipo Arbol-B para procesar todas las palabras de los documentos.

Page 28: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Base de datos I

Page 29: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

• Lista invertida de términos:

Base de datos II

Page 30: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Frecuencia de palabras en documentos

Base de datos III

Page 31: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Procedimiento de consulta

Suponiendo que queremos buscar en los documentos, los documentos con las palabras: Sin ti

Se construye el vector W W = (0, ..., 0, 1,1,0,.....,0)

Sin ti Que tiene dos componentes iguales a 1 en los lugares de las palabras Sin y ti

Page 32: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Resultado:

Si se tiene una consulta representada por W y un documento representado por U, entonces

 

                Si U.W = 0

 

El documento W no tiene ninguna de las palabras de la consulta W.

 

Si U.W > 0 entonces el documento U tiene algunas palabras de la consulta W.

 

Page 33: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Una mejor aproximación es tener Cos = U.W / || U || || W ||

  Donde es el ángulo entre U y V.  Si Cos > 0.5 Diremos que U es una respuesta de la

consulta W y si 

Cos < 0.5  Entonces U no es una respuesta a la

consulta W.

Page 34: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

• Se contruye una estructura de datos en memoria para calcular eficientemente los productos interiores de la consulta por los documentos y se eligen documentos que tengan las palabras de búsqueda.

Page 35: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Ranking de un documento De entre todos los documentos que

tienen las palabras que se buscan, se presentan los que tengan ranking de mayor a menor. Google calcula el ranking de acuerdo a:

Page 36: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

R(i) Ranking de la página i.

N(i) Número de enlace salidas de i

B(i) Número de enlaces entradas de i

m Total de páginas en el sistema

d factor que mide la longitud de la

búsqueda

Page 37: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

r(i) es la probabilidad de llegar a la página i a partir de otra d es una fecha que mide la longitud de la búsqueda.

 

Se eligen los documentos de ranking más grande y a partir de W y las bases de datos I y II se construyen las respuestas.

 

Page 38: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Partes de un motor de búsqueda (con indexación automática)

Robots: Encargada de traer las páginas, comprimirlas y guardarlas.

 

Diccionario: Base de Datos con la información de todas las palabras a utilizar.

 

Procesador de páginas:

Revisa los documentos a partir del documento y los indexa.

Page 39: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Procesador de consultas:

Dada una consulta construye los resultados.

 

Sistema de Rankeo:

Calcula la importancia de cada página.

Page 40: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Arquitectura de Google

Page 41: Autores: Autores: Pedro Flores Pérez, José Figueroa, Caleb Lizárraga, Ernesto Brau, Adrian Lucero, Carlos David Briceño, Ivo Jimenez, Juan A. Raygoza y

Bibliografia

• S.Brin, L. Page. The anathomy of a large-scale hipertextual web search engine. 7th international world wide web conference.Brisbane, Australia, April 1998.

• Michael W. Berry, Murray Boune. Understanding search engines: mathematical modeling and text retrieval. SIAM press 1999.