memoria del proyecto final de carrera...tras emplear gran parte del tiempo de este proyecto a...

172
INGENIERÍA INFORMÁTICA Proyecto Final de Carrera Técnicas actuales de búsqueda y recuperación de información en Internet: Dominio y uso de técnicas de Data Mining Jonathan Ortigosa Hernández 24/06/2008

Upload: others

Post on 22-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

INGENIERÍA INFORMÁTICA

Proyecto Final de Carrera

Técnicas actuales de búsqueda y recuperación de información en Internet: Dominio y uso de técnicas de Data Mining

Jonathan Ortigosa Hernández

24/06/2008

Page 2: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[II]

Resumen. El objetivo del proyecto es realizar un análisis exhaustivo del estado del

arte de las técnicas actuales de búsqueda y recuperación de información utilizadas

en Internet haciendo especial énfasis en el uso del Data y Web Mining.

La aplicación del Data Mining en este campo es una novedad y recientemente han

aparecido varios documentos tratando dicho tema. Tras emplear gran parte del

tiempo de este proyecto a indagar y analizar esos documentos se realizará un

estudio teórico y crítico, tanto del dominio de la búsqueda web, como de diversas

técnicas de Data Mining de recomendación web que son o pueden ser utilizadas

para asistir a los usuarios en sus búsquedas web.

Palabras Clave. Minería Web, Agentes Inteligentes, World Wide Web, Motores de

Búsqueda, Recuperación de Información

Abstract. The aim of this project is to perform an exhaustive analysis of the state-

of-art of the search and information-recovery techniques on Internet; we will

specially focus our interest in the use of Data and Web Mining.

The application of Data Mining techniques in these areas is a novelty, and several

documents have appeared in the last years. The author will spend a large part o its

time reading and analyzing different sources of knowledge on the exposed topics;

web search domain, several Data Mining techniques and Web Personalization.

Keywords. Web Mining, Intelligent Agents, World Wide Web, Search Engines,

Information Retrieval.

Page 3: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[III]

Me gustaría dedicar esta

memoria a mis padres por

costearme la carrera, lo que ha

hecho posible la realización del

proyecto. En especial, dedicar a

mi madre por haber sido la

primera en leerla con fin de

encontrar errores tipográficos.

También me gustaría dedicársela

tanto a mi supervisor del

proyecto por asesorarme en su

realización, como a mis amigos

por creer en mí, darme puntos de

vista diferentes sobre diversos

temas del proyecto y, sobre todo,

por animarme en los peores

momentos.

Gracias a todos ellos.

Jonathan Ortigosa Hernández

Page 4: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[IV]

LICENCIA CREATIVE COMMONS

Page 5: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[V]

ÍNDICE

TABLA DE CONTENIDO

Introducción al proyecto 1

PLANIFICACIÓN Y GESTIÓN DEL PROYECTO 3

Planificación y gestión del proyecto 5

1. Introducción 5

2. Descripción del proyecto 7

2.1. Título 7

2.2. Abstract 7

2.3. Propuesta de proyecto 7

3. Planificación 11

3.1. Estructura de trabajo descendente 11

3.2. Estimación del tiempo necesario para la realización del proyecto 12

4. Identificación de Riesgos 13

5. Breve explicación de la planificación 15

6. Breve explicación sobre la metodología a seguir 17

7. Finalización del proyecto 18

7.1. Tiempo invertido en la realización del proyecto 18

PRIMERA PARTE: LA BÚSQUEDA WEB 21

Capítulo 1. Recuperación de información y búsqueda en la web 23

1. La búsqueda web 23

2. Arquitectura de los sistemas de Recuperación de Información 25

3. Diversos conceptos importantes sobre la búsqueda web 26

Page 6: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[VI]

3.1. Hipótesis 27

3.2. Recursos críticos en las búsquedas 28

3.3. Tipos de búsquedas 28

3.4. Eficacia y eficiencia en las búsquedas 29

Capítulo 2. Mecanismos de búsqueda 31

1. Introducción 31

2. Las herramientas de búsqueda clásicas 33

2.1. Motores de Búsqueda o Buscadores 33

2.2. Directorios o Índices 35

2.3. Buscadores VS Directorios 37

3. Otras Herramientas 38

3.1. Metabuscadores 38

3.2. Agentes inteligentes 39

4. Conclusiones 40

Capítulo 3. World Wide web 43

1. La tripe W 43

1.1. Definición y principales características 43

1.2. Partes del World Wide Web 45

2. Minería Web 46

3. Tamaño del World Wide Web 48

4. Infometría de la Web 49

5. Estructura de la web 51

Capítulo 4: La web invisible 55

1. Introducción 55

2. Caracterización y estado actual de la Web Invisible 55

2.1. La web opaca (the opaque web) 56

2.2. La web privada (the private web) 57

2.3. La web propietaria (the proprietary web) 58

2.4. La web realmente invisible (the truly invisible web) 58

3. El problema subyacente 59

4. Lo realmente invisible 60

Conclusiones de la primera parte 63

SEGUNDA PARTE: MOTORES DE BÚSQUEDA 65

Page 7: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[VII]

Capítulo 5. Google: Cómo funciona un buscador 67

1. Introducción 67

2. Google 68

3. Los módulos que resuelven los procesos de Google 70

3.1. Googlebot, recuperando páginas web 70

3.2. Indexer, indizando páginas web 70

3.3. Query Processor, procesando las consultas de los usuarios 71

4. Arquitectura de Google 72

Capítulo 6. Web structure mining: Análisis de enlaces 77

1. Introducción 77

2. Conceptos matemáticos sobre el análisis de enlaces 78

3. PageRank 79

3.1. Algoritmo PageRank 79

3.2. Ventajas y desventajas de PageRank 81

4. HITS 81

4.1. Algoritmo HITS 82

4.2. Ventajas y desventajas de HITS 84

5. Fórmula de Google 84

Capítulo 7. El Lenguaje Interrogación (Query Language) 89

1. El lenguaje interrogación 89

2. Tipos de operadores 90

2.4. Operadores lógicos o booleanos 90

2.5. Operadores posicionales 91

2.6. Operadores de truncamiento y de límite/comparación 92

Capítulo 8. diseño de agentes inteligentes de búsqueda 93

1. Agentes inteligentes 93

2. Diseño del Web Hunter 94

2.1. Aproximación al Web Hunter 94

2.2. Plan de actuación del Web Hunter 96

2.3. Modos de testeo 98

3. Aplicación de los agentes inteligentes de Búsqueda 98

Capítulo 9. Diseño de un motor de recuperación de Información 101

1. Objetivos de Karpanta 101

2. Arquitectura de Karpanta 102

Page 8: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[VIII]

2.1. Módulo de indización 102

2.2. Módulo de consulta 103

3. Procesos de Karpanta 104

3.1. Proceso de indización 104

3.2. Proceso de consulta 105

3.3. Realimentación de consultas 106

4. Debilidades de esta implementación 107

Conclusiones de la segunda parte 109

TERCERA PARTE: TÉCNICAS DE DATA MINING APLICADAS A LA

RECUPERACIÓN DE INFORMACIÓN EN LA WEB 111

Capítulo 10. Personalización Web 113

1. Introducción 113

1.1. Personalización Web: un problema de predicción 114

2. Tipos de Personalización Web 115

2.1. Sistemas de personalización basados en reglas 115

2.2. Sistemas de personalización basados en el contenido 116

2.3. Collaborative filtering 117

3. Perfiles de Usuario 120

3.1. Perfiles basados en un único usuario 120

3.2. Perfiles basados en varios usuarios 121

3.3. Uso de ontologías 121

4. Uso del Data Mining en la Personalización Web 122

5. Proceso de Personalización Web basado en WUM 123

Capítulo 11. La Personalización Web como aplicación de Data Mining 125

1. Modelado de perfiles de usuario 125

2. Preprocesado de Datos en WUM 127

1.1. Preprocesado del Uso 128

1.2. Transformación de Datos 130

3. Descubrimiento de Patrones 131

3.1. La personalización basada en métodos de Clustering 131

3.2. Otros métodos utilizados en la personalización 133

4. Evaluación de los Modelos 134

Page 9: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[IX]

Capítulo 12. Sistemas de Recomendación basados en el contenido 137

1. Representación de los Ítems 137

1.1. Text Mining 139

2. Perfiles de Usuario 143

3. Algoritmos de clasificación 145

4. Ejemplos de sistemas que implementan esta técnica 146

4.1. Syskill and Webert 147

4.2. WebWatcher 148

4.3. Agente de Rubén Fuentes y Juan Pavón 149

4.4. Letizia 150

4.5. NewsWeeder 151

5. Limitaciones de estos sistemas 152

Conclusiones de la tercera parte 153

CONCLUSIONES DEL PROYECTO 155

REFERENCIAS 157

Page 10: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[X]

ÍNDICE DE FIGURAS Y TABLAS

Figura 1. Esquema de los contenidos a tratar en el proyecto 10

Figura 2. Work Breakdown Structure del proyecto 11

Tabla 3. Resumen de la estimación de horas realizado en Febrero 12

Tabla 4. Tabla-resumen que compara las estimaciones realizadas con el tiempo invertido en

el proyecto. 18

Figura 5. Arquitectura de un sistema de recuperación de información (Liu, 2006a) 25

Figura 6. Resultados mostrados por Google al introducir como palabra clave “Apple”. 33

Figura 7. El directorio Yahoo! 36

Figura 8. Acciones realizadas por un metabuscador al procesar una búsqueda. 38

Figura 9. Partes del World Wide Web 45

Figura 10. Categorías de la minería web. (Román et al, 2005) 47

Figura 11. Grafo dirigido que representa la estructura de la web. 53

Figura 12. Logotipo de Google 68

Figura 13. Captura de algunos servicios que ofrece el portal de Google además del buscador.

69

Figura 14. Procesado de una consulta (Google Inc., 2003) 72

Figura 15. Definición de Alto Nivel de la Arquitectura de Google. (Brin et al, 1998) 73

Figura 16. Ejemplo del cálculo del PageRank. 80

Figura 17. Esquemas de una autoridad (authority) y un centro (hub). (Liu, 2006b) 82

Figura 18. Ejemplo de un conjunto base S. El conjunto S contiene al Conjunto W (Root Set) y a

las páginas añadidas en la expansión. 83

Figura 19. La finalidad de HITS es encontrar un conjunto de páginas relacionadas con el

tema de búsqueda que tengan alta puntuación como autoridad y centro. (Liu, 2006b) 84

Figura 20. Página web para realizar búsquedas avanzadas en Google. Los operadores vienen

implícitos en la interfaz. 90

Figura 21. Sitemap de la Web “Biology of the Mammary Gland” http://mammary.nih.gov/ 95

Figura 22. Flujo de acciones de Web Hunter 97

Tabla 23. Ejemplo de vector de palabras de un documento. 102

Figura 24. Proceso de indización. 104

Figura 25. Preprocesamiento de una consulta. 105

Figura 26. Resolución de una consulta. 106

Figura 27. Aplicación de last.fm 114

Figura 28. Vector de términos con pesos extraído de un documento de Seguros de Coche. 117

Figura 29. Sistemas de recomendación documentados que utilizan la técnica de

Collaborative Filtering. 119

Page 11: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[XI]

Figura 30. Tareas y elementos necesarias en el Preprocesado de Datos. (Mobasher, 2007)

127

Figura 31. El Preprocesado de Uso dentro del Preprocesado de Datos. (Mobasher, 2007) 128

Figura 32. La Transformación de Datos dentro del Preprocesado de Datos. (Mobasher, 2007)

130

Figura 33. Ejemplo de Clustering (5NN) basados en la distancia entre los individuos. 132

Figura 34. Ejemplo de una base de datos con datos estructurados sobre los trabajadores de

una determinada empresa. 138

Figura 35. Representación de un texto no-estructurado mediante la técnica bag-of-words.

140

Figura 36. Representación de documento, selección de variables y método clasificatorio

utilizados en algunas de las aproximaciones de Text Mining publicadas. PARTE I

(Mladenic, 1997) 142

Figura 37. Representación de documento, selección de variables y método clasificatorio

utilizados en algunas de las aproximaciones de Text Mining publicadas. PARTE II

(Mladenic, 1997) 143

Figura 38. Aproximaciones de sistemas de recomendación basados en el contenido.

(Mdalenic, 1999) 147

Figura 39. Interfaz de Syskill and Webert. 148

Figura 40. Interfaz de WebWatcher. 149

Figura 41. Interfaz de Letizia. 151

Page 12: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[1]

INTRODUCCIÓN AL PROYECTO

“Search is one of the hardest computer science problems in the world, because

basically we are trying to create artificial intelligence so that we can speak with

our computer, they can understand us and deliver what we are looking for. That is

equivalent to turning your computer into a very intelligent research librarian,

which of course is the holy grail of computer science, to create artificial

intelligence. So it's not easy, you know.” John Batelle (The future of online search,

CNN, 2005)

El conjunto de personas a los cuales nos interesa la Inteligencia Artificial, y más

concretamente el Data Mining, al leer esta citación, nos realizamos la siguiente

pregunta: ¿Se pueden aplicar las técnicas estudiadas en este dominio? ¿Existirán

autores que han aplicado dichas técnicas a dicho dominio? Por ello, se ha decidido

realizar un proyecto sobre las técnicas de Data Mining aplicables a la búsqueda

web. En este proyecto no se van a realizar implementaciones de ningún tipo, ni

ningún estudio práctico del tema abordado, el objetivo del mismo es el

enriquecimiento personal del autor al aprender conocimientos en este campo, el

cual no se aborda en el transcurso de la carrera.

Para la realización del mismo, se propondrán una serie de objetivos que vendrán

delimitados con la adquisición de algún tipo de conocimiento y la metodología

utilizada será la adquisición de conocimientos en dichos temas durante un periodo

de tiempo. Una vez transcurrido ese tiempo, se procederá a realizar una síntesis de

lo estudiado. Dicha síntesis puede encontrarse en esta memoria.

A continuación se muestra la planificación realizada en este proyecto, seguida por

los conocimientos adquiridos.

Espero que los lectores disfruten al leer sobre estos conocimientos como yo al

adquirirlos.

El autor

Page 13: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 14: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[3]

PLANIFICACIÓN Y GESTIÓN DEL PROYECTO

Page 15: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 16: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[5]

PLANIFICACIÓN Y GESTIÓN DEL PROYECTO

1. Introducción

En la actualidad, dado que la búsqueda en Internet es uno de los problemas más

complejos en las ciencias de la computación, existen numerosas soluciones de

mayor o menor efectividad. Debido a la imposibilidad de analizar todas las

soluciones existentes y la necesidad de realizar el proyecto final de carrera en un

tiempo finito, el tema principal del proyecto estará delimitado por los siguientes

supuestos y características:

• Hipótesis formuladas:

o Hipótesis 1: Los objetivos de las búsquedas de los usuarios son

diferentes y el tiempo dispuesto a dedicar a las mismas es variable.

Aunque es posible encontrar en la web clústeres de usuarios con

intereses comunes.

o Hipótesis 2: Es una utopía considerar que existe una solución óptima

para el problema de la búsqueda en la web, sin embargo, es muy

posible que en un futuro cercano se consigan aproximaciones muy

buenas.

• En este proyecto se tratarán temas que conciernen a las siguientes técnicas

de la Inteligencia Artificial:

o Data Mining

o Web Mining

o Intelligent (Search) Agents

o Machine Learning

o Personalization Web

o Text Mining

• Se realizará un análisis del estado del arte de la búsqueda web de acuerdo a

los siguientes meta-objetivos:

Page 17: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[6]

o Determinar las causas el bajo rendimiento de las técnicas actuales de

Recuperación de Información.

o Analizar diversas partes del dominio de la Recuperación de

Información en la Web, en las cuales se utilizan o pueden utilizarse

diversas técnicas de Data Mining para tratar de mejorar el

rendimiento de las mismas.

o Una de las partes del dominio a estudiar serán los motores de

búsqueda.

o Presentar la Personalización Web como una de las técnicas de Data

Mining utilizadas para asistir al usuario en las búsquedas, haciendo

especial énfasis en los sistemas de recomendación basados en el

contenido.

• Como resultado de la investigación realizada se presentará un informe que

contendrá, a modo de resumen, los temas tratados durante el trascurso de

la misma. Este resumen puede verse en las partes 1, 2 y 3 de esta memoria.

A modo de finalización, se realizará una pequeña conclusión sobre los

temas tratados, presente en la última parte de esta memoria.

Page 18: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[7]

2. Descripción del proyecto

2.1. Título

Técnicas actuales de búsqueda y recuperación de información en Internet:

Dominio y uso de técnicas de Data Mining

2.2. Abstract

El objetivo del proyecto es realizar un análisis exhaustivo del estado del arte de las

técnicas actuales de búsqueda y recuperación de información utilizadas en

Internet haciendo especial énfasis en el uso del Data y Web Mining.

La aplicación del Data Mining en este campo es una novedad y recientemente han

aparecido varios documentos tratando dicho tema. Tras emplear gran parte del

tiempo de este proyecto a indagar y analizar esos documentos se realizará un

estudio teórico y crítico, tanto del dominio de la búsqueda web, como de diversas

técnicas de Data Mining de recomendación web que son o pueden ser utilizadas

para asistir a los usuarios en sus búsquedas web.

2.3. Propuesta de proyecto

Título

Técnicas actuales de búsqueda y recuperación de información en Internet:

Dominio y uso de técnicas de Data Mining

Propósito

Realizar un estudio teórico y crítico del estado del arte del dominio de la búsqueda

y recuperación de información en el World Wide Web desde el punto de vista de la

aplicación de diversas Técnicas de Data Mining y Web Mining

Page 19: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[8]

Objetivos

1. Identificar y documentar las técnicas actuales de búsqueda y recuperación de

información utilizadas en el World Wide Web.

2. Determinar las características principales del World Wide Web

3. Elaboración de un marco teórico conceptual del funcionamiento de los

Motores de búsqueda.

4. Determinar los distintos módulos de los Motores de búsqueda en los cuales se

pueden aplicar diversas técnicas de Data Mining y Web Mining para mejorar,

así, su rendimiento.

5. Establecer las bases de diseño de un motor de búsqueda.

6. Analizar las técnicas tanto de Data Mining como de Web Mining que pueden

ser utilizadas en el tratamiento de los datos textuales presentados por un

motor de búsqueda o una página web.

6.1. Establecer las bases del problema de Data Mining al cual nos

enfrentemos.

6.2. Identificar y analizar las técnicas de Data y Web Mining que

potencialmente pueden ser usadas en la resolución del problema.

6.3. Realizar una crítica del estado del arte de dichas técnicas en el marco de

trabajo propuesto.

6.4. Identificar diversas investigaciones que se llevan a cabo en la actualidad

o se tienen planificadas a corto plazo dentro del marco del problema.

Resultados del proyecto

Documentación sobre el estudio realizado

Memoria de la planificación y gestión del proyecto

Page 20: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[9]

Palabras Clave

WEB MINING, INTELLIGENT AGENTS, WORLD WIDE WEB, SEARCH ENGINES,

INFORMATION RETRIEVAL

Tipo de Proyecto

Proyecto de evaluación basado en investigación

Método de investigación a utilizar

Estudio indirecto de casos

Recursos

Recursos Hardware: Ordenador Personal.

Recursos Software: Microsoft Windows XP Professional SP2, Mozilla Firefox

2.0, Microsoft Word 2007, Microsoft Excel 2007, Microsoft Project 2007,

Microsoft Visio 2007, EditPlus Text Editor 2.11 y Adobe Reader 8.0.

Recursos Humanos: Opiniones de expertos en la materia.

Page 21: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[10]

Esquema del Contexto del Proyecto

Figura 1. Esquema de los contenidos a tratar en el proyecto

Page 22: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[11]

3. Planificación

3.1. Estructura de trabajo descendente

Figura 2. Work Breakdown Structure del proyecto

Page 23: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[12]

3.2. Estimación del tiempo necesario para la realización del

proyecto

Tarea Tiempo

estimado

Invertido

hasta

febrero

0. PREPARACIÓN DE LAS BASES DEL PROYECTO 174h00' 135h00'

0.1. Investigación inicial 80h00' 70h00'

0.2. Planificación y gestión del proyecto 94h00' 65h00'

1. IDENTIFICAR LAS TÉCNICAS DE BÚSQUEDA 15h00' 7h00'

2. CARACTERIZACIÓN DEL WORLD WIDE WEB 17h00' 4h00' 3. ESTUDIO DEL FUNCIONAMIENTO DE LOS MOTORES DE BÚSQUEDA

34h00' 4h30'

4. IDENTIFICAR LAS FASES Y RECURSOS EN EL DISEÑO DE MOTORES DE BÚSQUEDA

25h00' 11h00'

5. ANÁLISIS DE LAS TÉCNICAS DE DATA Y WEB MINING USADAS EN LA BÚSQUEDA

130h00' 14h00'

5.1. Identificar el problema a resolver 10h00' - 5.2. Identificar las técnicas 70h00' 14h00' 5.3. Crítica del estado del arte 30h00' -

5.4. Identificar posibles futuras líneas de investigación 20h00' -

6. REDACCIÓN DE LOS CONOCIMIENTOS ADQUIRIDOS 50h00' 4h30' 7. REDACCIÓN DEL DOCUMENTO DE PLANIFICACIÓN Y GESTIÓN DEL PROYECTO

20h00' 4h00'

TOTAL 465h00' 184h00' Tabla 3. Resumen de la estimación de horas realizado en Febrero

La tabla-resumen número 3 se presenta la estimación de horas realizada en la

replanificación de febrero. La última columna muestra las horas invertidas hasta el

momento en que se realizó la replanificación.

Page 24: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[13]

4. Identificación de Riesgos

Objetivos dudosos

Probabilidad del evento: Alta

Impacto del riesgo: Alto

Descripción: Debido a la numerosa información disponible sobre el tema del

proyecto es posible que los objetivos sean ambiguos y/o intenten abarcar

demasiado.

Contramedida: REDUCCIÓN DE LA PROBABLIDAD e IMPACTO. Con la ayuda

del supervisor se han establecido unos objetivos concretos y alcanzables.

Siguiendo este documento a rajatabla, la probabilidad de que se de este

riesgo es mínima.

Tiempo: Recurso crítico

Probabilidad del evento: Alta

Impacto del riesgo: Alto

Descripción: Al ser un proyecto de investigación de artículos de diversos

autores, el único recurso crítico es el tiempo. El tiempo que se va a emplear

en el proyecto debe ajustarse lo más posible al estimado.

Contramedida: REDUCCIÓN DE LA PROBABLIDAD e IMPACTO. Tomando

como guía los tiempos estimados de este documento, la probabilidad de

ocurrencia de este riesgo disminuye considerablemente.

Page 25: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[14]

Conocimientos y experiencia inadecuados

Probabilidad del evento: Media

Impacto del riesgo: Alto

Descripción: Los conocimientos enseñados en la Facultad pueden ser

insuficientes para algunos temas a tratar en el proyecto

Contramedida: EVITAR EL RIESGO. En el inicio del proyecto se establece una

tarea de acercamiento al tema a tratar, la cual se destina a cubrir las

carencias de los conocimientos aprendidos en la Carrera.

Pérdida de información

Probabilidad del evento: Alta

Impacto del riesgo: Alto

Descripción: Siempre que se trabaja con Sistemas de Información aparece el

riesgo de perder información.

Contramedida: EVITAR EL RIESGO. Establecer una Política de Gestión de

Copias de Seguridad

Disponibilidad de la información

Probabilidad del evento: Media

Impacto del riesgo: Medio

Descripción: Es posible que información vital para el proyecto no esté

disponible en la Red o en la Biblioteca.

Contramedida: ACEPTAR EL RIESGO. SI no se encuentra algún documento, lo

más probable es dicho contenido también sea comentado en otros

documentos disponibles. Lo único que puede ocasionar este riesgo es una

pequeña pérdida de tiempo.

Page 26: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[15]

Número de compromisos universitarios

Probabilidad del evento: Alta

Impacto del riesgo: Alto

Descripción: Al encontrarme de Erasmus, he intentar terminar la carrera

este curso con doble titulación (UPV y Coventry University), tengo gran carga

lectiva, lo que podría provocar el fracaso del proyecto.

Contramedida: REDUCCIÓN DE LA PROBABLIDAD e IMPACTO. Con la ayuda

de esta planificación y definiendo unos objetivos claros, este la probabilidad

de ocurrencia de este riesgo se reduce considerablemente.

5. Breve explicación de la planificación

La planificación contenida en este documento es una replanificación del proyecto

final de Carrera en Ingeniería Informática realizada a mediados de Febrero de

2008.

La primera planificación (principios de Noviembre 2007) tenía las siguientes

características:

• Existían objetivos que trataban de Agentes Inteligentes de Búsqueda y

técnicas de Data Mining (este sigue existiendo), los cuales contenían

numerosos subobjetivos. Esto se debía a que en un principio el proyecto se

dividía en dos partes: una a presentar en la Universidad de Coventry (donde

me encuentro realizando el último curso) y la otra a presentar en la

Universidad de País Vasco.

• El proyecto estaba dividido en las siguientes partes:

o Una primera parte común en la cual se realizaría una introducción al

mundo de la búsqueda en Internet.

o El objetivo que trataba del Data Mining correspondía al proyecto a

realizar para la Universidad del País Vasco

Page 27: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[16]

o El objetivo que trataba sobre Agentes Inteligentes de búsqueda

correspondía al proyecto a realizar para la Universidad de Coventry.

• El idioma del proyecto iba a ser desarrollado en inglés.

• En la política de riesgos existía un riesgo titulado “Nivel de inglés

inadecuado” y el riesgo “Número de compromisos universitarios” tenía

mayor probabilidad debido a la realización simultánea de otro proyecto.

• En la planificación realizada, la estimación de horas a invertir quedaba de la

siguiente manera:

o TIEMPO TOTAL A INVERTIR: 547h

o PROYECTO UPV: 309h

o PROYECTO CU: 290h

Nótese que el número total de horas a invertir es ligeramente inferior la

suma de los dos proyectos. Esto se debe a las partes comunes en los

proyectos, tanto en contenido como en planificación.

Conforme fueron transcurriendo los primeros meses del proyecto, me fui

percatando de que la redacción en inglés se estaba convirtiendo en una verdadera

amenaza debido a mi escaso nivel gramatical. A medida que aumentaba el tamaño

de los documentos que iba redactando también aumentaba la probabilidad de

fracaso de este proyecto.

A mediados de Febrero la situación se estaba volviendo insostenible y decidí

realizar una replanificación. Antes de comenzar la replanificación, tome las

siguientes decisiones:

• Realizar el proyecto en castellano.

• No realizar el proyecto para la Universidad de Coventry, debido a la

imposibilidad de realizar el mismo en castellano. En caso de que continuase

con él, hubiese peligrado el proyecto de la UPV, proyecto por el cual se va a

decidir mi nota en la Facultad de Informática.

Page 28: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[17]

• Eliminar prácticamente la parte dedicada a Agentes Inteligentes de

búsqueda, en esta memoria únicamente se presenta lo desarrollado hasta el

momento sobre dicho tema. También decidí mantener lo establecido en el

estudio de las técnicas de Data Mining, ya que es el tema acordado con mi

supervisor a principios de curso.

Tras tomar estas decisiones y comentarlas con el supervisor del proyecto se

procedió a realizar esta replanificación, la cual es presentada en Junio como

definitiva.

6. Breve explicación sobre la metodología a seguir

Dado que el propósito subyacente en el proyecto es la adquisición de

conocimientos en el área presentada, la metodología a seguir será la siguiente:

Por cada objetivo se realizará una investigación inicial para establecer los temas

interesantes que deben tratarse para cumplimentarlo. Una vez establecidos los

temas, se procederá a realizar una investigación en dichos temas. Esta

investigación se basa en la lectura y compresión de diversos artículos y la

realización de un posterior resumen.

Tras cumplimentar todos los objetivos, dichos resúmenes se unirán en un

documento. Dicho documento, el cual es el continente de todos los conocimientos

adquiridos en las investigaciones realizas, se encuentra en las partes 1, 2 y 3 de

esta memoria.

Por último, comentar que existe un sitio web con un diseño muy simple y de fácil

acceso en cual se subirá diversa información del proyecto. La URL de dicha web es

la siguiente:

http://usuarios.lycos.es/joh/PFC/index.html

Page 29: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[18]

7. Finalización del proyecto

Tras la realización del proyecto, debe comentarse que este cumple con los

objetivos propuestos en la planificación. Esta cumplimentación se puede con

mayor claridad en el siguiente apartado, comparando las horas estimadas con las

invertidas en todos y cada uno de los objetivos.

7.1. Tiempo invertido en la realización del proyecto

Tarea Tiempo

estimado

Tiempo

invertido

0. PREPARACIÓN DE LAS BASES DEL PROYECTO 174h00' 183h00'

0.1. Investigación inicial 80h00' 118h00'

0.2. Planificación y gestión del proyecto 94h00' 65h00'

1. IDENTIFICAR LAS TÉCNICAS DE BÚSQUEDA 15h00' 16h00'

2. CARACTERIZACIÓN DEL WORLD WIDE WEB 17h00' 13h00' 3. ESTUDIO DEL FUNCIONAMIENTO DE LOS MOTORES DE BÚSQUEDA

34h00' 29h30'

4. IDENTIFICAR LAS FASES Y RECURSOS EN EL DISEÑO DE MOTORES DE BÚSQUEDA

25h00' 20h00'

5. ANÁLISIS DE LAS TÉCNICAS DE DATA Y WEB MINING USADAS EN LA BÚSQUEDA

130h00' 123h00'

5.1. Identificar el problema a resolver 10h00' 11h00’ 5.2. Identificar las técnicas 70h00' 68h30' 5.3. Crítica del estado del arte 30h00' 25h00’

5.4. Identificar posibles futuras líneas de investigación 20h00' 18h30’

6. REDACCIÓN DE LOS CONOCIMIENTOS ADQUIRIDOS 50h00' 63h30' 7. REDACCIÓN DEL DOCUMENTO DE PLANIFICACIÓN Y GESTIÓN DEL PROYECTO

20h00' 10h00'

TOTAL 465h00' 458h00' Tabla 4. Tabla-resumen que compara las estimaciones realizadas con el tiempo invertido en el proyecto.

De esta tabla podemos deducir que a grandes rasgos se han cumplido las

previsiones establecidas en la planificación. Esto puede deberse a que dicha

planificación se realizase en mitad de la ejecución del proyecto, en una etapa en la

que el alcance, la metodología y los objetivos a realizar estaban muy clarificados.

Las únicas diferencias dignas de mención son la investigación inicial y la redacción

de la presente memoria.

Page 30: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[19]

La primera se debe a que dicha investigación se fue alargando durante la ejecución

del proyecto debido a la cantidad de información disponible sobre algunos temas.

La diferencia existente en la redacción de la memoria se debe a la cantidad de

información recaudada a lo largo de estos meses.

Page 31: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 32: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[21]

PRIMERA PARTE: LA BÚSQUEDA WEB

En esta parte del proyecto se caracterizará el dominio de la búsqueda web. Esta

caracterización se realizará del siguiente modo:

En el Capítulo 1 - Recuperación de Información y Búsqueda Web se expondrán a

nivel introductorio las características básicas de la búsqueda web, así como,

diversos conceptos sobre dicha técnicas necesarios en todo proyecto que trate

sobre la susodicha técnica.

El Capítulo 2 - Mecanismos de Búsqueda trata sobre los mecanismos de búsqueda

que principalmente son utilizados en la web para satisfacer las necesidades de

información de un conjunto muy diverso de usuarios.

Los Capítulos 3 - World Wide Web y 4 - La Web Invisible tratan de caracterizar el

dominio físico en el que se sitúan las tareas de búsqueda y recuperación de

información en la web. Mientras que en el primero se explican las principales

características del World Wide Web, en el segundo se analiza un subconjunto de la

web con características muy particulares.

Page 33: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 34: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[23]

CAPÍTULO 1. RECUPERACIÓN DE INFORMACIÓN Y BÚSQUEDA EN

LA WEB

Abstract. En este capítulo se exponen diversos conceptos a nivel introductorio que deben ser

tenidos en cuenta en este proyecto. En primer lugar, se realiza una introducción al área de

estudio denominada Recuperación de Información o IR, donde se sitúa la búsqueda web.

Posteriormente, se expone la arquitectura de los sistemas de Recuperación de Información. A

modo de finalización, se presentan diversos conceptos de interés que deben ser tomados en

cuenta en cualquier estudio realizado sobre la búsqueda en la web.

Keywords. WebSearch, Information Retrieval, Critical Resources, Effectiveness, Efficiency.

1. La búsqueda web

“La búsqueda en la web no necesita introducción. Debido al uso de internet y la

riqueza de la información contenida en la misma, la búsqueda web se ha

convertido en el método de obtención de información. Mientras los viajes a las

bibliotecas disminuyen, las búsquedas en Internet crecen.” (Liu, 2006a)

La documentación de este proyecto se ha realizado íntegramente con información

obtenida de la red. Los artículos y libros consultando han sido consultados

electrónicamente, aunque algunos de ellos existiesen físicamente en las estanterías

de las bibliotecas. De hecho, sin la ayuda de los mecanismos de búsqueda en la web

y la riqueza de los contenidos web, la elaboración de este proyecto hubiese sido

mucho más compleja.

La búsqueda en la web se clasifica dentro del área de estudio denominada

Recuperación de Información – en inglés Information Retrieval o IR –, en la cual

se estudian las diversas formas de ayudar al usuario a encontrar la información

que éste necesita en un conjunto grande de documentos de texto. Un ejemplo de un

sistema IR tradicional sería la clasificación por fichas que se realizaba

antiguamente en las bibliotecas. En la web, estos documentos se corresponden con

las páginas web.

Page 35: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[24]

La recuperación de información es simplemente encontrar un conjunto de

documentos que sean relevantes en relación a una consulta realizada, la cual suele

tener el formato de una lista de palabras clave. A dichas palabras clave se les

conoce como términos de la búsqueda.

La solución propuesta por los sistemas de recuperación de información suele ser

una lista de documentos ordenandos por relevancia en relación a la consulta

realizada.

En el documento (Liu, 2006a) se expone que, a pesar de que la búsqueda en la web

forma parte del campo de estudio del área IR, ésta presenta nuevos problemas que

deben de ser solucionados. Dichos problemas son los siguientes:

• En la búsqueda web la eficiencia trata un papel muy importante, siendo un

problema secundario en los sistemas IR tradicionales. Esto se debe

principalmente a que los usuarios generalmente exigen respuestas rápidas,

además de que la cantidad de información en la web es muchísimo mayor

que en los sistemas tradicionales. No importa lo efectivo que sea un

algoritmo, si éste no es capaz de trabajar con eficiencia, muy pocos usuarios

lo utilizarán. De esto podemos deducir que el intervalo de tiempo que el

usuario está dispuesto a emplear es bastante reducido, ello implica que el

tiempo de respuesta de los sistemas también lo debe ser.

• Las características del conjunto de documentos en los que se van a realizar

la búsqueda web difieren de los de las búsquedas tradicionales IR. En las

búsquedas tradicionales los documentos son independientes unos de otros,

en la web, en cambio, las páginas web contienen hiperenlaces que unen

unas con otras. Otra diferencia es que las páginas web son documentos

semi-estructurados mientras que los documentos tradicionales son un

conjunto de párrafos relacionados sobre un tema concreto. Las páginas web

contienen diversos campos, siendo unos más importantes que otros, p.e. el

contenido de un artículo es más importante que la publicidad. Por tanto, los

sistemas de búsqueda en la web deberían diferenciar estos campos.

Page 36: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[25]

• El término inglés spamming – que podríamos traducir como

contaminación – es uno de los mayores problemas en la web. Consideramos

spam a todo documento que satisface la consulta realizada por el usuario

pero que no satisface la necesidad de información del mismo. En la IR

tradicional no existe este problema. En la búsqueda web, éste es un

verdadero problema debido a que en ocasiones aparece spam como

documentos relevantes, lo que produce una disminución de la calidad de la

herramienta de búsqueda.

2. Arquitectura de los sistemas de Recuperación de

Información

La Recuperación de Información estudia conceptos de adquisición, organización,

almacenamiento, recuperación y distribución de información. (Liu, 2006a)

En la siguiente figura podemos observar la arquitectura que tiene un sistema de

recuperación de información:

Figura 5. Arquitectura de un sistema de recuperación de información (Liu, 2006a)

Observando la figura 5, un usuario (the user) con una necesidad de información

formula una consulta (user query) a un sistema de recuperación de información a

Page 37: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[26]

través de un módulo denominado operaciones de consulta (query operations).

Este módulo puede traspasar la consulta tal y como está o puede enriquecerla.

El sistema de recuperación (retrieval system) utiliza el índice de documentos

(document index) para recuperar los documentos que satisfacen la consulta del

usuario, además éste computa la relevancia de los mismos y los ordena por

relevancia. Tras ello, los documentos ordenados (ranked documents) son remitidos

al usuario. La colección de documentos (document collection) también se suele

denominar base de datos textual, en la cual los documentos están indizados o

indexados por el indizador (indexer).

La consulta realizada por el usuario puede corresponder con alguna de las

siguientes formas:

1. Consulta de palabras clave. Ésta consiste en una lista de términos relevantes.

2. Consultas booleanas. Conjunto de palabras clave acompañadas de

operadores booleanos

3. Consultas de frases. Una oración que debe aparecer en el documento tal y

como se especifica en la consulta.

4. Consultas de documentos completos. Se corresponde con la búsqueda de

documentos similares a uno propuesto.

5. Consultas en lenguaje natural. El usuario expresa su consulta en el lenguaje

que utiliza para comunicarse con otros seres humanos. Actualmente esta

tecnología se encuentra bastante limitada y en proceso de investigación.

3. Diversos conceptos importantes sobre la búsqueda web

En este apartado se exponen algunos conceptos de diversa índole, los cuales son

extraídos de los documentos consultados y deben ser contemplados para evitar

malinterpretaciones en los capítulos posteriores.

Page 38: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[27]

3.1. Hipótesis

En (Serrano Cinca, 2004), a la hora de presentar las diversas estrategias y tácticas

de búsqueda enuncian la siguiente hipótesis:

“Los objetivos de las búsquedas de los usuarios son diferentes y el tiempo dispuesto a

dedicar a las mismas es variable.”

A modo de ejemplo establecen que no es lo mismo las búsquedas que realiza un

profesor para documentarse sobre la asignatura que imparte, las que realiza un

alumno que va a examinarse y necesita saber todo lo que pueda sobre un tema

concreto o las de aquel que quiere encontrar la dirección de la oficina de Hacienda

más cercana.

Tras observar dicha hipótesis podría deducirse que lo correcto sería tomarla como

punto inicial del proyecto. Sin embargo, en este proyecto se va a tomar dicha

hipótesis únicamente cuando sea conveniente, p.e. para justificar los tipos de

mecanismos de búsqueda existentes o a la hora de definir soluciones de

recuperación de información generales.

En otras ocasiones, se aludirá a las similitudes existentes en el comportamiento de

diversos usuarios para justificar diversas técnicas de recuperación de información

de carácter específico. Por ejemplo, al presentar una herramienta de búsqueda de

documentos científicos regidos por la norma de Vancouver – abstract,

introducción, desarrollo y conclusión – se deduce que dicha herramienta será

utilizada por científicos, los cuales, tienen un comportamiento bastante parecido.

Dicho subconjunto de los usuarios suele valorar más la calidad de los documentos,

que el tiempo empleado en la búsqueda.

En conclusión, la hipótesis es cierta si se refiere al conjunto global de usuarios de la

red, sin embargo, ésta pierde validez al aplicarse a conjuntos de usuarios con

intereses comunes.

Page 39: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[28]

3.2. Recursos críticos en las búsquedas

Hoy en día, y con mayor énfasis en el mundo que rodea a las Ciencias de la

Computación, se suele utilizar el término recurso crítico. Recurso se define como

el medio o elemento que se emplea para conseguir un fin pretendido, siendo el

recurso crítico el medio o elemento de un conjunto de recursos que más escasea.

Estamos acostumbrados tratar como recurso crítico al dinero, al personal o a la

tecnología. En este proyecto se harán referencia, en especial, a dos recursos

críticos: la tecnología disponible y el tiempo empleado.

En la actualidad las diversas herramientas fruto de la Inteligencia Artificial

desempeñan un papel importante en nuestra sociedad, la Web es claro ejemplo de

ello. Aplicaciones Web como Amazon, Last.fm, 20Q… basan su funcionamiento en

el uso de diversos métodos matemáticos derivados de la Inteligencia Artificial.

Puede suceder que se induzca incorrectamente de estas observaciones que todas

las aplicaciones de la Web están compuestas de una avanzada tecnología basada en

la IA, cuando en realidad, no se da ese caso. La IA se encuentra en un estado muy

precario a la hora de recuperar información de la Web, si bien la recuperación por

procesamiento de textos es muy potente hoy en día, en los demás métodos, las

técnicas bibliotecarias de clasificación y recuperación siguen siendo las más

eficaces.

El tiempo es el recurso crítico por excelencia para el ser humano por sus

características particulares. El tiempo no puede ser acumulado, ni almacenado, ni

reemplazado y estamos obligados a consumirlo a una tasa fija, se quiera o no. En

muchas ocasiones el tiempo es quién decide si una tarea es factible o no, y más en

este contexto debido al colosal tamaño de la Web.

3.3. Tipos de búsquedas

(Serrano Cinca, 2004) define dos tipos de clasificación de las búsquedas, las cuales

deben ser tomadas en consideración:

Page 40: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[29]

Tipos de búsquedas respecto al tiempo disponible:

• Se dispone de poco tiempo y se quiere lo mejor.

• Se dispone de mucho tiempo y se quiere toda la información

disponible.

Tipos de búsquedas respecto a los objetivos:

• Existe una única respuesta y la queremos encontrar en el menor

tiempo posible.

• Existes múltiples documentos que resuelven los requerimientos, por

lo que queremos encontrar los documentos clave sin sufrir el exceso

de información.

En este proyecto, principalmente trataremos con las búsquedas que satisfacen

gran cantidad de documentos, de los cuales queremos extraer los documentos

clave dejando el tiempo disponible en segundo plano, aunque es deseable que este

sea lo más acotado posible.

3.4. Eficacia y eficiencia en las búsquedas

La eficacia se encarga de los resultados, está relacionada con lograr los

objetivos. La eficiencia, en cambio, se enfoca a los recursos, a utilizarlos de la mejor

manera posible, generalmente en tiempo1. ¿Puede ser una tarea eficiente sin ser

eficaz? ¿Y ser eficaz sin ser eficiente? Ambas respuestas son afirmativas.

Aunque se puede trabajar prescindiendo de una habilidad, lo ideal es

trabajar con las dos, ya que:

Eficiencia + Eficacia = Productividad

En el tema del proyecto y en su acción principal – la búsqueda y

recuperación de información web - también se presentan la eficiencia y eficacia.

1 En este proyecto la eficiencia se referirá al empleo del tiempo salvo que se indique lo contrario.

Page 41: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[30]

En el mismo, se dará más importancia a la eficacia, quedando la eficiencia relevada

a un segundo plano. Nuestro objetivo es conseguir ambas, pero en las situaciones

en las cuales debe prescindirse de una de ellas, prescindiremos de la eficiencia. A

continuación se presentan ejemplos bastante exagerados de diversas búsquedas

analizadas respecto a su eficacia y eficiencia:

Búsqueda eficiente y eficaz: Necesitamos la dirección de la peluquería y sabemos

el nombre, por lo que introducimos el nombre y la cuidad en Google, accedemos a

su página y anotamos la dirección.

Búsqueda eficiente (ineficaz): Siguiendo el ejemplo anterior, buscamos en

Google la peluquería, vemos que no aparece, pero que existe otra cerca, y tiene

buena pinta. Por tanto decidimos ir a esa a cortarnos el pelo.

Búsqueda eficaz (ineficiente): Para buscar la peluquería nos descargamos las

páginas amarillas de nuestra zona en pdf y buscamos a mano la peluquería. Tras 20

minutos localizamos la peluquería y su dirección.

Page 42: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[31]

CAPÍTULO 2. MECANISMOS DE BÚSQUEDA

Abstract. Existen múltiples tipos de clasificaciones de las herramientas utilizadas para la

búsqueda en la web, las cuales son muy diferentes entre sí. En este capítulo presentaremos

una clasificación de las herramientas existentes basada en diversas clasificaciones

propuestas en varios artículos consultados. Se clasificarán y describirán detalladamente

herramientas como los buscadores, los directorios, los metabuscadores o los agentes

inteligentes de búsqueda.

Keywords. Search Engines, Directories, Intelligent (Search) Agents, Metasearch Engines.

1. Introducción

Hoy en día, la hegemonía de la búsqueda en la web la tienen los motores de

Búsqueda, es más, la mayoría de los usuarios de Internet únicamente conocen

Google, el cual es el motor de búsqueda más utilizado. Sin embargo, en la web

coexisten numerosas herramientas de búsqueda y recuperación de información,

las cuales se caracterizan por su variedad y heterogeneidad. Debido a esto, resulta

complejo realizar una clasificación de las mismas. En (Moreno Jiménez, 2005) se

explica este problema de la siguiente manera: “Cada herramienta de búsqueda

funciona, tiene un propósito y alcance distintos, aunque actualmente tienden a

combinar métodos dando lugar a híbridos, lo cual puede dificultar la compresión

del funcionamiento interno de estos mecanismos.”

Este problema ha propiciado que numerosos autores hayan realizado sus propias

clasificaciones de las herramientas de búsqueda y que, al realizar un estudio sobre

los mecanismos de búsqueda, nos encontremos con infinidad de clasificaciones

distintas, siendo la mayoría de ellas clasificaciones correctas de acuerdo a los

argumentos realizados por los autores. A modo de ejemplo, veamos algunas

clasificaciones realizadas en los documentos consultados:

• Rubén Fuentes Fernández en el artículo (Fuentes Fernández, 2003)

establece que las herramientas de Recuperación de Información empleadas

Page 43: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[32]

en la actualidad son los motores de búsqueda, directorios, metabuscadores

y agentes inteligentes.

• En (Lara Navarra et al, 2004) se expone que las herramientas de

recuperación de información son las siguientes: Motores de Búsqueda,

Directorios y Agentes Inteligentes.

• Los tipos de herramientas que aparecen en (Serrano Cinca, 2003) son

Motores de Búsqueda, Índices, Metabuscadores, “Buscadores más

inteligentes” y Espías, entre otros.

• (Moreno Jiménez, 2005) propone los Buscadores, Metabuscadores,

Directorios, Guías, Tutoriales y diverso software especializado como

mecanismos de búsqueda en la web.

• En (Méndez Rodríguez, 1999) se dividen los sistemas de búsqueda de la

web en Índices, Buscadores, Metabuscadores, Agentes y Otros.

Tras exponer estos ejemplos, nos encontramos con el problema de qué

clasificación tomar como referencia. Es cierto que podríamos utilizar cualquiera de

ellas, ya que todas son correctas, pero en este documento vamos clasificar las

herramientas de búsqueda de acuerdo a las tendencias que se derivan de todos los

documentos mencionados. Por ello, en este documentos vamos a clasificar las

herramientas en dos tipos principales: Las herramientas de búsqueda clásicas y

Otras herramientas.

En las herramientas de búsqueda clásicas2 se presentarán los Buscadores o Motores

de Búsqueda y los Índices o Directorios, ya que son las herramientas más

empleadas en la recuperación de información y también son las herramientas de

búsqueda más “maduras” en la web. Si analizamos las clasificaciones de los

artículos referenciados podemos observar que estas dos herramientas siempre

aparecen en todos ellos.

2 Nombre utilizado por el autor para diferenciar las distintas herramientas.

Page 44: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[33]

En Otras herramientas 3se presentarán las herramientas más relevantes que no

pertenecen al conjunto anterior. La relevancia de las herramientas se basa en el

juicio del autor.

2. Las herramientas de búsqueda clásicas

2.1. Motores de Búsqueda o Buscadores

Según la Wikipedia, un buscador (Search Engine) es un sistema informático que

indexa por palabras clave diversos archivos almacenados en servidores Web. Se les

suele denominar también Motores de Búsqueda o Buscadores jerárquicos. Como

ejemplos de buscadores tenemos Google, MSN Live Search o Altavista.

Los buscadores rastrean e indizan de forma automática páginas web, así como

todos los documentos referenciados en ellas. Esto lo realizan mediante el uso de

arañas (webcrawlers). También son añadidas a los servidores de los buscadores las

páginas las cuales son informadas directamente por el autor. Su interfaz suele ser

un cuadro de texto donde realizar búsquedas de forma sencilla. Tras introducir las

palabras clave en dicho cuadro, se nos presenta una página web en la cual

aparecen diversos resultados ordenandos por relevancia, tal y como aparece en la

siguiente figura:

Figura 6. Resultados mostrados por Google al introducir como palabra clave “Apple”.

3 Corresponde a lo comúnmente se denomina “Cajón de sastre”.

Page 45: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[34]

Los buscadores presentan resultados realizados directamente sobre sus servidores

y no sobre la Web, y dado que las arañas realizan el rastreo con periodicidad

variable y no con mucha frecuencia, puede existir diferencia entre lo encontrado y

lo que verdaderamente se encuentre en la Web. Se creé que la frecuencia de

rastreo ha aumentado en los últimos años y que ésta se hace de forma diferenciada

para algunos recursos. Por ejemplo, las páginas de noticias se rastrearían con

mayor frecuencia que las páginas personales.

Las principales diferencias entre los buscadores presentes en la Web son la forma

de calcular la relevancia de la información obtenida, PageRank y demás, y el poco

solapamiento que existe entre sus resultados, es decir, que cada buscador tiende a

indizar una parte diferente de la web. Según (Lara Navarra et al. 2004) existe una

diferencia significativa al realizar una misma búsqueda utilizando buscadores

distintos.

Los puntos fuertes de usar Motores de búsqueda son que éstos realizan búsquedas

exhaustivas y que posibilitan encontrar recursos muy específicos acotando los

términos de la búsqueda según (Méndez Rodríguez, 1999). En dicho documento,

también se expone que la principal desventaja es el ruido producido, es decir, los

buscadores presentan un gran número de resultados y en bastantes ocasiones

éstos están duplicados. Según (Moreno Jiménez, 2005) la principal limitación sería

que, en la actualidad, los buscadores sólo pueden recuperar información que se

encuentra disponible EN la web, no aquella que se ofrece A TRAVÉS de la web.

A pesar de las limitaciones, en los últimos años han mejorado considerablemente

en la precisión en las búsquedas y en la forma de ofrecer los resultados. Además, se

pueden realizar búsquedas de diversos archivos, además de páginas web, como

documentos de MS Word, documentos pdf, etc.

En la segunda parte de este proyecto – capítulos del 5 al 9 – se realiza un estudio

de la tecnología empleada por este tipo de herramienta y se exponen las bases para

el diseño de un buscador.

Page 46: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[35]

2.2. Directorios o Índices

Según la Wikipedia, un directorio (directory) es un sistema informático que indexa

por temas o categorías jerarquizados los archivos almacenados en servidores Web.

También se les suele denominar Índices o Índices temáticos. Como principal

ejemplo está Yahoo!, aunque en la actualidad también usa búsqueda por palabras

clave.

Los directorios se organizan manualmente a partir del registro de páginas por

parte de sus editores e implican una selección y un proceso de categorización

jerarquizada.

Según (Moreno Jiménez, 2005) existen dos tipos de directorios:

• Directorios de modelo cerrado (Closed model directories): Los editores de

estos directorios son empleados de la empresa que los realiza, esto conlleva

a una mayor calidad de la información y a un mayor costo.

• Directorios de modelo abierto (Open model directories): Los editores de

los directorios son voluntarios, lo que reduce el coste y la calidad de los

mismos.

En (Méndez Rodríguez, 1999) se expone que el punto fuerte de usar Directorios es

que existe poco riesgo de duplicación en los resultados al tratarse de recursos

seleccionados. El punto débil sería que son menos exhaustivos que los Buscadores.

En la siguiente figura podemos observar las categorías jerárquicas del directorio

Yahoo!:

Page 47: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[36]

Figura 7. El directorio Yahoo!

Por último, es importante comentar que existen directorios contenedores de

buscadores, directorios con anotaciones de los usuarios, directorios con BBDD, es

decir, que un directorio puede indizar cualquier tipo de servicio o formato.

Page 48: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[37]

2.2.1. Guías

Algunos autores – véase el artículo (Moreno Jiménez, 2005) – tratan a las guías

como una herramienta más de búsqueda, el autor de este proyecto prefiere, por el

contra, tratarlas como directorios con características especiales, ya que la idea

subyacente de ambos es la misma.

Creadas por especialistas y entidades académicas, las guías son un contenedor de

recursos web seleccionados por área de especialidad, los cuales pueden no ser

recuperables por los buscadores. Además éstas pueden incluir algún mecanismo

de búsqueda – tecnología basada en buscadores – en sus páginas o en la web en

general.

Las guías son reconocidas por su alto grado de calidad, ya que en la mayoría de los

casos comprometen el prestigio de sus autores o las instituciones a las que

pertenezcan. Por ello, la selección de recursos suele ser muy cuidadosa y con una

constante actualización.

En ocasiones las entidades encargadas se asocian formando circuitos (web rings)

para la elaboración cooperativa de estas guías.

2.3. Buscadores VS Directorios

Habitualmente, en el mundo de la Web, los buscadores y los directorios son

llamados motores de búsqueda indistintamente. Lo cierto es que hoy en día, si

observamos únicamente a los productos utilizados por las grandes compañías p.e.

Google Inc. o Yahoo! Inc., no sería necesario diferenciarlos, ya que, ambos utilizan

búsqueda por palabras clave e índices. Sin embargo, todavía existen pequeñas

soluciones basadas exclusivamente en una de las dos tendencias, y por ello, es

conveniente seguir diferenciándolas.

Recordando lo expuesto con anterioridad, cada tipo de herramienta tiene su

propósito y su modus operandi, infringir alguno de los dos acarreará limitaciones a

la búsqueda que estamos realizando. Por ello, los buscadores e índices deben ser

Page 49: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

utilizados dependiendo de la búsqueda a realizar.

para búsquedas específicas, es decir, se conocen datos sobre lo que se busca, y se

ejecuta realizando una búsqueda por palabras.

desarrollados para realizar búsquedas categóricas mie

páginas, es decir, para las

Finalmente, se deberían comentar las limitaciones que poseen en conjunto estas

dos tendencias. En el artículo (Fuentes Fernández, 2003) expone que estas

herramientas proporcionan bajo

información mostrada está desactualizada.

3. Otras Herramientas

3.1. Metabuscadores

Los metabuscadores (

búsquedas simultáneas en diversos buscadores y/o directorios presenta

posteriori un resumen de los resultados obtenidos

ejemplo de metabuscador sería

observar cómo se realiza una búsqueda en un metabuscador:

Figura 8. Acciones realizadas por un metabuscador al procesar una búsqueda.

Introducir la consulta y seleccionar los buscadores a utilizar

Enviar la consulta a los buscadores

Recibir los resultados de los buscadores

Detectar las repeticiones y listarlos por

[38]

utilizados dependiendo de la búsqueda a realizar. Los buscadores se deben usar

para búsquedas específicas, es decir, se conocen datos sobre lo que se busca, y se

ejecuta realizando una búsqueda por palabras. En cambio, los directorios están

desarrollados para realizar búsquedas categóricas mientras se naveg

páginas, es decir, para las búsquedas que sean temáticas.

Finalmente, se deberían comentar las limitaciones que poseen en conjunto estas

dos tendencias. En el artículo (Fuentes Fernández, 2003) expone que estas

herramientas proporcionan bajo recall, baja precisión y que en ocasiones la

información mostrada está desactualizada.

Otras Herramientas

Metabuscadores

Los metabuscadores (Metasearch Engines) son aplicaciones

búsquedas simultáneas en diversos buscadores y/o directorios presenta

posteriori un resumen de los resultados obtenidos y eliminando

ejemplo de metabuscador sería Metacrawler®. En la siguiente figura podemos

observar cómo se realiza una búsqueda en un metabuscador:

Acciones realizadas por un metabuscador al procesar una búsqueda.

Introducir la consulta y seleccionar los buscadores a utilizar

Enviar la consulta a los buscadores seleccionados

Recibir los resultados de los buscadores

Detectar las repeticiones y listarlos por relevancia

Presentar los resultados al usuario

s buscadores se deben usar

para búsquedas específicas, es decir, se conocen datos sobre lo que se busca, y se

os directorios están

ntras se navega en sus

Finalmente, se deberían comentar las limitaciones que poseen en conjunto estas

dos tendencias. En el artículo (Fuentes Fernández, 2003) expone que estas

, baja precisión y que en ocasiones la

aplicaciones que realizan

búsquedas simultáneas en diversos buscadores y/o directorios presentando a

los duplicados. Un

. En la siguiente figura podemos

Acciones realizadas por un metabuscador al procesar una búsqueda.

Page 50: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[39]

Los metabuscadores son utilizados principalmente para búsquedas muy

complejas. Dado que cada buscador se dedica casi en totalidad a una parte de la

zona indizable, al utilizar metabuscadores se multiplica el área de búsqueda y por

tanto, la probabilidad de éxito. Como limitaciones decir que los metabuscadores no

suelen presentar opciones de búsqueda avanzada, además éstos presentan las

limitaciones de cada buscador utilizado. Otra limitación sería que al depender de

otros sistemas, en ocasiones fallen.

Existe relativa controversia entre los diferentes expertos del tema sobre el uso de

los metabuscadores, unos recomiendan utilizarlos fervientemente ya que para

ellos son el siguiente eslabón de la cadena alimenticia de la búsqueda en la Web

mientras que otros advierten constantemente de sus limitaciones. (Moreno

Jiménez, 2005)

3.2. Agentes inteligentes

Tal y como comenta (Lara Navarra et al, 2004) un agente inteligente es un

programa que basándose en su propio conocimiento, realiza un conjunto de

operaciones para satisfacer las necesidades de un usuario o de otro programa, bien

por iniciativa propia o porque alguno de éstos se lo requiere. Para una definición

más completa de este término leer la sección 1 del capítulo 8.

Otros autores, como por ejemplo Moreno Jiménez, denominan a este conjunto

“Software especializado” y lo utilizan para clasificar todas aquellas herramientas

que no se corresponden a ninguno de los tipos propuestos anteriormente y que

generalmente utilizan técnicas basadas en la inteligencia artificial.

Este es el grupo más heterogéneo de todos, ya que existen multitud de diversas

aplicaciones; existen agentes que filtran los resultados de los buscadores, otros

que buscan y recuperan información, otros que “espían” webs avisando al usuario

cuando se produce un cambio en éstas, etc.

Page 51: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[40]

En (Fuentes Fernández, 2003) se caracteriza a este grupo por usar búsqueda

dinámica en vez de la búsqueda estática utilizada por los sistemas de búsqueda

clásicos. La búsqueda dinámica obtiene los datos de la web en el momento en el

que se está realizando la búsqueda, estos datos no son obtenidos de ningún índice

preconstruido.

Los agentes inteligentes serán un tema recurrente en el proyecto, aparecerán en

capítulo 8 como mecanismos que recorren la web buscando páginas web. En el

capítulo 12 se presentarán algunos agentes inteligentes que realizan

recomendaciones de contenidos presentes en web basándose en los intereses del

usuario que use dichos sistemas.

4. Conclusiones

Varias conclusiones se pueden extraer de los datos propuestos y de la experiencia

personal.

En primer lugar, la hegemonía de los motores de búsqueda, más concretamente el

caso de Google, ha propiciado a que las demás técnicas queden relegadas a un

segundo plano. Los índices, hoy en día, son usados en pequeñas comunidades

cibernéticas para usos muy específicos. Es más, el mayor ejemplo de índice es

Yahoo! y en la actualidad se usa principalmente para búsquedas por palabras

clave.

En cuando a los agentes inteligentes, no existe ninguna solución general para todo

el ámbito de la red, únicamente existen pequeñas aplicaciones para contextos muy

concretos – algunas de las cuales serán estudiadas a posteriori en la segunda y

tercera parte del proyecto–.

A modo de conclusión, aunque todavía resultan más eficaces los métodos

bibliotecarios tradicionales a la hora de buscar y recuperar información que las

técnicas de inteligencia artificial, poco a poco se van perfeccionando los

mecanismos existentes haciendo que el empleo de la inteligencia artificial sea más

Page 52: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[41]

eficaz en este campo. El autor cree que estos avances se deben en su mayoría a las

pequeñas aportaciones que hacen los investigadores al crear pequeños agentes

inteligentes para contextos concretos.

Page 53: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 54: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[43]

CAPÍTULO 3. WORLD WIDE WEB

Abstract. Aunque la definición del World Wide Web sea sencilla, el estudio del mismo es

bastante complejo, por ello es necesaria la introducción de técnicas, como p.e. Minería Web,

que nos ayuden a estudiar su naturaleza. En esta unidad definiremos el concepto World Wide

Web, realizaremos diversas clasificaciones de sus componentes, una de ellas basándonos en

la Minería Web, discutiremos sobre el tamaño de la red y presentaremos varias

distribuciones de leyes potenciales que se dan en la web, entre ellas la más importantes será

la ley de Zipf.

Keywords. World Wide Web, Web Mining, WWW Size, WWW Structure, Zipf law.

1. La tripe W

1.1. Definición y principales características

La enciclopedia libre Wikipedia define el World Wide Web – de aquí en adelante

WWW o la web – como “un sistema de documentos de hipertexto y/o hipermedios

enlazados y accesibles a través de Internet. Con un navegador Web, un usuario

visualiza sitios Web, forjados de páginas Web que pueden contener texto, imágenes u

otros contenidos multimedia, y navega a través de ellas usando hiperenlaces”.

Dado que los estudios realizados se van a centrar en la búsqueda y recuperación de

información, vamos a tratar una abstracción de la web. Dicho modus operandi no

alterará los estudios realizados ya que únicamente se va a “suprimir” aquellos usos

de la red que no incumben en tal actividad y que lo único que pueden producir es

“ruido” en las argumentaciones. En los próximos párrafos se da una descripción

detallada de susodicha abstracción.

La Web es el fenómeno más importante que se da en Internet, por ello, ha tomado

tal protagonismo que habitualmente se confunden los términos y se designa uno u

otro para denominarse entre sí. En este proyecto se intentará mantener cierta

coherencia de términos, sin embargo, puede suceder que debido a la inclusión de

textos de las referencias o por mera belleza textual de algunos apartados se

Page 55: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[44]

utilicen ambos términos como sinónimos. Este uso puede ser tolerado bajo nuestra

perspectiva dado que desde el punto de vista de la búsqueda y recuperación de la

información pueden tratarse ambos términos como sinónimos.

Al igual que se ha especificado anteriormente, la web tiene muchos usos y

aplicaciones. En este proyecto, a no ser que se especifique lo contrario, sólo vamos

a referirnos a un único uso: la web como base documental, es decir, la web es un

conjunto de información con características particulares cuyo fin es ser consultada

por diversos usuarios. Rubén Fuentes en (Fuentes et al, 2003) expone que dicha

información posee las determinadas características que hacen compleja la labor de

recuperación. Dichas características son las siguientes:

• Está distribuida en diversos servidores.

• Es dinámica, cambia constantemente tanto de forma como de contenido.

• No tiene estructura común en todos los documentos. Los documentos

carecen de modelo conceptual que estructure semánticamente el contenido.

• Es heterogénea, es decir, está compuesta por partes de diversa naturaleza,

ya que soporta grandes cambios de formato y lenguaje.

• Es altamente volátil, aparece información nueva y desaparece la

información desactualizada a gran velocidad.

• Es redundante. En numerosas ocasiones se encuentra repetida la

información en distintas páginas.

• La información no es únicamente textual.

En nuestro contexto, trataremos generalmente con información textual. Las

soluciones propuestas a los problemas de la búsqueda y recuperación de

información disponibles en la actualidad aunque son muy potentes en tratamiento

de texto, en otros formatos pierden bastante efectividad. Por ello, es preferible

dejar el tratamiento de otros formatos como asignatura pendiente para estudios

futuros y centrarnos en la información textual. Por tanto, a no ser que se

especifique lo contrario, de aquí en adelante, al referirnos a información de la web,

nos estaremos refiriendo a información textual.

Page 56: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[45]

1.2. Partes del World Wide Web

La estructura del World Wide Web puede estudiarse desde infinidad de

perspectivas, p.e. se puede caracterizar por su contenido, estructura, usuarios que

la frecuentan, etc. Como primera aproximación, podemos clasificar el contenido del

World Wide Web por la naturaleza de su contenido – páginas web – tal y como

aparece en la siguiente figura:

Figura 9. Partes del World Wide Web

Por tanto, la web, desde este punto de vista, estaría dividida en cuatro partes

principales: Web Estática, Web Dinámica, Web Semántica y Web Oculta.

La Web Estática corresponde al conjunto de páginas estáticas, es decir,

documentos HTML que se encuentran alojados en la web. Estos documentos

cambian con muy poca frecuencia. Un ejemplo de páginas web estáticas sería el

sitio web creado para la asignatura Seguridad Informática en 2006 situado en

http://usuarios.lycos.es/joh/SEGURIDAD/index.html.

La Web Dinámica contiene aquellas páginas que sólo se crean en respuesta al

usuario, al realizar éste una consulta en la web. Un ejemplo de página dinámica

puede ser la página mostrada por Google al buscar el término “página dinámica”,

http://www.google.com/search?q=pagina+dinamica.

Page 57: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[46]

La Web Semántica contiene páginas que contienen metadatos los cuales dotan de

significado al contenido. Este significado es utilizado por los mecanismos

automáticos existentes en la web. A modo de ejemplo, podemos citar las imágenes

que se están tratando Google Labeler, cuya URL es la siguiente:

http://images.google.com/imagelabeler/

La Web Oculta o Web es el conjunto de páginas que no pueden ser recuperadas por

los sistemas de búsqueda tradicionales. En el capítulo número 4 se realizará una

caracterización exhaustiva de esta zona de la web.

En la figura también puede observarse una zona denominada la Web Indizable, la

cal corresponde a la zona que realmente cubren los motores de búsqueda.

Por último, es necesario decir que la figura no se encuentra a escala dado que

determinar el tamaño de la web y sus partes es una tarea bastante compleja, como

veremos en el apartado número 3.

2. Minería Web

La minería web (Web Mining) trata de descubrir patrones interesantes en la

estructura, el contenido y la utilización de los sitios web por parte de los usuarios,

así como usar diversas técnicas de Minería de Datos (Data Mining) para recuperar

información. (Definición basada en la propuesta por la enciclopedia Wikipedia)

En la web coexisten tres tipos de datos importantes, siendo éstos el contenido, los

hiperenlaces y el uso que realiza el usuario de la web.

• Los hiperenlaces son referencias que se dan en las páginas web, los cuales

hacen referencias a otras páginas web o archivos.

• El contenido sería lo que resta de las páginas web si eliminamos las palabras

reservadas de HTML y los hiperenlaces.

• El uso de la web es el conjunto de información que se extrae de los log de los

servidores web y que determina el comportamiento de los usuarios.

Page 58: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[47]

La minería web se divide en tres ramas principales de actuación, cada una de ellas

corresponde al análisis de un tipo de datos de los expuestos anteriormente.

La siguiente figura muestra la taxonomía de la minería web:

Figura 10. Categorías de la minería web. (Román et al, 2005)

La minería web de utilización o uso (Web Usage Mining o WUM) se suele realizar

localmente mediante análisis de los log de los Servidores Web. El objetivo de esta

disciplina es encontrar patrones de comportamiento de los usuarios al acceder a

unas determinadas páginas. Existen dos tipos de minería de uso: la que se centra

en el uso de los contenidos por parte de todos los usuarios – datos de utilización –

y la que se centra en que clasificar a los usuarios de acuerdo a los contenidos a los

que acceden – perfiles de usuario –. En la tercera parte de este proyecto se tratará

esta rama de la Minería Web, ya que las aplicaciones presentadas harán uso de ella.

La minería web de contenido (Web Content Mining o WCM) tiene como objetivo

encontrar patrones tanto en el contenido de las páginas web como en los

resultados de los mecanismos de búsqueda tradicionales. El estudio del contenido

Page 59: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[48]

de las páginas web se puede realizar de dos formas: estáticamente – tomar una

foto de cada página web estudiada – o dinámicamente – observar los cambios

producidos en cada página web en el transcurso del tiempo –.

La minería web de estructura (Web Structure Mining o WSM) trata de estudiar la

estructura de un conjunto de páginas web de acuerdo a los enlaces que existen

entre ellas. Baeza-Yates afirma que este tipo de análisis se realizan de forma más

global que los anteriores y que se emplean generalmente para encontrar las

páginas web más populares de la web. Esta área tiene dos aplicaciones que nos

conciernen muy importantes: Estudiar la estructura del World Wide Web e

intentar extraer razones matemáticas de la misma – véase apartado 4 – y extraer

información de la estructura de la web para calcular la relevancia de las páginas

web a la hora de ser mostradas en una búsqueda web – véase capítulo 6 –.

3. Tamaño del World Wide Web

Cuando se realiza un estudio en el cual es necesario un estudio de la web, la

persona que lo realiza suele tender a realizarse la siguiente pregunta:

¿Cuál es el tamaño en páginas web del World Wide Web?

Muchos autores se aventuran a dar una respuesta:

• R. Baeza-Yates en (Baeza-Yates, 2004) asegura que “La web al menos tiene

unas cuatro mil millones de páginas web estáticas, un número cientos de

veces mayor de dinámicas. La web semántica correspondería a algo menos

del 5% de la web y la web oculta sería del orden de miles de veces más

grande que la pública”.

• P.M. Moreno Jiménez en (Moreno Jiménez, 2005) cita a numerosos autores

a la hora de calcular el tamaño de la web oculta, dando datos como

siguientes:

o Entre dos tercios y un medio del World Wide Web.

Page 60: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[49]

o La web invisible es 550 veces mayor que la web pública y crece a

mucha mayor velocidad.

o La web oculta es 275 veces mayor que la pública.

o La web invisible es entre 2 y 50 veces la web pública.

• Al introducir en Google “tamaño del World Wide Web”, la página con más

relevancia (http://www.microsiervos.com/archivo/curiosidades/tamano-

world-wide-web.html) dice lo siguiente: “El World Wide Web tiene ahora

mismo 155.583.825 sitios Web”.

• Maurice de Kunder, en su web (de Kunder, 2008), realiza una estimación

diaria del tamaño de la web indizable. A día 26 de mayo de 2008 asegura

que el tamaño de la web indizable es 47.530 millones de páginas web.

Debido al alto dinamismo de la web, el cual produce que ésta cambie

constantemente a gran velocidad, los estudios realizados sobre su tamaño no

resultan de gran utilidad. Éstos se quedan obsoletos a las pocas horas de ser

realizados, o durante el transcurso de la investigación, ya que los datos recogidos

han perdido su validez. Estas conclusiones hacen que exista un grupo de

ingenieros que crean que el tamaño de la web pertenece al conjunto de preguntas

filosóficas imponderables, como la clásica pregunta inglesa: How many angels can

dance on the head of a pin? (Markoff, 2005)

4. Infometría de la Web

La mejor definición de Infometría es la propuesta en Yahoo!Answers, en la cual se

define como “la ciencia que aplica métodos matemáticos a los hechos y situaciones

que se producen en el campo de la información, para describir y analizar sus

fenómenos, descubrir sus leyes y servir de soporte a sus decisiones. Se aplica a los

datos de cualquier rama, desde las Matemáticas hasta las Ciencias de la

Información”. En algunos artículos, a este apartado se le denomina Distribuciones

de leyes potenciales (Power law distributions), ya que es la principal medida que se

utiliza para caracterizar al WWW.

Page 61: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

George Kingsley Zipf, lingüista y filólogo estadounidense de la primera mitad del

siglo XX, aplicó el análisis estadístico al e

numerosos estudios, enunció la conocida

un pequeño número de palabras son utilizadas con mucha frecuencia, mientras

que frecuentemente ocurre que un gran número de palabras son

Esta afirmación, expresada matemáticamente quedaría de la siguiente forma:

donde Pn representa la frecuencia de una palabra ordenada

a menos por frecuencia de uso

cercanías del 1. Esto significa que el segundo elemento la lista se repetirá

aproximadamente con una frecuencia de 1/2 de la del primero, y el tercer

elemento con una frecuencia de 1/3 y así sucesivamente.

empírica, es bastante precisa. Sus

propiedades estadísticas de grandes conjuntos de datos, y se han aplicado también

a la Web. Se estima que aplicando la ley de Zipf al contenido de las páginas web, la

constante a toma un valor medio que ronda entr

Pero no solo el contenido de las páginas web sigue un comportamiento acorde con

la ley de Zipf, existen muchas medidas en el World Wide Web que siguen dicha ley,

como por ejemplo, las siguientes

• El tamaño de las páginas

muy bien por la presión de la mirada crítica de los internautas, pero a

medida que crece el tamaño, la ley se va haciendo visible.

• Número de hiperenlaces entrantes y salientes

están apuntadas únicamente por un hiperenlace.

• Número de componentes conexos en la web

páginas conexos, es decir, que existe un camino formado por hiperenlaces

que conectan una página con cualquier otra dentro del conjunto.

[50]

George Kingsley Zipf, lingüista y filólogo estadounidense de la primera mitad del

aplicó el análisis estadístico al estudio de las diferentes lenguas. Tras

numerosos estudios, enunció la conocida Ley de Zipf (Zipf, 1949)

un pequeño número de palabras son utilizadas con mucha frecuencia, mientras

que frecuentemente ocurre que un gran número de palabras son

Esta afirmación, expresada matemáticamente quedaría de la siguiente forma:

representa la frecuencia de una palabra ordenada – ordenadas de mayor

a menos por frecuencia de uso – n-ésima y a es una constante que ronda en las

anías del 1. Esto significa que el segundo elemento la lista se repetirá

aproximadamente con una frecuencia de 1/2 de la del primero, y el tercer

elemento con una frecuencia de 1/3 y así sucesivamente. Aunque e

es bastante precisa. Sus trabajos son utilizados para estudiar las

propiedades estadísticas de grandes conjuntos de datos, y se han aplicado también

a la Web. Se estima que aplicando la ley de Zipf al contenido de las páginas web, la

te a toma un valor medio que ronda entre 1,8 (Baeza-Yates, 2003).

Pero no solo el contenido de las páginas web sigue un comportamiento acorde con

la ley de Zipf, existen muchas medidas en el World Wide Web que siguen dicha ley,

como por ejemplo, las siguientes:

El tamaño de las páginas. Para páginas web de tamaño pequeño no se ajusta

muy bien por la presión de la mirada crítica de los internautas, pero a

medida que crece el tamaño, la ley se va haciendo visible.

Número de hiperenlaces entrantes y salientes. La mayoría de las páginas

das únicamente por un hiperenlace.

Número de componentes conexos en la web. Existen pocos conjuntos de

páginas conexos, es decir, que existe un camino formado por hiperenlaces

que conectan una página con cualquier otra dentro del conjunto.

George Kingsley Zipf, lingüista y filólogo estadounidense de la primera mitad del

studio de las diferentes lenguas. Tras

(Zipf, 1949), que afirma que

un pequeño número de palabras son utilizadas con mucha frecuencia, mientras

poco empleadas.

Esta afirmación, expresada matemáticamente quedaría de la siguiente forma:

ordenadas de mayor

es una constante que ronda en las

anías del 1. Esto significa que el segundo elemento la lista se repetirá

aproximadamente con una frecuencia de 1/2 de la del primero, y el tercer

Aunque esta ley es

utilizados para estudiar las

propiedades estadísticas de grandes conjuntos de datos, y se han aplicado también

a la Web. Se estima que aplicando la ley de Zipf al contenido de las páginas web, la

Yates, 2003).

Pero no solo el contenido de las páginas web sigue un comportamiento acorde con

la ley de Zipf, existen muchas medidas en el World Wide Web que siguen dicha ley,

ginas web de tamaño pequeño no se ajusta

muy bien por la presión de la mirada crítica de los internautas, pero a

La mayoría de las páginas

. Existen pocos conjuntos de

páginas conexos, es decir, que existe un camino formado por hiperenlaces

que conectan una página con cualquier otra dentro del conjunto.

Page 62: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[51]

• Fecha de actualización. Existen más páginas nuevas o actualizadas que

antiguas.

• Uso de palabras clave a la hora de realizar búsquedas. Se realizan gran

cantidad de preguntas simples y muy pocas complejas.

• Número de accesos a una web por parte del usuario. Un usuario suele

acceder con frecuencia al mismo conjunto de páginas.

La ley de Zipf y el paradigma de Pareto o regla del 80:20 son utilizadas

constantemente para analizar estructuras, usos y comportamientos del World

Wide Web.

5. Estructura de la web

Como hemos podido deducir en los apartados anteriores, la estructura de la web es

compleja y evoluciona en el tiempo. Sin embargo, se han realizado numerosos

estudios sobre su estructura – teniendo en cuenta o no estimaciones sobre su

tamaño –. La mayoría de dichos estudios consideran la web como un grafo y

utilizan algoritmos definidos en teoría de grafos para intentar solucionar los

problemas derivados de la búsqueda, recuperación de información y minería de

datos presentes en el WWW. En (Broder et al, 2000) se justifican su necesidad

dando las siguientes áreas de aplicación – se referencian en dicho artículo – como

razones:

• Diseño de web crawlers – véase capítulo 8, donde se denominan Agentes

Inteligentes de Búsqueda –.

• Entender la sociología en la creación de contenido web.

• Utilizar la información implícita en el uso de hiperenlaces en la web, p.e.

algoritmo de PageRank – véase capítulo 6 –.

• Realizar predicciones en la evolución de las estructuras web y desarrollar

algoritmos adecuados para encontrar y organizar dichas estructuras.

Antes de analizar la estructura, podríamos enlazar esta sección con la anterior

comentando que la ley de Zipf también se presenta en la estructura del World

Page 63: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[52]

Wide Web, la fracción de páginas que son apuntadas por m páginas es

proporcional a 1/m2.1 (Broder et al, 2000), mientras que la fracción de páginas que

contienen n enlaces es proporcional a 1/n2.7 (Baeza-Yates, 2004). En lenguaje

natural esto significa que pocas páginas son muy apuntadas y contienen muchos

enlaces y que muchas páginas son poco apuntadas y contienen pocos enlaces.

Como hemos comentando, diversos estudios modelan el World Wide Web como un

grado dirigido donde los nodos son las páginas web existentes y las aristas

dirigidas de un nodo a otro representan el enlace de una página a otra.

Matemáticamente, se expresaría de la siguiente manera:

Sea el World Wide Web un grafo dirigido � � ��, ��, donde � es el conjunto de nodos

(el conjunto de páginas) y � el conjunto de aristas dirigidas en el grafo (los

hiperenlaces), siendo el número total de páginas en la Web � � |�|. En (Broder et al, 2000), unos de los trabajos pioneros en este campo, tras diversos

experimentos, descubrieron que la web está formada por varios tipos de subgrafos

interconectados entre sí. De acuerdo con su trabajo, si fuese posible reducir el

zoom del grafo que representa la web hasta que sea perceptible todo el conjunto,

nos encontraríamos un grafo parecido a la figura siguiente:

Page 64: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[53]

Figura 11. Grafo dirigido que representa la estructura de la web.

Como se puede observar en la figura, la web está formada por seis tipos principales

de subgrafos: Entrada, Núcleo, Salida, Túneles, Islas y Tentáculos.

El Núcleo (denominado SCC en Broder et al, 2000) es el conjunto de páginas más

estable de todos. Este subgrafo corresponde al conjunto de páginas conexas, es

decir, que existe un camino desde cualquier página del conjunto a la otra del

conjunto.

En el subgrafo Entrada (IN) existe un camino desde cualquier página contenida al

subgrafo Núcleo, pero no existen caminos entre dichas páginas contenidas.

Generalmente está compuesto por las páginas más nuevas que aún no son

demasiado conocidas. Estas páginas pasarán al centro si verdaderamente tienen

éxito.

En el conjunto Salida (OUT) existe un camino para llegar hasta sus páginas desde

el Núcleo, pero no entre ellas. Suele estar compuesto por las páginas más antiguas,

mal hechas, mal mantenidas o simplemente que por su naturaleza no tienen

enlaces.

Page 65: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[54]

Túnel (Tubes) es el conjunto de páginas que conectan entrada con salida sin pasar

por el núcleo

Las Islas (Disconnected components) son conjuntos de páginas aisladas de la

Web, no son enlazadas por nadie y no enlazan a nadie, únicamente tienen enlaces

con las páginas dentro de su isla. Son los conjuntos menos estables y el menos

conocidos.

Los Tentáculos (Tendrils) son las variaciones debidas a la complejidad de la

estructura del World Wide Web, es decir, el conjunto de páginas web que no se

pueden clasificar en los subgrafos anteriores.

Finalizando el apartado, nos podríamos preguntar, al igual que hacen Broder et al,

la siguiente pregunta: ¿Será esta estructura básica propuesta y sus componentes

estables en el futuro? O incluso preguntarnos lo siguiente: ¿En la actualidad sigue el

World Wide Web teniendo esta estructura?

Page 66: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[55]

CAPÍTULO 4: LA WEB INVISIBLE

Abstract. En este capítulo se discutirá sobre un subconjunto de la Web denominado Web

Invisible. Para ello, se analizarán las distintas partes que forman la Web Invisible: la web

opaca, la web privada, la web propietaria y la web realmente invisible. A modo de conclusión,

se comentará el problema subyacente que suscita este subconjunto y se presentarán los datos

que en la actualidad continúan siendo invisibles.

Keywords. Invisible Web, Opaque Web, Private Web, Proprietary Web, Truly Invisible Web.

1. Introducción

La doctora Jill Ellsworth (Ellsworth J. et al, 1995) definió, por primera vez, el

término Web Invisible como el conjunto de la información que no puede

recuperarse con los mecanismos de búsqueda comunes. También puede ser

denominado como Web Profunda (deep web), por oposición a la Web Superficial

(surface web) cuya información es recuperable con los mecanismos habituales.

Existen muchas estimaciones poco precisas y muy diversas sobre el tamaño de la

Web Invisible, al igual que sucede con el tamaño de la Web, véase apartado 3 del

capítulo 3. En este documento no vamos a tratar su tamaño debido a la naturaleza

cambiante del mismo. La única constante que se encuentran en todos los trabajos

consultados es que el tamaño de la Web Invisible es varias veces el tamaño de la

Web Visible. A pesar de que el tamaño no sea relevante, el valor de la información

contenida en dicho segmento de la Web justifica el estudio del mismo y de las

formas de acceder a dicha información.

2. Caracterización y estado actual de la Web Invisible

Sherman y Price identifican en (Sherman y Price, 2001) cuatro tipos de contenidos

invisibles: la web opaca, la web privada, la web propietaria y la web realmente

invisible. Dicha clasificación se basa más en la accesibilidad – o inaccesibilidad – a

dicha información que en el propio contenido de los documentos invisibles. (Lara

Navarra P. et al, 2004) expone otro tipo de clasificación que se centra en criterios

Page 67: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[56]

documentales del contenido. Debido a que la primera clasificación es la más

específica, será la tomada como referencia para este documento.

2.1. La web opaca (the opaque web)

La web opaca se compone de archivos que perfectamente podrían estar incluidos

en los índices de los motores de búsqueda, pero no lo están por algunas de las

siguientes razones:

1. Extensión de la indización. los buscadores tienden a seleccionar las páginas a

indizar, es decir, no suele indizar todas las páginas de un website. Esto se

realiza debido a que los recursos de los motores de búsqueda no son

ilimitados y deben “economizar”.

2. Frecuencia de indización. La frecuencia de rastreo es variable. P.e. los sitios

web de noticias deberían rastrearse con más frecuencia que una web que

“cuelgue” videos semanalmente.

3. Número máximo de resultados visibles. Los buscadores limitan a un número

n los resultados mostrados, estando n comprendida entre 200 y 1000.

4. URLs desconectadas. Los buscadores actuales indexan páginas web

siguiendo caminos dentro del WWW. Si una página no es enlazada desde

ninguna otra, difícilmente podrá ser indexada. Estas URLs desconectadas se

corresponden con las Islas vistas en el apartado 5 del capítulo 3.

Como podemos observar, esta parte de la web invisible podría ser perfectamente

web visible, únicamente existe como consecuencia de las limitaciones4 de los

mecanismos de búsqueda actuales. (Lara Navarra P. et al, 2004) expone que “La

recuperación de la información en la Internet invisible [en nuestro caso lo

centraremos al término web opaca] se apoya fundamentalmente en la

disponibilidad de directorios e índices que identifiquen y organicen sus principales

recursos”. Esto viene a expresar que únicamente se pueden recuperar dichos

elementos si se establecen en un índice. En dicha referencia también se presentan

4 Limitaciones del mecanismo de búsqueda derivadas del tamaño de la Web.

Page 68: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[57]

diversos enlaces web para recuperar información, así como, el uso de

herramientas basadas en Clientes Z39.50 y Agentes Inteligentes

P.M. Moreno expone que la frecuencia de indización parece haber aumentado

considerablemente en los últimos años y que el número máximo de resultados no

es un problema cuando se presentan por relevancia. La relevancia establece que

los primeros resultados son los que más se ajustan a la búsqueda, el cálculo de esta

relevancia se trata en el capítulo 6.

El problema de las islas (URLs desconectadas) tiene una difícil solución. La única

solución que proponen los expertos sería obligar a los usuarios a registrar toda

página que subiesen a Internet. Esto significaría intentar clasificar los documentos

del WWW al igual que lo hizo Carlos Lineo al clasificar los seres vivos mediante la

nomenclatura binomial. Ello suscita grandes problemas, entre los cuales, los más

importantes son la descentralización característica de la web y su colosal tamaño.

2.2. La web privada (the private web)

La web privada se compone de archivos que podría estar incluidos en los índices

de los buscadores pero son excluidas deliberadamente por algunas de estas

razones:

1. El archivo está protegido por contraseña.

2. El fichero robot.txt 5del website indica que no deben ser indizadas.

3. Contienen un campo “noindex” para evitar que el buscador índice el cuerpo.

Esta región de la web invisible pertenece a los usuarios que desean que los

contenidos de sus páginas web sean privados, es decir, pretenden tener la

exclusividad de la divulgación de los mismos. En cuando a términos de pérdida de

valor de la información no presenta problema, ya que los autores de dichas páginas

no desean publicarlos. En este caso la solución también es compleja ya que

5 Fichero que especifica que determinados crawlers no tomen en consideración archivos o directorios específicos en un sitio web.

Page 69: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[58]

difícilmente se podrán encontrar mecanismos legítimos para franquear esa

barrera, tal y como comenta P. M. Moreno Jiménez.

2.3. La web propietaria (the proprietary web)

La web propietaria es el conjunto de páginas en las cuales es necesario registrarse,

ya sea de forma gratuita o pagando, para tener acceso al contenido.

El problema de que suscita este conjunto es su gran crecimiento, lo cual hace que el

crecimiento de la web pública se estanque. Por tanto, el porcentaje de web

indizable se reduce.

2.4. La web realmente invisible (the truly invisible web)

La web realmente invisible contiene archivos que no pueden ser indizados debido

a las limitaciones6 técnicas de los buscadores. Estas limitaciones no deben

confundirse con las limitaciones tratadas en la web opaca. En este apartado las

limitaciones de los mecanismos de búsqueda se refieren a limitaciones en el

tratamiento de tipos de contenido, mientras que en el apartado de web opaca se

refieren a limitaciones derivadas del gran tamaño de la Web. Ejemplos de

limitaciones de los mecanismos de búsqueda pueden ser:

• La indexación de formatos de archivos incompatibles.

• La indexación de páginas generadas dinámicamente que se generan por

datos introducidos por el usuario. Este conjunto de páginas pertenece a la

Web Dinámica.

• Información almacenada en bases de datos relacionales.

Hoy en día, los buscadores tradicionales presentan la posibilidad de realizar

búsquedas por formatos comunes como por ejemplo Adobe Acrobat PDF (pdf) o

diversos formatos de Microsoft Office 2003 (doc, ppt y xls), entre otros. Aunque

todavía existen muchos formatos incompatibles, los buscadores han dado el paso

6 Limitaciones del mecanismo de búsqueda relacionadas con el tratamiento de información.

Page 70: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[59]

hacia la indexación por formatos, lo que prevé que en un futuro próximo el

conjunto de formatos incompatibles se vaya reduciendo.

Es cierto que el contenido de las Bases de Datos Relaciones es invisible para los

mecanismos de búsqueda habituales, ya que para acceder a la información interna

es necesario realizar búsquedas directamente en cada una de ellas. Sin embargo,

P.M. Moreno Jiménez asegura que llegar hasta la “puerta” de esas bases de datos es

relativamente sencillo. Lo cual nos debería suscitar las siguientes preguntas:

¿Cómo podemos saber si una base de datos puede contener la información buscada

al situarnos en su “puerta”? ¿Todas las bases de datos alojadas en la Web contienen

descripciones indexables por los mecanismos de búsqueda, las cuales detallan su

contenido? Las interpretaciones realizadas por P.M. Moreno Jiménez tienen poco

fundamento debido a que son demasiado optimistas. La Web es un conjunto de

información muy heterogénea y no puede presuponerse que el camino a la

información sea sencillo.

3. El problema subyacente

P.M. Moreno Jiménez nos proporciona la máxima “En la actualidad resultan más

eficaces los métodos bibliotecarios tradicionales en la búsqueda de información

que la Inteligencia Artificial” u la argumenta exponiendo que hoy en día, con los

métodos de búsqueda existentes es impensable realizar la búsqueda: Quiero

fotografías de personas que se parezcan a Woody Allen. Para realizar esta búsqueda

es necesaria una persona que clasifique los archivos de imágenes en fotografías y

no fotografías, en archivos que contienen personas o no y finalmente si éstas se

parecen a Woody Allen o no.

Las maquinarias de búsqueda son realmente eficaces a la hora de recuperar

información textual, lo cual no excluye la necesidad de la catalogación y

clasificación de los recursos. Las imágenes contenidas en una web, sin información

textual acerca de su contenido, únicamente podrán ser recuperadas

automáticamente a través de su extensión.

Page 71: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[60]

Una de las soluciones que se tratan en la actualidad para este problema es el uso de

ontologías en la descripción de imágenes. (Gruber, 1993) define Ontología7 como

“Una representación explícita y formal de una conceptualización compartida”. Lo

que tratan estas soluciones es de dotar a las imágenes de la web de una

descripción formal entendible por los sistemas automáticos para facilitar la

recuperación de información. Si se demuestra que este mecanismo solventa el

problema, en un futuro cercano se podrán cubrir otros formatos conflictivos.

4. Lo realmente invisible

A modo de conclusión, en la actualidad, sigue siendo realmente invisible los

siguientes contenidos:

1. Las URLs desconectadas.

2. Las páginas que contienen únicamente imágenes, audio y video.

3. El contenido de las bases de datos relaciones.

4. El contenido generado en tiempo real.

5. El contenido generado dinámicamente.

Dogmatizando el comportamiento de los usuarios podríamos suponer que, a

excepción de las páginas que contienen exclusivamente contenido multimedia y las

bases de datos relaciones, los demás contenidos pertenecen a ciertos usuarios con

características específicas:

• Las URLs desconectadas suelen contener información que únicamente

incumbe a los usuarios que conocen su existencia.

• El contenido generado en tiempo real pierde validez rápidamente, salvo

para usuarios que desean realizar análisis históricos.

• El contenido generando dinámicamente suele ser utilizado únicamente por

el usuario que genera dicha información.

7 Definición de ontología en el contexto de la inteligencia artificial, la definición de Ontología en filosofía se remonta al siglo XVII.

Page 72: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[61]

Puede observarse que el análisis de la Web Invisible deja muchos frentes abiertos a

la Inteligencia Artificial y pocas soluciones factibles.

Page 73: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 74: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[63]

CONCLUSIONES DE LA PRIMERA PARTE

En esta parte se han caracterizado los distintos elementos que se utilizan al buscar,

estos son:

• La herramienta de búsqueda

• El entorno, en nuestro caso la web

Tras el estudio realizado, se puede concluir que la búsqueda web realizada en la

actualidad dista mucho de ser buena debido a la complejidad del entorno en el que

se realiza dicha búsqueda. Esto se debe a las características propias de la

información contenida en la web, que tal y como proponía Rubén Fuentes en

(Fuentes et al, 2003) éstas eran:

• Está distribuida en diversos servidores.

• Es dinámica, cambia constantemente tanto de forma como de contenido.

• No tiene estructura común en todos los documentos. Los documentos

carecen de modelo conceptual que estructure semánticamente el contenido.

• Es heterogénea, es decir, está compuesta por partes de diversa naturaleza,

ya que soporta grandes cambios de formato y lenguaje.

• Es altamente volátil, aparece información nueva y desaparece la

información desactualizada a gran velocidad.

• Es redundante. En numerosas ocasiones se encuentra repetida la

información en distintas páginas.

• La información no es únicamente textual.

Para tratar de estudiar, analizar y lidiar con este conjunto de información, surgió la

minería web, la cual será un tema recurrente en el proyecto, ya que se hace un

importante uso de algunas de sus técnicas.

Las herramientas propuestas, aún siendo bastante buenas en propósitos

específicos, deben mejorar bastante aún en los propósitos generales. P.M. Moreno

Page 75: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[64]

comentaba que todavía son más efectivas las técnicas bibliotecarias que la

Inteligencia Artificial.

Finalizando, comentar que es importante intentar caracterizar este dominio, o

parte del mismo, ya que el uso de la web como medio de consulta crece

constantemente. En (Liu, 2006a) se justifica esta crecida con la siguiente

argumentación: “Mientras los viajes a las bibliotecas disminuyen, las búsquedas en

Internet aumentan”.

En conclusión, la mayoría de las ideas propuestas en esta primera parte justifican

la necesidad de explorar campos de la Inteligencia Artificial con fin de intentar

mejorar la búsqueda web.

Page 76: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[65]

SEGUNDA PARTE: MOTORES DE BÚSQUEDA

En esta parte reduciremos el dominio estudiado en la primera parte a los Motores

de Búsqueda. Se estudiarán las partes que componen los Motores de Búsqueda con

el propósito de encontrar módulos en los cuales podamos aplicar el Data Mining

para mejorar su eficiencia.

En el Capítulo 5 - Google: Cómo funciona un Buscador se presentará la

arquitectura de este tipo de herramientas basándonos en la arquitectura del

mundialmente conocido motor de búsqueda Google.

El Capítulo 6 - Web Structure Mining. Análisis de enlaces trata sobre los

algoritmos utilizados por dichos motores de búsqueda utilizados para ordenar por

relevancia los resultados.

En el Capítulo 7 - El lenguaje interrogación se presenta el lenguaje utilizado por

los motores de búsqueda para extraer las necesidades de información a los

usuarios.

Los dos últimos temas de este apartado ( 8 - Diseño de Agentes Inteligentes de

Búsqueda y 9 - Diseño de un Motor de Recuperación de Información) tratan

sobre cómo implementar un buscador. El primero de ellos se centra sobre el

webcrawler, mientras que el segundo en lo que resta de un Buscador.

Page 77: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 78: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[67]

CAPÍTULO 5. GOOGLE: CÓMO FUNCIONA UN BUSCADOR

Abstract. Debido al secretismos de las grandes compañías, no existe mucha información

fidedigna sobre la arquitectura de los grandes buscadores disponibles en la red. Esto hace

que la tarea principal de este capítulo, la cual es explicar el funcionamiento de los

buscadores, sea bastante compleja. Para solventar este problema, en vez de explicar o

proponer un modelo genérico de buscador, presentaremos los principales procesos y

arquitectura del buscador Google, tal y como aparece en (Brin et al, 1998). Este artículo es la

especificación realizada por sus creadores antes que el buscador se hiciese tan conocido y tan

usado.

Keywords. Large-Scale Hypertextual Search Engine, Google, Google Architecture.

1. Introducción

En el mundo informático es común que la idea subyacente de una aplicación sea

sencilla, en cambio, su implementación pueda ser una ardua tarea. Esta máxima se

da de forma muy clara en los buscadores. Según (Lara Navarra et al, 2004) un

motor de búsqueda está formado por cuatro elementos básicos:

1. Un agente inteligente, denominado robot o webcrawler, que recorre el

World Wide Web buscando información. (En el capítulo 8 se exponen las

bases de la implementación de este tipo de dispositivos)

2. Un sistema automático de análisis de contenidos e indexación de los

documentos localizados por el robot.

3. Un sistema de interrogación, generalmente basado en lógica booleana, que

permite al usuario expresar su necesidad de información. (En el capítulo 7

se definirá este lenguaje)

4. Un programa que lista los resultados que satisfacen dicha necesidad

ordenados por relevancia (En el capítulo número 6 se presenta los

algoritmos utilizados para calcular dicha relevancia) y que actúa como

pasarela a los documentos originales.

Page 79: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[68]

El funcionamiento del motor es el siguiente: éste recibe una consulta por parte del

usuario (query), formada por uno o más términos, realiza una consulta interna en

la base de datos que contiene los recursos web indexados y ofrece una lista de

aquellos recursos que cumplen los requisitos de la consulta.

Debido al secretismo de las grandes compañías, no existe mucha información

detallada sobre la implementación de los grandes buscadores que explique la

arquitectura de los buscadores. En los apartados posteriores vamos a realizar una

descripción general de la arquitectura y los procesos del motor de búsqueda

Google tal y como lo describen sus creadores en el artículo (Brin et al, 1998).

2. Google

El motor de búsqueda de Google es el

producto principal de la compañía Google

Inc. fundada en 1998 por Larry Page y

Sergey Brin, ambos doctorados por la

universidad de Stanford, USA.

El nombre del buscador es Google ya que es la forma común de escribir –

erróneamente – el termino googol. Googol que es el nombre que se le da a la

cantidad de 10100, es decir, un uno seguido de cien ceros. A ambos fundadores les

pareció correcto usar dicho término dado que el objetivo era construir un motor

de búsqueda de gran escala. Cosa que consiguieron.

El buscador se convirtió en poco tiempo en un gran éxito gracias a su interfaz tan

minimalista, la calidad de los resultados propuestos y la sencillez de uso. Es más,

este éxito no se ha conseguido empleando costosas campañas publicitarias, si no

por el fenómeno que comúnmente se conoce como “correr la voz” y la inclusión de

Google como página de inicio de navegadores como p.e. Mozilla Firefox.

Hoy en día, Google Inc. es la empresa más valiosa del mundo, por encima de

grandes gigantes como Microsoft o Coca-Cola.

Figura 12. Logotipo de Google

Page 80: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[69]

Aunque hoy en día, al denotar Google, se sigue refiriendo al buscador, Google es un

portal web con un amplio conjunto de aplicaciones entre las que destacan el propio

buscador, Google Imágenes – un buscador de imágenes –. Google Directorio – un

índice temático parecido al de Yahoo! –, Google Maps – visualizador del mundo a

través de imágenes vía satélite – o Google Calendar – una agenda parecida a MS

Outlook –. En la Figura posterior podemos observar algunos dichos servicios.

Figura 13. Captura de algunos servicios que ofrece el portal de Google además del buscador.

En los próximos apartados, se utilizará el término Google únicamente para denotar

el buscador. Otra cuestión importante a tener en cuenta es que, debido a que la

única descripción “detallada” del funcionamiento de dicho buscador data de 1998,

es posible que hoy en día no se corresponda con la realidad. Esto se debe a que

desde su inauguración, la compañía ha empleado una política de privacidad en lo

que corresponde al diseño e implementación de sus productos y aunque dichos

cambios son aparentes al usar las herramientas se desconoce la naturaleza de los

mismos.

Page 81: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[70]

3. Los módulos que resuelven los procesos de Google

La forma más común de clasificar los procesos de un buscador es la que aparece en

(Blachman et al, 2007): Recuperación de las páginas web, Indización de las mismas

y Procesamiento de las consultas del usuario. A los módulos que realizan estas

tareas se les suele denominar Google’s web crawler – Googlebot –, Google’s

Indexer – Indizador – y Google’s Query Processor – Procesador de consultas –,

respectivamente. Al comparar estos elementos con los propuestos por Lara

Navarra anteriormente corresponden de la siguiente manera: el primero y el

segundo de Blachman con el primero y segundo de Lara Navarra, respectivamente,

y el tercero de Blachman con el tercero y cuarto de Lara Navarra.

3.1. Googlebot, recuperando páginas web

Googlebot es un conjunto de un número elevado de computadores que actúan

como un crawler, el cual es utilizado Google para encontrar y recuperar páginas en

la web. Posteriormente, estas páginas son entregadas al Indexer. Funcionan

prácticamente igual que los navegadores web; realizan una petición de página web

a un servidor, descargan dicha página y se la entregan al Indexer. La diferencia es

que el tiempo empleado en esta tarea es bastante inferior al empleado en los

navegadores web comunes.

Googlebot puede encontrar páginas de dos formas. O bien, recorriendo la web, o

bien, mediante un formulario disponible en el sitio web de Google.

Debido a que el contenido de la web es dinámico, para mantener el índice de

Google actualizado, Googlebot recorre las páginas web con una frecuencia

proporcional a la frecuencia de actualización de las mismas.

3.2. Indexer, indizando páginas web

Googlebot proporciona al Indexer el texto completo de las páginas encontradas.

Estas páginas son guardadas en la base de datos del buscador. Al realizar dicha

acción, se actualiza el índice de dicha base de datos, el cual es ordenado

Page 82: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[71]

alfabéticamente por los términos de búsqueda. Cada entrada de este índice

contiene una lista de los documentos en los que aparece dicha palabra y su

localización. Este tipo de estructura permite que se acceda rápidamente a los

documentos al realizarse una consulta. En dicho índice se ignoran las palabras

llamadas stop words para mejorar el funcionamiento del buscador. Las stop words

son las palabras que no aportan información sobre un documento como p.e.

preposiciones, adverbios, determinantes, etc.

3.3. Query Processor, procesando las consultas de los usuarios

El procesador de consultas de Google se compone de varios submódulos, entre los

que destacan la interfaz del usuario, la cual evalúa la consulta del usuario y

encuentra los documentos que la satisfacen, y el formateador de resultados, el cual

ordena los resultados por relevancia.

Indexar el texto completo de las páginas web permite a Google encontrar los

documentos que satisfacen una consulta con una simple función de similitud,

además de poder hacer uso de los distintos operadores disponibles en los

lenguajes interrogación

A la hora de ordenar los resultados, Google se basa en un gran número de factores

entre los que destaca el PageRank, algoritmo creado por uno de los fundadores:

Lawrence Page.

En la siguiente figura podemos observar un esquema propiedad de Google Inc. que

muestra como se ejecuta una consulta:

Page 83: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

Figura

Por último, se debe comentar que Google aplica diversas técnicas de Machine

Learning para optimizar sus funciones mediante la detección de relaciones y

asociaciones entre los datos almacenados. Un claro ejemplo del empleo de estas

técnicas es el sistema de corrección ortográfica.

4. Arquitectura de Google

La figura posterior se muestra la arquitectura que posee Google para desarrollar

los procesos comentados en seccio

realizar una visión general de la arquitectura del buscador, tal y como aparece en

el artículo (Brin et al, 1998).

[72]

Figura 14. Procesado de una consulta (Google Inc., 2003)

Por último, se debe comentar que Google aplica diversas técnicas de Machine

Learning para optimizar sus funciones mediante la detección de relaciones y

es entre los datos almacenados. Un claro ejemplo del empleo de estas

técnicas es el sistema de corrección ortográfica.

Arquitectura de Google

La figura posterior se muestra la arquitectura que posee Google para desarrollar

los procesos comentados en secciones anteriores. En este apartado vamos a

realizar una visión general de la arquitectura del buscador, tal y como aparece en

el artículo (Brin et al, 1998).

Por último, se debe comentar que Google aplica diversas técnicas de Machine

Learning para optimizar sus funciones mediante la detección de relaciones y

es entre los datos almacenados. Un claro ejemplo del empleo de estas

La figura posterior se muestra la arquitectura que posee Google para desarrollar

nes anteriores. En este apartado vamos a

realizar una visión general de la arquitectura del buscador, tal y como aparece en

Page 84: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[73]

Figura 15. Definición de Alto Nivel de la Arquitectura de Google. (Brin et al, 1998)

En primer lugar, comentaremos a modo de anécdota que la mayor parte de Google

está implementado en C/C++ por razones de eficiencia.

En Google, el proceso de recuperación de páginas web de la red se realiza por

varios crawlers distribuidos – anteriormente denominados por el término

Googlebot –. El módulo URL Server envía listas de URLs a los crawlers para que

éstos las descarguen, es decir, este módulo centraliza el control de las páginas a

explorar.

Una vez descargadas las páginas, éstas son enviadas al Store Server. El Store

Server comprime y guarda las páginas en el repositorio (Repository). Toda página

tratada tiene asociado un identificador denominado docID el cual es asignado cada

vez que se analiza un hiperenlace en una página. Dicho hiperenlace apunta a una

URL no trata anteriormente. La función de indexación es llevada a cabo por el

proceso Indexer y Sorter.

Page 85: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[74]

El Indexer lleva a cabo varias funciones: Leer el repositorio, descomprimir los

documentos contenidos e interpretarlos. Posteriormente, cada documento se

convierte en un conjunto de ocurrencias de palabras llamadas hits o aciertos.

Cada acierto registra una palabra contenida en el documento, su posición en dicho

documento y una aproximación del tamaño de la fuente y si ésta está o no en

mayúsculas.

Tras ello, el Indexer distribuye estos aciertos en una serie de barrels creando un

índice parcialmente ordenado. Además, el Indexer interpreta todos los enlaces en

cada página y guarda información importante sobre los mismos en un archivo

llamado anchors, el cual contiene información sobre origen y el destino del enlace,

y el texto asociado al enlace.

El URL Resolver se encarga de convertir URLs relativas en URLs absolutas, p.e. si

desde la web http://usuarios.lycos.es/joh/PFC/ se hace referencia a

links/linkbarA.jpg, la dirección absoluta que calcularía el Resolver sería

http://usuarios.lycos.es/joh/PFC/links/linkbarA.jpg.

Posteriormente, el Resolver transforma las URLs absolutas en docIDs, entregando

el texto del enlace al índice y asociándolos con el docID apuntado por el enlace. El

Resolver genera, además, una base de datos que contiene tuplas de pares de

docIDs de la forma “desde-hasta” que representan cada enlace. Esta base de datos es

importante para el posterior cómputo del PageRank.

El Sorter toma los barrels, los cuales están ordenados por docID, reordenándolos

por wordID (identificador que se le da a las palabras) para generar un índice

invertido.

Un programa denominado DumpLexicon toma la lista de wordIDs junto con el

vocabulario producido por el índice invertido y genera un nuevo vocabulario para

ser usado por el Searcher.

Page 86: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[75]

Al utilizar el concepto vocabulario nos referimos al conjunto de términos

contenidos en algún documento indexado, es decir, para las consultas que son

realizadas y contienen al menos un término del vocabulario existe siempre uno o

más resultados.

El Searcher es invocado por el servidor web, usa el vocabulario construido por

DumpLexicon junto con el índice invertido y el algoritmo PageRank para resolver

las búsquedas.

A grandes rasgos, está es la arquitectura necesaria para hacer funcionar un

buscador de gran escala, en el documento (Brin et al, 1998) también se presentan

las estructuras de datos principales utilizadas, una explicación más detallada del

papel que desempeñan los distintas partes de la arquitectura en los tres procesos

principales, y el test realizado al motor de búsqueda. Estos datos no han sido

introducidos en este documento, ya que, a juicio del autor, esta información es más

que suficiente para los objetivos propuestos. En cualquier caso, si el lector desea

profundizar en el tema puede hacer uso de las referencias propuestas.

Page 87: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 88: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[77]

CAPÍTULO 6. WEB STRUCTURE MINING: ANÁLISIS DE ENLACES

Abstract. Los buscadores utilizados en los años 90 (y anteriormente) basaban la relevancia

de sus resultados en diversos análisis de similitud entre los términos de la búsqueda y los

documentos indizados. A mediados de dicha década los expertos se dieron cuenta de los

problemas que ello acarreaba y decidieron basar la relevancia en el análisis de los enlaces

presentes en los documentos. En esta unidad se presentan y analizan las dos técnicas de

análisis de enlaces más conocidas: PageRank y HITS. A modo de finalización, se presentará la

formula que se cree que utiliza el buscador Google para listar los resultados de las

búsquedas.

Keywords. Link Analysis, Content similarity, PageRank, HITS, Google’s Formula.

1. Introducción

Los motores de búsqueda primitivos – implementados antes de 1998 – solían

utilizar análisis de similitud entre los términos de búsqueda propuestos por el

usuario y las páginas web indexadas. (Liu, 2006b)

En 1996, se dieron cuenta de que únicamente el análisis de similitud en el

contenido no era suficiente por las siguientes razones:

1. El número de páginas web creció rápidamente durante la segunda mitad de

los años 90 y dada una búsqueda y utilizando dicho método, el número de

páginas relevantes podía ser enorme.

2. Los métodos de análisis de similitud podían ser fácilmente manipulados

(spamming). El dueño de una página podía repetir palabras importantes o

introducir palabras relacionadas para aparecer en las primeras posiciones

de los buscadores.

Por ello, los investigadores comenzaron a trabajar en la búsqueda de una solución

al problema. Finalmente recurrieron a los hiperenlaces. A pesar de que los

documentos tradicionales se consideraban independientes unos de otros – la única

relación era la citación en las referencias –, las páginas web están conectadas por

Page 89: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[78]

hiperenlaces, lo que proporciona gran información sobre la relevancia de las

mismas. Los hiperenlaces son utilizados para organizar grandes cantidades de

información en un sitio web o para unir páginas con contenido relacionado.

En 1998, se diseñaron los dos algoritmos basados en hiperenlaces que más han

influido en la web: PageRank – usado por Google – y HITS.

En los apartados 3 y 4 únicamente nos centraremos en las principales

características de ambos algoritmos, en (Liu, 2006b) se realiza un estudio

matemático muy detallado de ambos algoritmos.

Hoy en día, los buscadores consideran multitud de factores al producir los

resultados presentados al usuario además de los métodos de evaluación de

páginas basados en hiperenlaces. En el apartado 4 veremos cómo ha evolucionado

la fórmula de Google desde el PageRank hasta la fórmula que se supone que utiliza

hoy en día dicho buscador.

Generalmente, los algoritmos utilizados para listar los resultados en los motores

de búsqueda más importantes son secretos como por ejemplo Yahoo! o MSN. Del

algoritmo utilizado por Google, en cambio, sólo se conoce lo relacionado con el

cálculo del PageRank, la fórmula de Google que veremos a posteriori es

únicamente una suposición bastante aceptada por la sociedad cibernética en los

foros de Internet.

2. Conceptos matemáticos sobre el análisis de enlaces

En los posteriores apartados vamos a tratar la Web como un grafo dirigido

� � ��, ��, donde � en el conjunto de nodos (el conjunto de páginas) y � el

conjunto de aristas dirigidas en el grafo (los hiperenlaces). Supongamos que el

número total de páginas en la Web es � � |�|. Las siguientes definiciones también serán de utilidad:

Page 90: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[79]

• Enlaces de entrada (Enlace entrante) a la página i: Son los enlaces que

apunta a la página i desde cualquier otra página. Generalmente, no se

consideran los enlaces dentro de un mismo sitio web.

• Enlaces de salida (Enlace saliente) de la página i: Son los enlaces que

apuntan a otras páginas desde la página i. Tampoco se suelen consideran los

enlaces internos.

3. PageRank

PageRank fue propuesto en Abril de 1998 por Sergey Brin and Larry Page y sus

bases están presentes en el artículo (Brin et al, 1998). Pronto se convirtió en el

modelo de análisis de hiperenlaces dominante por las siguientes razones:

• Evalúa las páginas web independientemente de las consultas realizadas por

los usuarios.

• El algoritmo es muy hábil combatiendo las manipulaciones.

• El éxito del motor de búsqueda que implementa dicho algoritmo: Google.

El comportamiento del algoritmo PageRank se puede simplificar de la siguiente

manera: Cada hiperenlace de una página x a una página y se toma como un “voto”

de la página x a la página y. Sin embargo, no todos los votos valen lo mismo, los

votos de páginas “importantes”, es decir, aquellas páginas que han sido votadas

por muchas otras páginas, tienen más peso que los votos de las páginas menos

importantes.

3.1. Algoritmo PageRank

PageRank es un algoritmo estático, es decir, computa la relevancia de cada página

offline y dicha relevancia no depende de las consultas realizadas por el usuario.

La relevancia de una página web se calcula de la siguiente manera:

Page 91: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

1. Un hiperenlace de una página a otra página da prest

ello, a mayor número de enlaces entrantes, mayor prestigio tendrá la

página.

2. Cada página que apunta a la página

página con mucho prestigio da más prestigio a

Por tanto, la relevancia de la página

suma de todas las relevancias de las páginas que apuntan a

Matemáticamente, el PageRank score de

Siendo Oj el numero de enlaces salientes de la página

observar un ejemplo de cómo se emplea esta fórmula en el cómputo del PageRank.

Un ejemplo, en formato audiovisual, más completo sobre el funcionamiento del

algoritmo PageRank, que incluye además los métodos matemáticos usados, está

[80]

Un hiperenlace de una página a otra página da prestigio a ésta última. Por

ello, a mayor número de enlaces entrantes, mayor prestigio tendrá la

Cada página que apunta a la página i, también tiene su propio prestigio. Una

página con mucho prestigio da más prestigio a i, que una con poco prestigio.

or tanto, la relevancia de la página i (i’s PageRank score) es determinada por la

suma de todas las relevancias de las páginas que apuntan a i.

Matemáticamente, el PageRank score de i (escrito como P(i) ) se define como:

el numero de enlaces salientes de la página j. En la figura 1

observar un ejemplo de cómo se emplea esta fórmula en el cómputo del PageRank.

Figura 16. Ejemplo del cálculo del PageRank.

Un ejemplo, en formato audiovisual, más completo sobre el funcionamiento del

algoritmo PageRank, que incluye además los métodos matemáticos usados, está

igio a ésta última. Por

ello, a mayor número de enlaces entrantes, mayor prestigio tendrá la

, también tiene su propio prestigio. Una

, que una con poco prestigio.

’s PageRank score) es determinada por la

) se define como:

. En la figura 16 podemos

observar un ejemplo de cómo se emplea esta fórmula en el cómputo del PageRank.

Un ejemplo, en formato audiovisual, más completo sobre el funcionamiento del

algoritmo PageRank, que incluye además los métodos matemáticos usados, está

Page 92: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[81]

disponible en la conocida página Youtube. El video es accesible desde la siguiente

URL: http://es.youtube.com/watch?v=FNjQ-itLuBY

3.2. Ventajas y desventajas de PageRank

Las dos ventajas más importantes de usar PageRank como algoritmo para listar

webs por relevancia son la habilidad del mismo de combatir la manipulación y que

la medida (PageRank score) proporcionada es global e independiente de las

consultas del usuario.

PageRank combate la manipulación ya que una página es importante si y solo si las

páginas que la apuntan son también importantes. Al ser PageRank independiente

de las consultas, el cómputo de la relevancia de las páginas se puede realizar

offline, lo que proporciona a los buscadores que lo implementan bastante

eficiencia a la hora de realizar las consultas. Estas ventajas son las que han

propiciado a Google un gran éxito.

La mayor ventaja del algoritmo es también su mayor desventaja. La independencia

de las consultas de los usuarios a la hora de computar el PageRank hace que este

algoritmo no pueda diferenciar entre las páginas que son relevantes en general y

las que son relevantes en las consultas realizadas por los usuarios.

Otra desventaja es que el algoritmo no toma en consideración el tiempo. Las

páginas antiguas se computan de la misma forma que las más recientes, y dado que

la web es bastante dinámica, (cambia en el transcurso del tiempo) este es un

problema bastante serio. En (Yu et al, 2004) se propone un algoritmo denominado

TimedPageRank que soluciona este problema.

4. HITS

En Enero de 1998, HITS (acrónimo de Hipertext Induced Topic Search) fue

propuesto por Jon Kleinberg en (Kleinberg, 1998). Este algoritmo, a diferencia de

PageRank, es dependiente de las consultas del usuario.

Page 93: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[82]

HITS se comporta de la siguiente manera: primero, expande el conjunto de páginas

relevantes devueltas por un buscador para, a posteriori, listar los resultados de

acuerdo a dos medidas: lista de autoridades y lista de centros.

Figura 17. Esquemas de una autoridad (authority) y un centro (hub). (Liu, 2006b)

Una autoridad (authority) es una página con muchos enlaces entrantes. La idea es

que una página tiene autoridad si mucha gente confía en ella y la enlaza con sus

páginas webs.

Un centro (hub) es una página que contiene muchos enlaces salientes. Una página

centro sirve como organizador de muchas páginas con autoridad.

La idea clave de HITS es que un buen centro apunta a muchas buenas autoridades,

y que una buena autoridad es apuntada por muchos buenos centros. Esto significa

que autoridades y centros deben tener una relación de refuerzo mutuo (mutual

reinforcement relationship).

4.1. Algoritmo HITS

HITS funciona de la siguiente manera:

1. Se envía una consulta q a un buscador. El buscador le devuelve t resultados

más relevantes. Este conjunto de resultados lo denominamos W o conjunto

raíz (root set).

2. Posteriormente, se crea el conjunto S, que es el resultado de engordar el

conjunto W con todas las páginas que apuntan a o son apuntadas por cada

página contenida en W. Como restricción tenemos que cada página de W

Page 94: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[83]

puede introducir k páginas en S. El conjunto S se llama conjunto base (base

set).

Figura 18. Ejemplo de un conjunto base S. El conjunto S contiene al Conjunto W (Root Set) y a las páginas

añadidas en la expansión.

3. Después, HITS trabaja con las páginas de S, dándoles a cada página en S una

puntuación de autoridad y otra de centro. Sea la puntuación de autoridad de

una página i ����, y su puntuación de centro ���. La relación de refuerzo

mutuo se expresa como:

���� � � �����.����

��� � � ������,����

4. Finalmente, HITS selecciona las páginas con mayor puntuación en autoridad

y centro, y las devuelve al usuario.

Page 95: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[84]

Figura 19. La finalidad de HITS es encontrar un conjunto de páginas relacionadas con el tema de

búsqueda que tengan alta puntuación como autoridad y centro. (Liu, 2006b)

4.2. Ventajas y desventajas de HITS

La ventaja más importante de HITS es la habilidad de listar los resultados de

acuerdo a la consulta realizada, lo cual debería proporcionar páginas más

importantes.

Sin embargo, HITS tiene grandes desventajas, como:

• HITS no posee la capacidad de combatir la manipulación que posee

PageRank. Es relativamente fácil engañar a HITS añadiendo enlaces en

nuestra página a páginas que son buenas autoridades.

• HITS puede polucionar el tema de la consulta. Al expandir el conjunto

proporcionado por el buscador, se pueden añadir fácilmente páginas que no

tienen nada que ver el tema de consulta. A este problema se le denomina

topic drift.

• El tiempo empleado en la consulta es bastante superior al empleado con

otros algoritmos como p.e. PageRank.

5. Fórmula de Google

Los motores de búsqueda más exitosos trabajan con la máxima “El algoritmo

utilizado para listar los resultados debe ser secreto”. Este modo de trabajo tiene

dos razones:

Page 96: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[85]

• Establecer barreras de entrada para continuar liderando el mercado.

• Impedir que los usuarios polucionen los resultados intentando que sus

páginas aparezcan en los primeros resultados propuestos.

Dado que los usuarios tienen bastante interés en “polucionar” los buscadores para

que sus páginas aparezcan referenciadas en los primeros resultados de consultas

realizadas sobre ciertos tópicos, existen números estudios en los foros de Internet

tratando de averiguar las fórmulas de los algoritmos secretos de los buscadores.

Dichos estudios no tienen la fiabilidad de los estudios publicados por los grandes

expertos en la materia, pero aún así deben de ser tomados en consideración ya que

algunos de ellos tienen realmente gran calidad.

En el foro (SEOmoz Co Staff, 2006) se expone el algoritmo que supuestamente

utiliza Google a la hora de listar los resultados. Dicho algoritmo está bastante

aceptado en el mundo cibernético. El problema de esta suposición es que debido a

la política de secretismo de Google Inc., el cual ni reconoce ni desestima este

algoritmo, no se sabe si realmente es el utilizado o no.

Page 97: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[86]

El supuesto algoritmo (con aspecto de fórmula) es el siguiente:

����������� � ���� �� � � ! � "� � �� #� �$ ��� ��$%�$&��� ' (. )� * �+���# $�& ��� ��,&$&� ' (. -.� * �/ �&� � �� ��� �$� ��� �$%� $%�� '(. -.� * �/�,!��% ,&�$%� �� ��� 0�0 �&�� ' (. 1� * �/ �&� � ��� ��$%�$&�� ' (. 1� * �20$%0 �&ó$ 4 $0 �� 5 �2�$ �&� ����;

30% Los factores que determinan la importancia del Uso de las palabras clave en los

contenidos son la posición de las mismas en la página; más concretamente si

éstas se encuentran en el título, en la parte Head del HTML, en el texto, en los

links internos apuntando a la página, en el domino o en la URL.

25% En el cálculo de la Relevancia del dominio se computan factores como la

historia de registro de dominio, el tiempo de vida del mismo, la fuerza de los

enlaces que lo apuntan, el vecindario del domino (enlaces entrantes y

salientes), el patrón de uso a lo largo de su vida y tipo del mismo (.es, .com,

.gov. etc.).

25% Para computar la Calidad de los enlaces entrantes se tiene en cuenta el tiempo

de existencia de los mismos, la calidad tanto de los dominios como de las

páginas que lo apuntan, el texto de los enlaces, el PageRank de los enlaces y el

tema de los sitios que apuntan.

10% El Comportamiento de los usuarios se basa en el historial del número de clics

(CTR o click through ratio) del documento cuando es presentado como

resultado de búsqueda, el tiempo empleado por los usuarios en esa página, las

búsquedas realizadas sobre ese dominio, etc.

10% La Calidad del contenido se caracteriza por la clasificación manual de analistas

que trabajan para Google, el sentido del contenido (Procesamiento del

Lenguaje Natural), los metadatos y el tipo de página (si el contenido de la

misma puede ser optimizado por los usuarios que la visitan, p.e. Wikipedia)

Page 98: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[87]

Las Puntuaciones Manuales corresponden a decisiones comerciales de Google y

Penalidades toman en consideración conceptos como el Sandbox, diversas

optiminizaciones, técnicas de BlackHat y penalizaciones manuales.

Page 99: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 100: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[89]

CAPÍTULO 7. EL LENGUAJE INTERROGACIÓN (QUERY LANGUAGE)

Abstract. En este capítulo se presenta a modo introductorio el lenguaje interrogación (query

language) que utilizan los buscadores para extraer las necesidades al usuario, y realizar las

búsquedas en base a éstas. En este documento también se presentan sus operadores

principales.

Keywords. Query Language, Declarative Language, CQL.

1. El lenguaje interrogación

Según la enciclopedia Wikipedia, los lenguajes interrogación (query language)

son lenguajes declarativos8 – opuesto a lenguajes imperativos 9– utilizados para

realizar consultas en bases de datos o sistemas de información.

(Lara Navarra et al, 2004) define Lenguaje interrogación como un conjunto de

opciones – órdenes, operadores y estructuras – que, organizados según normas

lógicas, permiten la consulta (query) de los recursos de información mediante una

expresión denominada ecuación de la consulta.

• Las órdenes son aquellas palabras o abreviaturas que indican al sistema las

acciones a ejecutar.

• Los operadores son los encargados de expresar las relaciones que

mantienen entre sí los términos que pueden definir las necesidades

informativas del usuario.

En el pasado, estas consultas se realizaban mediante la formulación textual de

expresiones, en cambio, hoy en día, se realizan mediante el uso de algún tipo de

interfaz gráfica.

El lenguaje interrogación utilizado en la recuperación de información es CQL

(Common Query Language) y es utilizado en buscadores, catálogos bibliográficos y

8 Los lenguajes declarativos responden a la pregunta ¿QUÉ? Ejemplo: SQL. 9 Los lenguajes declarativos responden a la pregunta ¿CÓMO? Ejemplo: Java.

Page 101: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[90]

en colecciones de información en museos. La especificación de dicho lenguaje se

encuentra en (SRU, 2007).

Figura 20. Página web para realizar búsquedas avanzadas en Google. Los operadores vienen implícitos en la

interfaz.

2. Tipos de operadores

En (Lara Navarra et al, 2004) se definen de forma introductoria los operadores que

suelen aparecer en los lenguajes de interrogación. Estos operadores se muestran a

continuación:

2.4. Operadores lógicos o booleanos

Los operadores lógicos corresponden a los definidos por George Boole y

ampliamente utilizados en el mundo informático:

• Intersección de conjuntos: AND

• Unión de conjuntos: OR

• Exclusión de conjuntos: NOT

Al igual que en la lógica booleana, se pueden utilizar paréntesis para establecer la

prioridad entre operadores.

Page 102: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[91]

2.5. Operadores posicionales

Los operadores posicionales toman como partida la posición del término en

relación a su contexto (otros términos y/o documento).

Operadores posicionales relativos

Los operadores posicionales relativos permiten definir la distancia que puede

existir entre un término y otro. También se les suele denominar operadores de

adyacencia o proximidad. Los operadores de proximidad son:

• NEAR: operador que obliga a las palabras claves recuperadas a estar a un

número determinado de distancia. La distancia viene implícita en el

programa utilizado.

• NEAR N: funciona como el anterior, pero siendo N la distancia entre las

palabras.

• “”: Emplear comillas expresa que el sistema debe comprobar si aparece el

contenido exacto y en el mismo orden que el que aparece entre comillas.

Operadores posicionales absolutos

Estos operadores permiten buscar los términos en un lugar determinado del

documento. Éstos son los siguientes:

• LINK: recupera los enlaces que contengan los términos de búsqueda.

• TITLE: recupera los títulos que contienen los términos.

• URL: recupera las URLs que contengan los términos.

• BODY: recupera del cuerpo de la página web los términos deseados.

Page 103: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[92]

2.6. Operadores de truncamiento y de límite/comparación

• Operadores de comparación o rango. Limitan la búsqueda mediante una

expresión que establece un rango de valores, generalmente numéricos. Por

ejemplo, “igual que” (EQ, =), “mayor que” (GT, >), etc.

• Operadores de truncamiento o máscaras. Son operadores que ayudan a

buscar las posibilidades semánticas de los términos. Por ejemplo los

caracteres comodín (* o ?).

Page 104: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[93]

CAPÍTULO 8. DISEÑO DE AGENTES INTELIGENTES DE BÚSQUEDA

Abstract. El propósito de este capítulo es exponer una introducción a los agentes

inteligentes, más concretamente, a los agentes de búsqueda en la web y sus características.

Posteriormente, se presentarán las bases propuestas en (Youngblood, 1999) para el diseño de

un agente inteligente de búsqueda sencillo. Este agente será denominado Web Hunter, ya que

es el diseño es bastante simple y dista mucho de otros agentes más avanzados como Robots,

Spiders o Web Crawlers.

Keywords. Design, Intelligent (Search) Agents, Web crawling, Search Engine.

1. Agentes inteligentes

Youngblood comenta que el corazón de todo motor de búsqueda se encuentra en el

agente de búsqueda, cuya principal función es recorrer la web en busca de

información que posteriormente será guardada en la base de datos del sistema.

Por ello, antes de diseñar un agente de búsqueda, nos deberíamos preguntar ¿Qué

es un Agente Inteligente? Aunque existe controversia en el ámbito científico sobre

dicha definición debido su aplicación en múltiples disciplinas, la definición

propuesta por (Wooldridge et al, 1995) es la más aceptada:

“Un agente inteligente es un sistema informático – hardware o software –

caracterizado por ser autónomo, social, reactivo y proactivo.”

De esta definición se deduce lo siguiente:

• Un agente opera sin la intervención directa de los humanos, y tiene cierto

control sobre sus acciones y estado interno.

• Los agentes interactúan con otros agentes (y posiblemente con humanos)

utilizando algún tipo de lenguaje de comunicación entre agentes.

• Los agentes perciben los cambios del entorno y son capaces de responder a

ellos en un tiempo acotado (reactividad).

Page 105: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[94]

• Los agentes no solo actúan en respuesta al entorno, sino que tienen un

comportamiento orientado a metas. Son capaces de tomar la iniciativa

(proactividad).

En el caso de los agentes de búsqueda en la web, el medio en el que trabajan es el

World Wide Web, perciben código HTML (Hypertext Mark-up Language) y utilizan

el protocolo HTTP (Hypertext Transfer Protocol). La labor de estos agentes es

determinar si un sitio web contiene el término buscado. En caso afirmativo, el

contenido de dicha página será remitida al motor de búsqueda. En caso negativo, el

agente debe ser capaz de encontrar otras localizaciones en las cuales poder seguir

buscando. De esto, deducimos, que el objetivo del agente es encontrar sitios web

que contengan los términos buscados.

2. Diseño del Web Hunter

2.1. Aproximación al Web Hunter

Al igual que los Agentes Inteligentes de Búsqueda en la web, para un término dado,

Web Hunter debería buscar y devolver tantas direcciones web como sean

necesarias. El método utilizado es empezar desde una web raíz proporcionada por

el usuario, y encontrar en las páginas web hiperenlazadas aquellas que contengan

el término.

Un ejemplo del método utilizado por Web Hunter sería el siguiente: Imaginemos

que queremos encontrar diversos artículos disponibles en la web Biology of the

Mamary Gland, véase la siguiente figura, los cuales traten sobre las proteínas

relacionadas con el ciclo celular. Para ello proporcionamos a nuestro Web Hunter

los siguientes términos “Cell Cicle Proteins” y el index de la web

“http://mammary.nih.gov/”. Tras un tiempo acotado y recorrer el árbol de páginas

web que podemos observar en el gráfico, el agente nos deberá entregar una lista de

las páginas web donde aparecen los términos.

Page 106: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[95]

Figura 21. Sitemap de la Web “Biology of the Mammary Gland” http://mammary.nih.gov/

De este ejemplo, rápidamente podemos deducir que nuestro agente se basa en

palabras clave, y que necesita muy pocos parámetros para cumplir con su

cometido:

• El término a buscar (p.e. palabra clave o frase).

• La dirección de comienzo.

• El número de resultados deseados.

• Tiempo máximo de búsqueda.

• Los métodos de búsqueda a utilizar. En (Doyle, 1998) se expone una

recopilación de los algoritmos de búsqueda más importantes, queda a juicio

del lector determinar cuál podría ser el óptimo debido a la controversia

existente en el campo de la búsqueda.

Los agentes más avanzados añaden otras técnicas a las anteriores, como por

ejemplo, un lenguaje más o menos complejo del término a buscar, mecanismos de

optimización (p.e. no visitar dos veces la misma página web) o la habilidad de

encontrar otros espacios de búsqueda cuando se ha recorrido el actual sin éxito

(p.e. búsquedas basadas en IP aleatorias).

Page 107: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[96]

2.2. Plan de actuación del Web Hunter

Todo agente inteligente debe de tener un plan de actuación que debe realizar de

forma autónoma. Youngblood divide el plan del Web Hunter en cuatro fases

principales: Inicialización, Percepción, Acción y Efecto.

La fase de Inicialización sirve para inicializar todas las variables y estructuras de

datos que serán utilizadas en las fases posteriores. Además, en esta fase, el usuario

debe proporcionar al Web Hunter toda la información que éste necesita para

alcanzar sus objetivos – los términos de búsqueda, el número de resultados

deseados, el tiempo máximo disponible, la página web de partida y el método de

búsqueda a utilizar.

En la fase de Percepción, el agente recupera diversa información de la página web

actual y usa su conocimiento10 para decidir si la web contiene enlaces. En caso

afirmativo, recupera dichos hiperenlaces.

En la fase de Acción, el agente obtiene toda la información de la página actual que

el sistema para determinar si se ha cumplido el objetivo (los términos se

encuentran en esta página y el agente tiene el número determinado de páginas). En

caso negativo, Web Hunter deberá determinar el siguiente paso a dar. En esta

decisión se encuentra la verdad inteligencia del agente, y el método de búsqueda

seleccionado determina el grado de precisión de dicha inteligencia.

La fase de Efecto sirve para listar todas las direcciones encontradas que satisfacen

los términos de búsqueda y proveer diversos comentarios al usuario.

El plan de acción del Web Hunter comienza en la fase de Inicialización para,

posteriormente, entrar en un bucle formado por las fases Percepción-Acción-

Efecto. El bucle termina o bien cuando se logra el objetivo o bien cuando no es

posible lograrlo (no existen más enlaces o el tiempo establecido se ha terminado).

10 Conocimiento: Se relaciona con el estado del entorno, y con cómo son las características de los objetos que el agente percibe. Es bastante más común en el círculo científico denominar creencias a las percepciones de los agentes.

Page 108: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[97]

La Figura 22 muestra la secuencia básica de acciones que realiza el agente

inteligente de búsqueda Web Hunter.

Figura 22. Flujo de acciones de Web Hunter

Page 109: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[98]

2.3. Modos de testeo

La implementación de un Web Hunter – en (Youngblood, 1999) se puede encontrar

una breve introducción a la implementación y los conocimientos necesarios para

realizarla – no se comportará del mismo modo que un motor de Búsqueda

comercial. Los agentes de búsqueda de estos sistemas son los que hemos

denominado agentes más avanzados en la Sección 2.1.

A pesar de que Web Hunter es una utilidad de bajo-nivel, consiguiendo un buen

rendimiento podemos hacer que sea una herramienta de gran utilidad. Para ello, el

autor recomienda testear la velocidad de las búsquedas, el grado de efectividad de

la búsqueda y la validez de los resultados.

Para testear la velocidad de las búsquedas, se mide el tiempo empleado por el

bucle en ejecuciones realizadas utilizando diferentes técnicas de búsqueda y de

ordenación.

La efectividad de la búsqueda viene determinada por la máxima “Algunas

direcciones iniciales dan mejores resultados que otras”. Para testear esta métrica,

debemos realizar ejecuciones secuenciales probando en cada ejecución una nueva

dirección inicial.

La validez de los resultados es una métrica subjetiva que viene dada por el grado

de satisfacción del usuario ante los resultados propuestos. Esto puede testear la

usabilidad del agente.

3. Aplicación de los agentes inteligentes de Búsqueda

Un Web Hunter implementado puede ser utilizado en numerosas aplicaciones,

pero el uso más importante es como ente de búsqueda por los motores de

búsqueda. Es más, a partir del diseño del agente inteligente de búsqueda, el diseño

de un motor de búsqueda parece algo trivial.

Page 110: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[99]

El motor de búsqueda sería un sistema compuesto por varios agentes de búsqueda,

un generador de palabras de diccionario que proporcione términos los agentes, un

generador secuencial de números IP para establecer la dirección de comienzo de

los mismos y una base de datos donde almacenar los resultados para su posterior

uso. Proporcionando a este sistema una interfaz HTML en un sitio Web bien podría

ser otro Motor de Búsqueda Web. Además, Web Hunter podría ser modificado para

explorar cualquier tipo datos en cualquier tipo de entorno al que pueda acceder un

agente inteligente.

Page 111: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 112: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[101]

CAPÍTULO 9. DISEÑO DE UN MOTOR DE RECUPERACIÓN DE

INFORMACIÓN

Abstract. A continuación se presentará el diseño de un motor de recuperación – diseñado en

la universidad de Salamanca, cuyo nombre es Karpanta – de información tal y como se

presenta en (Figuerola et al, 2000). Este motor no contiene ningún tipo de agente que busque

información, los documentos son introducidos directamente a la base de datos. En esta

pequeña introducción al diseño de un motor de recuperación de información se presenta

únicamente las técnicas utilizadas a la hora de indizar documentos y realizar consultas. Por

último, comentar que el motor se encuentra operativo en la siguiente dirección:

http://milano.usal.es/dtt.htm.

Keywords. Information Retrieval, Search Engine.

1. Objetivos de Karpanta

Los objetivos establecidos para el diseño del motor de recuperación información

son:

a) Disponer de un programa que implementara algunos de los modelos teóricos

más difundidos en recuperación de la información.

b) Disponer de un programa que permitiese examinar fácilmente los resultados

de ciertas operaciones internas, como el cálculo de pesos de los términos.

c) La posibilidad de discriminar campos en los documentos, y de valorarlos de

manera diferente.

d) La posibilidad de modificar fácilmente la mecánica interna de operación del

programa, aplicando diferentes criterios y sistemas de cálculo de pesos y

similitudes, a fin de observar el efecto de dichas modificaciones.

e) La posibilidad de implementar conocimiento lingüístico, adaptando las

posibilidades de recuperación a las características propias de un idioma

determinado.

Page 113: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[102]

2. Arquitectura de Karpanta

El motor de recuperación de documentos Karpanta se divide en dos módulos: uno

de ellos indiza los documentos añadidos y otro se encarga de procesar las

consultas y recuperar los documentos que satisfacen las consultas.

2.1. Módulo de indización

Karpanta se basa en el conocido modelo del espacio vectorial (Salton y McGill,

1983), según el cual, cada documento es representado mediante un vector de n

elementos, siendo n el número de términos indizables que existen en la colección

documental. A esta representación se le suele conocer por el nombre inglés bag-of-

words.

Por tanto por cada documento se crea un vector, y cada elemento del vector es una

palabra susceptible a estar en el documento. Cada elemento contiene un valor

numérico que es 0 si la palabra no está contenida en el documento. En caso

contrario, el elemento contiene el peso de la palabra en el documento, el cual se

calcula utilizando IDF (Inverse Document Frecuency). Un ejemplo de un vector de

palabras para un documento podría ser el siguiente:

[…] IDF index query IR search engine Google Yahoo! […] […] 8.245 12.345 10.456 0 2.345 5.232 0 0 […]

Tabla 23. Ejemplo de vector de palabras de un documento.

Page 114: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[103]

Antes de realizar la indización, es necesario tener en cuenta dos cosas:

1. Debe definirse una lista de palabras vacías – es más frecuente el uso del

término inglés stop words –, esto significa, detectar el conjunto de palabras

de un lenguaje que no caracterizan a los documentos (preposiciones,

artículos, etc.).

2. Las palabras indizables necesitan ser normalizadas. Esto se consigue

introduciendo en el módulo de indización una acción denominada

lematización (stemming). Un ejemplo de esta normalización sería

considerar la misma palabra a todas las conjugaciones del verbo “BUSCAR”,

es decir, si en un texto se encuentran las palabras “busqué”, “busco” y

“buscaré”, todas ellas deberían de ser tratadas como la misma palabra.

2.2. Módulo de consulta

Las consultas también se representan como un vector con las mismas

características que los documentos descritos anteriormente. Esto permite que la

implementación de una función de similitud entre los documentos y las consultas

realizadas sea una tarea prácticamente trivial. En este mecanismo de recuperación

se utiliza la fórmula del coseno (Salton, 1989).

El resultado de una consulta consiste en una lista de documentos ordenada en

orden decreciente en función de la similitud con la consulta.

Page 115: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[104]

3. Procesos de Karpanta

3.1. Proceso de indización

Figura 24. Proceso de indización.

El proceso de indización sigue el siguiente comportamiento:

1. Procesado de documentos (a través de un lenguaje de programación p.e.

VB):

1.1. Obtención de las palabras contenidas en el documento.

1.2. Filtrado de las mismas y eliminación de palabras vacías.

1.3. Normalización de los caracteres. (mayúsculas, minúsculas, tildes)

1.4. Lematización.

1.5. Almacenamiento en una tabla de cada término resultante, junto con

la referencia de los documentos en los que aparece. (utilizando

sentencias SQL)

Page 116: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[105]

2. Cálculo de frecuencias de términos – IDF – y pesos y almacenamientos de

los mismos en una tabla (utilizando sentencias SQL).

3.2. Proceso de consulta

Dados los términos de una consulta, el proceso de la misma requiere las siguientes

operaciones:

1. Procesado del texto de la consulta (obtención de palabras, eliminación de

palabras vacías, normalización de caracteres y Lematización).

Figura 25. Preprocesamiento de una consulta.

2. Calculo de pesos de los términos de la consulta, utilizando los datos de IDF

almacenados en una tabla en la operación de indizado.

3. Calculo de similitud entre la consulta y cada uno de los documentos

(utilizando una sentencia simple SQL).

Page 117: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[106]

Figura 26. Resolución de una consulta.

3.3. Realimentación de consultas

Esta aplicación además ofrece la posibilidad de realimentar las consultas de forma

sencilla.

Los autores lo implementan de la siguiente manera: En la realimentación añaden al

texto original de la consulta el texto de los documentos con los que se desea

realimentar, ya sea a través de una selección por parte del usuario, o ya sea

tomando de forma automática los n primeros resultados. Tras ello, se reejecuta la

consulta con los datos añadidos.

También ofrecen una realimentación más elaborada utilizando el Algoritmo de

Rocchio (Rocchio, 1971). En este caso, el usuario selecciona de los resultados que

sirven como ejemplos positivos y negativos, es decir, documentos recuperados que

deben usarse para realimentar y documentos que deben usarse como malos

ejemplos.

Page 118: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[107]

4. Debilidades de esta implementación

Debido a que Karpanta es un modelo muy simple, aparenta tener grandes

problemas de escalabilidad por dos razones:

1. Debido a su sencillez, lo más probable es que no sea capaz de gestionar

grandes conjuntos de información.

2. Al usar bases de datos relaciones, en concreto MS Access, es capaz de

manejar un número bajo de consultas simultáneas.

Sin embargo, la autentica debilidad de esta solución es que se basa en los

buscadores que existían antes de la inclusión del análisis de enlaces en el cálculo

de relevancia de los resultados, por lo que toma todos los problemas que estos

tenían y que están descritos en apartado 1 del capítulo número 6. Recordando,

estos problemas son:

1. Si el número de documentos es grande, para una búsqueda determinada, el

número de páginas relevantes puede ser enorme, dado que el método del

coseno coincidirá con muchos documentos.

2. El método del coseno es fácilmente manipulable (spamming).

De esto podemos deducir, que este sistema es un buen ejemplo del funcionamiento

de los buscadores, pero que posee numerosas debilidades las cuales deben ser

resueltas para lograr que el sistema sea eficaz.

Page 119: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 120: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[109]

CONCLUSIONES DE LA SEGUNDA PARTE

En esta segunda parte hemos reducido considerablemente nuestro dominio a los

motores de búsqueda o buscadores web. Hemos visto la arquitectura de un

buscador basándonos en la arquitectura de Google propuesta por sus creadores;

Sergey Brin y Larry Page. De esta arquitectura podemos deducir que aunque la

idea subyacente del diseño de un buscador es bastante sencilla, la implementación

de su arquitectura es una tarea compleja, es más, las tareas de optimización de

dicha arquitectura pueden llegar a resultar muy complejas.

En los dos últimos capítulos de esta parte hemos presentado dos artículos en los

que se expone como se puede implementar un buscador. A pesar de ser soluciones

muy simples y de pequeña escala, se puede inducir de ellos diversas algunas de las

decisiones que se tienen que tomar en el diseño de un buscador de tamaño medio-

grande.

Por último, comentar que esta parte puede servir como introducción a la parte

tercera, donde se explica una de las técnicas de Data Mining que puede aplicarse a

los resultados de los buscadores con fin de aumentar su eficacia. En esta parte se

han propuesto dos capítulos, el 6 y el 7, en los cuales se presenta el análisis de

enlaces y el lenguaje interrogación, donde es posible aplicar técnicas de Data

Mining para mejorar el comportamiento de estas herramientas. Es más, en Google

al utilizar el corrector ortográfico de las consultas ya se aplica de cierto modo

técnicas de Data Mining sobre el lenguaje interrogación.

A modo de introducción de la siguiente parte, comentar que en dicha parte se

presenta una de las posibles técnicas de Data Mining, concretamente de Web Usage

Mining, aplicables a los buscadores. Cabe decir que no es la única y que multitud de

diversas técnicas pueden ser estudiadas a partir de este punto.

Page 121: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 122: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[111]

TERCERA PARTE: TÉCNICAS DE DATA MINING

APLICADAS A LA RECUPERACIÓN DE

INFORMACIÓN EN LA WEB

En esta parte se analizará la técnica Personalización Web, la cual es utilizada para

recomendar ítems a los usuarios en el dominio de la Web. Esta técnica también

puede ser utilizada para asistir a los usuarios en la búsqueda de información.

En el capítulo 10 - Personalización Web se presentan a nivel introductorio esta

técnica y los sistemas que la componen.

El capítulo 11 - La Personalización Web como aplicación de Data Mining se

presenta que el ciclo de las aplicaciones de Data Mining es aplicable a la

Personalización Web.

En el último capítulo (12 - Sistemas de recomendación basados en el contenido)

se presentan los sistemas basados en el contenido como sistemas basados en

Personalización Web, los cuales pueden ser utilizados para asistir al usuario en la

búsqueda de información. Además, se presentan algunos ejemplos de sistemas que

implementan esta finalidad.

Page 123: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 124: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[113]

CAPÍTULO 10. PERSONALIZACIÓN WEB

Abstract. En este capítulo se presenta la Personalización Web como la técnica utilizada

habitualmente por los sistemas de recomendación. Posteriormente se exponen los tipos de

sistemas de recomendación existentes: sistemas basados en reglas, sistemas basados en

contenido y sistemas de Collaborative Filtering, así como, el modus operandi seguido por

cada uno de ellos para crear perfiles de usuarios. Finalmente, se justifica el uso de técnicas de

Data Mining, concretamente Web Usage Mining, por parte de este tipo de sistemas aunque

éstos no cumplan todas las desiderata propuestas por Kohavi.

Keywords. Web Personalization, Rule-based filtering systems, Content-based filtering

systems, Collaborative Filtering, Web Usage Mining.

1. Introducción

El objetivo primordial de cualquier sistema que se adapte al usuario es satisfacer

las necesidades del mismo en tiempo real sin preguntar explícitamente por las

mismas. En estos sistemas se utiliza la tecnología denominada Personalización

Automática. Dado que nuestro contexto es la web, denominaremos la tecnología

empleada como Personalización Web, en inglés sería Web Personalization.

Antes de dedicarnos a la caracterización de la Personalización Web, es necesario

distinguir entre dos términos que son confundidos en numerosas ocasiones, y más

en castellano, ya que ambos hacen uso de la misma palabra: Personalización

Automática (Automatic Personalization) y Personalización (Customization). En los

siguientes apartados se utilizará el término Personalización para referirse a

Automatic Web Personalization, sin embargo, en esta introducción utilizaremos los

términos ingleses para no confundir dichos términos.

Ambos conceptos se refieren a la recogida de información de un usuario particular.

Customization se refiere a que los usuarios tienen el control de la especificación de

Page 125: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[114]

su perfil11, mientras que, Automatic Personalization implica que el sistema crea o

modifica automáticamente perfiles del usuario con un control explícito mínimo por

parte del usuario. Un ejemplo de Customization podría ser los formularios que se

rellenan en los motores de búsqueda para realizar búsquedas avanzadas, en

cambio, un ejemplo de Automatic (Web) Personalization sería last.fm, web que

recomienda música según los gustos del usuario.

1.1. Personalización Web: un problema de predicción

La acción de personalización (Automatic Web Personalization) implica que un

sistema debe ser capaz de inferir los deseos un usuario basándose en las acciones

presentes y pasadas de dicho usuario, y posiblemente de otros usuarios. De esto se

deduce que dicha tarea puede verse como un problema de predicción, donde el

sistema debe ser capaz de predecir las necesidades del usuario en un contexto

específico y ordenar los elementos de dicho contexto de acuerdo con sus valores

predictivos.

Figura 27. Aplicación de last.fm

11 El concepto perfil de un usuario se refiere a la especificación formal de las preferencias o requerimientos de dicho usuario en una aplicación concreta.

Page 126: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[115]

Siguiendo con el ejemplo de last.fm, vemos en la figura la interfaz de la aplicación.

Este sistema de recomendación, recomienda canciones de acuerdo a los gustos de

los usuarios. El sistema funciona de la siguiente forma: De un conjunto amplio de

canciones, el sistema elige una y le se la propone al usuario. Mientras el usuario

escucha la canción, éste puede hacer clic en Love (le gusta) o Ban (no le gusta). De

la decisión tomada por el usuario dependerán las canciones que el sistema

proponga en un futuro. Además, el sistema tiende a recomendar canciones

parecidas a usuarios con gustos parecidos. Podemos ver en este ejemplo que

realmente la tarea de personalización es un problema de predicción, ya que el

sistema pretende pronosticar si una canción concreta le puede o no gustar a un

usuario concreto basándose en las canciones anteriormente valoradas por dicho

usuario y en las canciones valoradas por usuarios con gustos parecidos al usuario

concreto.

2. Tipos de Personalización Web

Los sistemas de personalización automática difieren, principalmente, en el tipo de

datos que manejan, el método utilizado para generar perfiles de usuario, y en el

algoritmo utilizado para realizar predicciones. En este apartado veremos los tipos

de sistemas de personalización basándonos en el método utilizado para realizar las

predicciones.

2.1. Sistemas de personalización basados en reglas

Los sistemas de personalización basados en reglas se basan en la creación manual

o automática de reglas de decisión utilizadas para recomendar ítems a los usuarios.

Estas reglas generalmente se basan en conceptos demográficos, psicológicos u

otros que caracterizan a los usuarios y funcionan de la siguiente manera: el

contenido es servido de una forma u otra dependiendo de las reglas que satisface

un determinado perfil de usuario.

Este tipo de personalización está directamente relacionado con diseño de los sitios

web y las reglas están determinadas por las características del dominio específico

Page 127: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[116]

de dicha web. Los perfiles se crean con la información obtenida de las

interacciones explícitas del usuario, generalmente a partir de formularios

rellenados por el usuario.

Los problemas que genera esta metodología son los siguientes:

• Problemas de cuello de botella (bottleneck problema) derivados del uso de

las técnicas de filtrado basadas en reglas.

• El sistema está determinado por los prejuicios de los usuarios, ya que

generalmente los perfiles son unas descripciones subjetivas realizadas por

ellos mismos.

• Los perfiles suele ser estáticos. Esto provoca la degradación del

rendimiento del sistema conforme los perfiles van adquiriendo edad.

En la literatura sobre los sistemas de personalización no suelen aparecer los

sistemas de recomendación basados en reglas – véase (Mladenic, 1999) o (Schwab

et al, 2000) –, únicamente aparecen los sistemas tratados en los dos próximos

párrafos. Es más, de todos los documentos consultados solo he encontrado dos que

los mencionen: (Mobasher 2007) y (Lang, 1995) – el cual denota a esta

metodología como la precursora de las dos posteriores –.

2.2. Sistemas de personalización basados en el contenido

En este apartado daremos una descripción de los sistemas de personalización

basados en el contenido de carácter introductoria. Posteriormente en el capítulo

12 analizaremos exhaustivamente estos sistemas, estudiando diversos ejemplos de

estos sistemas.

Los perfiles de usuario de este tipo de sistema contienen un conjunto de ítems en

los cuales el usuario ha expresado interés en el pasado. Cada ítem de dicho

conjunto es representado por un conjunto de atributos característicos. Por tanto, la

tarea de recomendación se efectúa comparando los atributos de los ítems no

visitados con los que están descritos en el perfil de usuario.

Page 128: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[117]

Generalmente dichos ítems son o contienen información textual y se representan

como un vector de términos con pesos – p.e. los usados en el modelo TF.IDF –. En la

siguiente Figura podemos observar como son sería un vector de términos extraído

de un documento de Seguros.

Figura 28. Vector de términos con pesos extraído de un documento de Seguros de Coche.

Las predicciones realizadas en dicho sistema se suelen calcular, o bien

computando la similitud entre vectores – p.e. el coseno –, o bien usando métodos

probabilísticos – p.e. el Clasificador Bayesiano –.

La mayor debilidad de estos sistemas es que obliga a los ítems utilizados a ser

descritos textualmente, y dada la heterogeneidad de la web es prácticamente

imposible que sean sistemas de uso general.

Como última anotación, debemos destacar que estos sistemas suelen basar sus

recomendaciones en un único usuario, al contrario de lo que sucede en los

sistemas del próximo apartado, en los que las recomendaciones se basan en un

conjunto de usuarios.

2.3. Collaborative filtering

Los sistemas que utilizan Collaborative Filtering fueron creados para intentar

solucionar los problemas de las dos propuestas anteriores.

Según la enciclopedia libre Wikipedia, la idea subyacente de estos sistemas se

divide en los siguientes pasos:

Page 129: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[118]

1. Buscar usuarios que hayan valorado ítems de forma parecida al usuario

activo12.

2. Utilizar estos usuarios (extraídos del paso 1) para realizar predicciones

sobre los ítems no valorados por el usuario activo.

La siguiente tabla muestra un ejemplo de un sistema de Collaborative Filtering

diseñado para recomendar música.

Música ABBA Boyzone Britney Spears

Kylie Minoge

Rocío Jurado

Aqua Barry White

D’Nash

Usuario1 6 7 5 7 1 2 3 7 Usuario2 7 6 6 7 - 1 5 6 Usuario3 2 1 1 - 7 6 6 3

Tabla 1. Ejemplo de una web imaginaria que recomienda música a usuarios.

De esta tabla podemos se puede deducir lo siguiente:

• El usuario 1 y 2 tienen gustos parecidos.

• El usuario 3 tiene gustos muy diferentes con respecto a los otros dos

usuarios.

• Si el usuario 2 fuese nuestro usuario activo, el sistema13 tomaría al usuario

1 como usuario con gustos parecidos a 2, y no debería recomendarle Rocío

Jurado.

Tradicionalmente se utilizan técnicas de KNN (k-vecinos más cercanos) basados en

memoria para realizar las clasificaciones.

La mayor desventaja de este sistema son sus limitaciones de escalabilidad:

• Si el número de usuarios e ítems es bastante grande, la latencia del sistema

para realizar recomendaciones en tiempo real puede llegar a ser

inaceptable.

• A medida que el número de ítems crece, la densidad de ítems valorados por

un usuario decrece. Esto dificulta el cálculo de la similitud entre dos

usuarios.

12 Usuario activo es aquel sobre el que se quiere realizar una predicción. 13 Aplicando literalmente las ideas de la Wikipedia y tomando como clasificador 1NN.

Page 130: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[119]

En (Mobasher, 2007) se proponen numerosas referencias de estrategias que

intentan superar estas limitaciones. La mayoría de estas estrategias se basan en

técnicas de Clustering para reducir la dimensión de los perfiles. Esto produce una

disminución del coste temporal de las recomendaciones en tiempo real.

La siguiente figura muestra ejemplos de los sistemas clásicos de esta

aproximación, en (Mladenic, 1999) se puede encontrar una descripción de cada

uno de ellos.

Figura 29. Sistemas de recomendación documentados que utilizan la técnica de Collaborative Filtering.

Como ejemplos de aplicaciones que utilizan Collaborative Filtering en la actualidad

tenemos Amazon, Last.fm o iTunes, entre otras. Cabe decir que no existe

documentación “oficial” de dichas aplicaciones, por lo que para realizar estudios

sigue siendo mejor opción revisar los sistemas clásicos.

Una variante muy utilizada de Collaborative Filtering son las técnicas de

Collaborative Filtering basadas en ítems – las utilizadas anteriormente se podrían

denominar basadas en usuarios – las cuales se basan en encontrar parecidos entre

los ítems. Se utilizan técnicas de similitud para realizar las recomendación, p.e. la

Page 131: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[120]

similitud del coseno. Siguiendo el ejemplo anterior, las técnicas basadas en ítems

podrían dar lugar a un ejemplo como el siguiente:

Música Usuario1 Usuario2 Usuario3 Usuario4 Usuario5 Usuario6 Usuario7

ABBA 6 7 5 7 1 2 3 D’Nash 7 6 6 7 - 1 5 Aqua 2 1 1 - 7 6 6

Tabla 2. Ejemplo de una web (parecida al ejemplo de la anterior) que usa técnicas de CF basadas en ítems.

De la tabla deducimos lo siguiente:

• El ABBA y D’Nash son preferidos por los mismos usuarios.

• Aqua se diferencia bastante de los grupos ABBA y D’Nash.

• D’Nash no debería ser recomendado al usuario 5 ya que ABBA no le gusta.

3. Perfiles de Usuario

Todo sistema de recomendación basado en Data Mining requiere trabajar con un

conjunto de datos que refleje tanto los intereses del usuario como sus

interacciones con las aplicaciones y los ítems. Los sistemas propuestos no solo

difieren en los algoritmos utilizados, también se diferencian en la manera de

construir perfiles de usuarios.

3.1. Perfiles basados en un único usuario

En los sistemas basados en reglas, generalmente, se construye un perfil de

preferencias de usuario único para cada usuario. Dicho perfil será utilizado para

ayudar a únicamente a dicho usuario.

Como hemos comentado anteriormente, los perfiles de los sistemas basados en

contenido son un conjunto de ítems en los cuales el usuario ha mostrado interés en

el pasado, siendo a su vez dichos ítems un conjunto de atributos característicos de

los mismos. El proceso de creación de un perfil en estos sistemas requiere lo

siguiente:

1. El sistema debe determinar el nivel de interés de un usuario en un

subconjunto de ítems. Esto se puede realizar de forma pasiva, es decir,

Page 132: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[121]

observando el comportamiento del usuario y utilizar diversos heurísticos

para inferir de ese comportamiento si un ítem es interesante o no, o de

forma activa, dejando al usuario que clasifique de forma manual un

conjunto de ítems en interesantes o no.

2. Transformar cada ítem a recomendar en un conjunto de atributos

característicos para comprobar su similitud con los contenidos del perfil y

realizar la recomendación.

Las principales desventajas de este tipo de perfiles son que anulan la capacidad de

encontrar algún ítem interesante de forma casual – ya que están basados en los

intereses previos del usuario – y que dependen de la disponibilidad de

descripciones textuales de los ítems.

3.2. Perfiles basados en varios usuarios

Como se ha comentado anteriormente, los sistemas basados en Collaborative

Filtering a la hora de realizar recomendaciones, no se basan únicamente en el

perfil del usuario activo, sino que además utiliza los perfiles de los demás usuarios.

Estos sistemas se basan en las similitudes entre usuarios, no entre ítems como lo

hacen los sistemas del apartado anterior. Los perfiles se representan tal y como se

han comentado en el apartado 2.3.

Es importante que remarcar que, a diferencia de los sistemas basados en el

contenido, en estos sistemas el contenido de los ítems no forma parte del perfil,

sólo la valoración que le da el usuario al mismo.

3.3. Uso de ontologías

En la actualidad existe la tendencia de integrar conocimientos de dominio

ontológicos en los perfiles de usuario, esto se da tanto en sistemas basados en el

contenido como en los basados en Collaborative Filtering. Un ontología es un

esquema conceptual en un domino dado, informalmente podría definirse como una

estructura de datos a utilizar en un domino. (Noy et al, 2000) explica esta

Page 133: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[122]

tendencia, muy en boga en la actualidad, además de presentar una guía para crear

ontologías.

El problema que suscita esta tendencia es que no existe un dominio ontológico

común entre los sitios web. Además, al sumar a este problema la naturaleza no

estructurada de la web y la dispersión de los datos disponibles se produce una

reducción de las posibilidades de estos sistemas en cuanto a personalización a la

hora de navegar en la web.

4. Uso del Data Mining en la Personalización Web

En (Kohavi et al, 2001) se exponen cinco desiderata para conseguir aplicaciones de

Data Mining exitosas:

1. Los datos deben de ser ricos en descripciones, lo que debe permitir que la

búsqueda de patrones se base en simples correlaciones.

2. El conjunto de datos debe ser extenso para, así, construir modelos reales.

3. La recogida de datos debe ser regulada y fidedigna, además de automática.

4. Debe existir un método para evaluar los resultados

5. Se deben construir aplicaciones fácilmente integrables en los procesos

existentes.

A pesar de que la personalización se suele denominar “killer app” para el Data

Mining ya que no cumple todas las desiderata, debe ser visto como una aplicación

de Data Mining debido a que posee todas las fases del ciclo típico de estas

aplicaciones: Recogida de Datos, Pre-procesado, Descubrimiento de patrones y

Evaluación, en modo off-line, y finalmente, el despliegue de sus conocimientos en

tiempo real para mediar entre la Web y el usuario.

Las aplicaciones de recomendación web hacen uso del WUM (Minería Web de Uso)

como herramienta de Data Mining necesaria para realizar sus propósitos. Por

tanto, llegados a este punto es necesario completar la definición de WUM emitida

en el capítulo 3, apartado número 2. WUM puede definirse como la técnica de

Page 134: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[123]

descubrimiento y análisis automáticos de patrones, los cuales se extraen del

clickstream14 y de una recogida de datos asociada a las interacciones de un usuario

con recursos web en uno o más sitios web.

El objetivo de las aplicaciones que usan WUM es capturar, modelar y analizar los

patrones de comportamiento y perfiles de los usuarios que interactúan con un sitio

web. El descubrimiento de patrones se suele representar como conjuntos de

páginas web, objetos u otros recursos los cuales son accedidos con frecuencia por

grupos de usuarios con necesidades o intereses comunes. Generalmente, las

técnicas basadas en WUM se han utilizado en el pasado para procesos de toma de

decisiones en empresas con sitios web.

Estos modelos se pueden utilizar en los sistemas de recomendación por diversas

razones:

1. Dado que WUM no utiliza un algoritmo específico, se consigue un cierto

grado de flexibilidad para tratar coherentemente con diferentes tipos de

datos.

2. Permiten que las tareas de personalización trabajen y se integren bien con

otros tipos de aplicaciones existentes.

3. WUM al basarse en técnicas de Data Mining tiende a ser más escalables que

las aproximaciones basadas en otras técnicas.

5. Proceso de Personalización Web basado en WUM

Tras comprender la necesidad de utilizar técnicas de Data Mining en las

aplicaciones de recomendación web, veamos cómo quedaría entonces el proceso

de personalización. Dicho proceso consistirá en tres fases: Preparación de Datos y

Transformación, Descubrimiento de Patrones, y Recomendación.

En la fase de Preparación de Datos y Transformación se transforman los datos sin

procesar (raw data) a tipos de datos procesables por aplicaciones basadas en Data 14 Según la Wikipedia, clickstream es el conjunto de los clics del usuario mientras éste navega por la web. Este concepto no tiene traducción directa al español.

Page 135: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[124]

Mining. Los datos sin procesar pueden ser extraídos de numerosas fuentes, como

p.e. logs de los sitios web, bases de datos o diversos contenidos de las páginas web.

Descubrimiento de Patrones es la fase donde se aplican las técnicas de Data Mining

al conjunto de datos extraídos de la primera fase. En esta fase se pueden aplicar

gran cantidad de dichas técnicas, como p.e. Clustering, técnicas basadas en reglas,

técnicas basadas en los k-vecinos más cercanos o modelos probabilísticos. El

resultado de esta fase es la transformación de los datos de la primera fase en un

conjunto de modelos de usuario, los cuales serán utilizados en la fase de

Recomendación.

La fase de Recomendación es la única que se realiza en tiempo real y on-line, ya que

las fases anteriores se realizan en modo off-line. En esta fase se considera los

patrones descubiertos y los perfiles de usuario creados en las fases anteriores para

proveer al usuario contenido personalizado.

En el próximo capítulo se presenta un análisis exhaustivo tanto de los algoritmos

como de las técnicas utilizas en estas fases.

Page 136: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[125]

CAPÍTULO 11. LA PERSONALIZACIÓN WEB COMO APLICACIÓN DE

DATA MINING

Abstract. La personalización web debe ser tratada como una aplicación de Data Mining

debido a que posee todas las fases típicas de este tipo de aplicaciones. En esta unidad

describiremos, en base a los expuesto en (Mobasher, 2007), las distintas fases de esta tarea.

Estas fases son el Preprocesado de Datos, el Aprendizaje de un Modelo y la Evaluación de

dicho Modelo.

Keywords. Web Personalization, Web Usage Mining, Data Mining.

Como avanzábamos en los últimos apartados del capítulo anterior, a pesar de que

la personalización se suele denominar “killer app” para el Data Mining ya que no

cumple todas las desiderata propuestas por Kohavi, debe ser visto como una

aplicación de Data Mining debido a que posee todas las fases del ciclo típico de

estas aplicaciones: Recogida de Datos, Pre-procesado, Descubrimiento de patrones

y Evaluación, en modo off-line, y finalmente, el despliegue de sus conocimientos en

tiempo real para mediar entre la Web y el usuario.

En los próximos apartados se tratará de caracterizar dicha tarea como una

aplicación que utiliza de técnicas de Data Mining.

1. Modelado de perfiles de usuario

Sea U un conjunto de 7 usuarios, 8 � 9:;, :<, … , :>? e I un conjunto de � ítems,

@ � 9�;, �<, … , �A?, representamos un perfil de usuario de un usuario : � 8 como un

vector n-dimensional de pares con la siguiente forma:

:�A� � B��;, CD��;��, ��<, CD��<��, … , ��A, CD��A��E,

Donde los �� ’s � @ y CD es la función por la cual el usuario : asigna valor de interés a

los ítems, esta función puede dar el valor nulo.

Page 137: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[126]

Generalmente, se suelen almacenar conjuntamente todos los perfiles de usuario,

por tanto, la base de datos de todos los perfiles puede representarse por una

matriz 7 F �, 8G � HCDI����J>FA, donde CDI���� es el grado de interés en el ítem ��

por el usuario :I.

A modo de ejemplo, una base de datos para usuarios – 3 usuarios – que valoran

ítems – 4 ítems – sería:

8G � K8 1 53 5 102 5 8 551R

Donde el perfil del usuario 1 es :; � B��;, 8�, ��<, 1�, ��S, 5�, ��T, 5�E, es decir, el

usuario ha valorado los ítems del primero al tercero, con las notas 8, 1, 5,

respectivamente. El cuarto elemento no ha sido valorado.

Formalmente, un sistema de personalización puede ser visto como la siguiente

función:

GU: W�8G� F 8 F @ X Y Z 9�:[[?

GU\W�8G�, :I, ��] � CDI����

Esta función asigna valores – grado de interés – a los pares usuario-ítem no

valorados por el usuario activo. Como parámetros de entrada tenemos:

• Conjunto de perfiles de usuarios UP, en los sistemas de recomendación

basados en el contenido no se toma este conjunto.

• El perfil del usuario activo.

• El ítem a predecir.

La salida de esta función es o un número real o null. La función devuelve un

número real para los ítems que es capaz de predecir, null en caso contrario.

Muchas técnicas de Data Mining pueden aplicarse a UP para implementar dicha

función, en la fórmula anterior, estas técnicas se representan como W.

Page 138: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[127]

Pero antes de realizar cualquier tipo de predicción, se deben contestar las

siguientes preguntas:

1. ¿Qué elementos constituyen el conjunto de ítems I?

2. ¿Cómo es la función CDI definida para cada usuario :I?

Las respuestas de preguntas dependen del tipo de aproximación utilizada en la

personalización (basado en reglas, contenido o CF), el dominio de la aplicación

subyacente y los tipos y fuentes de información.

2. Preprocesado de Datos en WUM

Los datos utilizados en WUM se extraen de los log de los sitios web, los cuales

contienen datos del comportamiento de los usuarios a la hora de navegar. Estos

datos pueden ser interpretados desde diferentes niveles de abstracción. Estos

niveles varían desde simples peticiones HTTP hasta el nivel básico de abstracción

en WUM, denominado pageview.

El pageview es la unidad atómica de datos utilizada en el análisis de los mismos.

Figura 30. Tareas y elementos necesarias en el Preprocesado de Datos. (Mobasher, 2007)

El objetivo de la fase de Preprocesado es la de transformar los datos sin procesar

en perfiles de usuario. Es de vital importancia realizar este proceso con corrección,

ya que el éxito de las técnicas de Data Mining depende en gran parte de la calidad

Page 139: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

de los datos procesados. En l

tareas que son necesarias en esta fase de la aplicación.

1.1. Preprocesado del Uso

Figura 31. El Preprocesado de Uso dentro del Preprocesado de Datos. (Mobasher, 2007)

Como podemos observar en la figura anterior, el Preprocesado del Uso se

compone de cinco tareas principales; Fusión de Datos, Limpieza de Datos,

Identificación del pageview, Sesionalización e Identificación de Episodios. En los

próximos párrafos se describirán brevement

La tarea Fusión de Datos

varios sitios web o los datos provienen de distintas fuentes dentro de un mismo

sitio web. En este paso, los datos que provienen de distintos parajes s

de forma ordenada para evitar los duplicados y otros problemas derivados del uso

de diversas fuentes. Un ejemplo de esta actividad podría ser este proyecto, en el

cual se han consultado distintas fuentes para la obtención de algunos

conocimientos. Dichos conocimientos han sido mezclados con cuidado de que éstos

sean coherentes y de que no estén duplicados en este informe.

La fase Limpieza de Datos

realización de los análisis como p.e. obje

multimedia.

[128]

de los datos procesados. En la figura anterior podemos observar los elementos y

tareas que son necesarias en esta fase de la aplicación.

Preprocesado del Uso

El Preprocesado de Uso dentro del Preprocesado de Datos. (Mobasher, 2007)

servar en la figura anterior, el Preprocesado del Uso se

compone de cinco tareas principales; Fusión de Datos, Limpieza de Datos,

Identificación del pageview, Sesionalización e Identificación de Episodios. En los

próximos párrafos se describirán brevemente cada una de estas tareas.

Fusión de Datos (Data Fusion) es necesaria cuando se toman datos de

varios sitios web o los datos provienen de distintas fuentes dentro de un mismo

sitio web. En este paso, los datos que provienen de distintos parajes s

de forma ordenada para evitar los duplicados y otros problemas derivados del uso

de diversas fuentes. Un ejemplo de esta actividad podría ser este proyecto, en el

cual se han consultado distintas fuentes para la obtención de algunos

tos. Dichos conocimientos han sido mezclados con cuidado de que éstos

sean coherentes y de que no estén duplicados en este informe.

Limpieza de Datos (Data Cleaning) elimina los datos no necesarios para la

realización de los análisis como p.e. objetos embebidos o diverso contenido

a figura anterior podemos observar los elementos y

El Preprocesado de Uso dentro del Preprocesado de Datos. (Mobasher, 2007)

servar en la figura anterior, el Preprocesado del Uso se

compone de cinco tareas principales; Fusión de Datos, Limpieza de Datos,

Identificación del pageview, Sesionalización e Identificación de Episodios. En los

e cada una de estas tareas.

(Data Fusion) es necesaria cuando se toman datos de

varios sitios web o los datos provienen de distintas fuentes dentro de un mismo

sitio web. En este paso, los datos que provienen de distintos parajes son mezclados

de forma ordenada para evitar los duplicados y otros problemas derivados del uso

de diversas fuentes. Un ejemplo de esta actividad podría ser este proyecto, en el

cual se han consultado distintas fuentes para la obtención de algunos

tos. Dichos conocimientos han sido mezclados con cuidado de que éstos

(Data Cleaning) elimina los datos no necesarios para la

tos embebidos o diverso contenido

Page 140: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[129]

En el proceso de Identificación del pageview (Pageview Identification) se selecciona

de los datos el conjunto que será tomado como unidad atómica para el propósito

del análisis. En el caso más simple, este pageview suele corresponder con una

página web, en nuestro caso tomaremos los pageview como los ítems �� � @, los

cuales son los objetos de la personalización.

La tarea Sesionalización (Sessionazation) tiene como propósito establecer la

secuencia de acciones realizadas por un usuario concreto en un sitio web – o

conjunto de sitios web – a través de la interpretación de los datos de los logs. Para

ello son utilizados heurísticos, los cuales se pueden catalogar en dos tipos:

orientados a la estructura u orientados al tiempo.

La última fase es la Identificación de Episodios (Episode Identification). Un episodio

es una subsecuencia de acciones desarrolladas en una sesión la cual está

relacionada semánticamente o funcionalmente con uno o varios pageviews. Un

ejemplo de Episodio podría ser añadir a un carro un ítem en un sitio web de

compras online.

El resultado de todas estas tareas es el siguiente: Un conjunto de � pageviews tales

que G � 9^;, ^<, … , ^A? y un conjunto de _ transacciones de usuario tales que

` � 9a;, a<, … , ab?, donde cada a� � ` es una secuencia de longitud [ de pares con la

siguiente forma:

a � B\^;c , d�^;c�], \^<c , d�^<c�], … , �^ec, d�^ec��E,

Donde cada ^�c � ^�para 1 f � f � y d�^�c� es el peso asociado al pageview ^�c en la

transacción a.

Los pesos asociados pueden calcularse de muchas formas, p.e. en Collaborative

Filtering se calculan en base a la puntación que le da el usuario a un ítem concreto.

Uniendo varias transacciones de usuario podemos calcular CDI���� a partir de

d�^�c�, ya que según nuestra representación cada �� corresponde con un pageview.

Page 141: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[130]

1.2. Transformación de Datos

Figura 32. La Transformación de Datos dentro del Preprocesado de Datos. (Mobasher, 2007)

Tras un proceso básico de procesamiento de datos de Clickstream, los datos que

caracterizan los ítems a tratar y que provienen de distintas fuentes deben

integrarse para formar un único conjunto de conocimientos. La integración de

datos de usuario, contenido – posiblemente semántico – o estructura en esta fase

puede ser esencial para el éxito de los patrones descubiertos en las

recomendaciones a realizar.

En este punto también pueden aplicarse diversas técnicas de FSS (Feature Subset

Selection o Selección de variables) para así extraer p.e. los rasgos relevantes de los

textos o metadatos tratados de cada ítem.

Siguiendo con nuestra representación matemática, solo nos quedaría definir la

representación de cada ítem �� , el cual se define como un vector k-dimensional de

atributos, donde k es el número total de atributos extraídos de todos los ítems.

Cada dimensión del vector representa el correspondiente peso del atributo

asociado a dicha dimensión para el ítem tratado. El vector tendría, por tanto, la

siguiente estructura:

�� � Bgd��g;�, gd��g<�, … , gd��gI�E,

Donde gd��gh� es el peso del atributo d-ésimo en el ítem �� � @ para 1 f i f j.

Page 142: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[131]

Los vectores de atributos extraídos del contenido textual de páginas suelen ser

vectores de pesos de palabras denominados bag-of-words, y el peso se suele

calcular con la medida normalizada tf.idf. Además en estos casos se suelen aplicar

técnicas de Text Mining. Más información sobre esta técnica se encuentra

disponible en el apartado 2.1 del capítulo 12.

3. Descubrimiento de Patrones

Las técnicas de recomendación, en especial las basadas en Collaborative Filtering,

utilizaban dos fases para realizar las recomendaciones:

1. En modo offline se utilizan los datos recogidos en las interacciones previas

del usuario para general modelos explícitos, los cuales son utilizados para

realizar recomendaciones en futuras interacciones online.

2. Los datos utilizados en la sesión actual del usuario son valorados en tiempo

real con los modelos generados en la fase primera, y las recomendaciones

se basan en dichas valoraciones.

En el apartado 3.1 veremos la aproximación utilizada generalmente en las técnicas

basadas en Collaborative Filtering, ya que estas aproximaciones son unas de las

más utilizadas. En el apartado 3.2 nombraremos y referenciaremos otras técnicas

utilizadas también en Collaborative Filtering, las cuales no son tan importantes

para el desarrollo de este proyecto, aunque merecen ser nombrarlas. En el capítulo

12 veremos otras técnicas de descubrimiento de patrones, esta vez, las que se

aplican a sistemas de recomendación basados en el contenido.

3.1. La personalización basada en métodos de Clustering

Las técnicas de Clustering se basan en dividir el conjunto de datos en grupos o

clústeres. Esta división trata de minimizar las diferencias entre los datos miembros

de un clúster y de maximizar las diferencias entre los clústeres. En la siguiente

figura se toma como diferencia entre los datos la distancia entre los mismos. Como

Page 143: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[132]

podemos observar los 5 grupos están bastante distanciados unos de otros, y los

elementos de cada grupo están bastante unidos entre sí.

Figura 33. Ejemplo de Clustering (5NN) basados en la distancia entre los individuos.

Según (Han et al, 2001), los métodos de Clustering pueden dividirse en tres

categorías:

• Métodos de partición (Partitioning methods), los cuales crean k-

particiones del conjunto de datos, y cada partición representa un clúster. El

método más utilizado es el algoritmo de las k-medias.

• Métodos jerárquicos (Hierarchical methods), los cuales usan o una

aproximación top-down (divisiva) o bottom-up (aglomerativa). Los

métodos divisivos toman al conjunto entero de datos como un único clúster

y recursivamente lo van dividiendo, mientras que los métodos

algomerativos empiezan con los ítems como individuos e iterativamente

van combinándolos formado diversos clústeres.

• Métodos basados en modelos (Model-based methods), los cuales generan

clústeres basándose en modelos matemáticos.

Como se ha comentado en reiteradas ocasiones, este tipo de algoritmos se utilizan

generalmente en sistemas de recomendación basados en Collaborative Filtering.

Page 144: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[133]

En este tipo de sistemas se utiliza el Clustering de una de las dos siguientes

maneras:

� Clustering basados en usuarios (User-based Clustering), donde los perfiles

de todos los usuarios son almacenados en la matriz UP.

� Clustering basados en ítems (Item-based Clustering), donde los ítems son

clusterizados basándose en la similitud de las valoraciones dadas por todos

los usuarios o basándose en la similitud entre los atributos de los mismos.

En la actualidad se están estudiando las formas de lidiar las limitaciones de estos

sistemas expuestas en el apartado 2.3 del capítulo 10. Esto es, intentar mejorar la

eficiencia y la escalabilidad de dichos sistemas en las tareas de personalización en

tiempo real.

También está demostrado que un correcto preprocesamiento de datos puede

ayudar a la eficacia del sistema de recomendación.

Por último, comentar que se están realizando investigaciones en Fuzzy Clustering

para intentar mejorar las predicciones.

3.2. Otros métodos utilizados en la personalización

En (Mobasher, 2007) también se explican otros métodos utilizados en la

personalización, para más información sobre ellos se recomienda leer dicho

capítulo. Dichos métodos son los siguientes:

� Técnicas de descubrimiento de reglas de asociación (Association rule

discovery techniques)

� Modelos de variable Latente (LVM o Latent Variable Models)

En dicho capítulo también se comenta que los modelos presentados hasta ahora en

la sección 3, presentan dos problemas que necesitan ser solucionados:

Page 145: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[134]

• Estos modelos no toman en cuenta el problema del nuevo ítem (new ítem

problema), el cual enuncia que los ítems nuevos añadidos a un sistema no

pueden ser recomendados dado que nadie los ha valorado.

• Los modelos no realizan análisis semántico de los contenidos a recomendar.

Para superar dichos problemas, Mobasher propone los modelos híbridos, los

cuales suelen ser habitualmente una combinación de las técnicas utilizadas en los

sistemas de recomendación basados en el contenido y las de Collaborative

Filtering. En dicho artículo se presenta una descripción más detallada de esta

técnica.

4. Evaluación de los Modelos

En cualquier aplicación que haga uso de técnicas de Data Mining es importante

que, después de la creación de los modelos a utilizar como marco en la

personalización, sea evaluada su precisión y efectividad. La evaluación de los

modelos puede ser dificultosa en este dominio debido a lo siguiente:

• Cada modelo requiere una métrica distinta de evaluación.

• Las tareas de personalización varían considerablemente dependiendo del

dominio subyacente, la aplicación a utilizar y el tipo de datos a recomendar.

• Existe una considerable falta de consenso entre los investigadores y los

profesionales del sector en la definición de calidad del servicio de

recomendación.

Las técnicas más utilizadas para evaluar los modelos son MAE, métricas de

clasificación y métrica ROC.

La técnica MAE (Mean Absolute Error o Error medio absoluto) trata de

evaluar el modelo midiendo la diferencia media entre las valoraciones

realizadas en los ítems por el sistema y las valoraciones introducidas por el

usuario. Este sistema no funciona correctamente en valoraciones no

numéricas.

Page 146: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[135]

Las métricas de clasificación que se utilizan para realizar la evaluación

son dos muy utilizadas: Precision y Recall. Precision calcula la probabilidad

de que un ítem recomendado sea relevante y Recall la probabilidad de que

un ítem relevante sea recomendado. Esto funciona tanto en valoraciones

numéricas como no numéricas.

La métrica ROC es una medida la cual es capaz de distinguir entre las

conclusiones importantes del comportamiento de un sistema y el ruido que

suele acompañar a todo conjunto de datos.

Como se ha comentado anteriormente, no existe consenso en la definición de

calidad, p.e. un sistema que sólo recomienda los ítems más populares puede ser

eficaz respecto a los métodos de evaluación, sin embargo, alguien puede

argumentar que esos ítems no son particularmente interesantes para cubrir las

necesidades de los usuarios del sistema. Por ello se han definido nuevos conceptos

como p.e. Usabilidad. La usabilidad mide la utilidad de un ítem recomendado en

términos de las necesidades de uno o varios usuarios.

Page 147: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto
Page 148: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[137]

CAPÍTULO 12. SISTEMAS DE RECOMENDACIÓN BASADOS EN EL

CONTENIDO

Abstract. Como hemos ido avanzando anteriormente, el escenario más usual en el que se da

la recomendación basada en personalización es en las aplicaciones web. Estas aplicaciones

suelen funcionar del siguiente modo: presentan un resumen o lista de ítems entre los cuales el

usuario debe escoger uno o varios para interactuar de algún modo con el/ellos. En el

capítulo 10 hemos visto que existen distintos tipos de aproximaciones para realizar esta

labor, entre las que se encuentra los sistemas de recomendación basados en el contenido.

Estos sistemas son los que van a ser tratados en este capítulo.

Los sistemas de recomendación basados en el contenido necesitan que la aplicación web

contenga una descripción en formato textual por cada ítem para desarrollar su tarea.

Basándose en esta descripción, el sistema identificará al ítem descrito como interesante o no

para el usuario activo. Posteriormente veremos que esta característica es a la vez la mayor

limitación de estos sistemas.

Antes de estudiar las limitaciones de estos sistemas veremos, además, la representación

realizada de los ítems junto con la labor de la minería de textos en esta tarea, la

representación de los perfiles de usuario, los algoritmos de clasificación más utilizados y

describiremos brevemente algunos ejemplos de estos sistemas.

Por último, comentar que nos centraremos en sistemas de recomendación de páginas web, ya

que son los importantes desde el marco del proyecto. Por tanto, los ítems serán páginas webs

o contenido textual disponible en el World Wide Web. Este documento se basa en lo escrito en

artículo (Pazzani et al, 2007).

Keywords. Content-based filtering systems, Text Mining, Data Mining, User Profiles, Machine

Learning.

1. Representación de los Ítems

Los ítems a recomendar suelen estar contenidos en bases de datos o ser los

contenidos de páginas webs. Los datos contenidos en bases de datos se suelen

extraer en tiempo real para generar el contenido de páginas webs dinámicas. Esto

Page 149: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[138]

nos hace clasificar los datos en dos tipos: Datos Estructurados y Datos No-

Estructurados.

Los ítems con Datos Estructurados (Strutured Data) son aquellos que se definen

por un número pequeño de atributos, los mismos para cada ítem, y dichos

atributos tienen un conjunto de valores conocidos. En estos sistemas, la creación

de perfiles de usuario con los algoritmos de Machine Learning es bastante sencilla.

La figura siguiente muestra un ejemplo de datos estructurados.

Figura 34. Ejemplo de una base de datos con datos estructurados sobre los trabajadores de una determinada

empresa.

En este ejemplo, los ítems serían los trabajadores, los cuales son definidos por

nueve atributos que tienen valores bastante determinados.

Los ítems con Datos No-Estructurados (Unrestricted Data) suelen corresponderse

con el contenido de páginas web o con bases de datos que contienen grandes

cantidades de datos textuales escritos por los seres humanos, p.e. artículos de

noticias, etc. En este caso, la creación de perfiles es algo más compleja, ya que entra

Page 150: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[139]

en juego el procesamiento del lenguaje natural y problemas como las palabras

polisémicas – palabras con más de un significado – o sinónimos – conjuntos de

palabras que tienen el mismo significado –. En la figura 35 se presenta un ejemplo

de Datos No-Estructurados.

Muchos sistemas de recomendación trabajan con ambos tipos de datos, aunque

generalmente se tiende a transformar los datos no-estructurados en estructurados

a la hora de ser utilizados por algoritmos de Machine Learning, a esta técnica se le

denomina Text Mining. Para ello se utiliza técnicas de stremming – creación de

términos que reflejan un significado de común p.e. mujer, chica, señora,… - para

posteriormente aplicar medidas de relevancia a dichos términos como p.e. tf.idf

(term-frecuency times inverse document frequency).

1.1. Text Mining

Text Mining es la aplicación de técnicas de Data Mining en bases de datos textual

para extraer conocimiento de dicha información. Antes de concentrarnos en

nuestro escenario, hay que decir que existen numerosas aplicaciones de esta

técnica de extracción de información de documentos textuales que no están

relacionadas con la web.

El tipo de representación de los ítems más utilizada en Text Mining e

Information Retrieval es la representación vectorial, comúnmente denominada

como representación de bolsa de palabras, en inglés bag-of-words. En esta

representación se extraen todas las palabras de un texto dado sin ningún tipo de

orden entre ellas ni representación de la estructura formada en el texto. Un

conjunto de varios documentos, se suelen representar con bag-of-words por cada

documento y un bag-of-words del conjunto de documentos. La figura 35 muestra

como se realiza dicha extracción.

Page 151: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[140]

Figura 35. Representación de un texto no-estructurado mediante la técnica bag-of-words.

Posteriormente a esta representación se le aplican técnicas de stemming. Entre las

cuales destacan la famosa técnica de eliminación de las stop words, la cual consiste

en eliminar las palabras de un lenguaje que no caracterizan la información de un

documento como p.e. las preposiciones, los artículos, etc.

Por último, los documentos suelen ser representados como vectores de pesos de

los términos contenidos en dichos documentos. Para ello se suele utilizar tf.idf, que

es una técnica que calcula los pesos de las palabras en función del producto de la

frecuencia de dicha palabra en un texto y la inversa de la frecuencia de dicha

palabra en todos los textos del conjunto. Esta medida viene a expresar la medida

en que esa palabra diferencia al documento activo del resto de los documentos del

conjunto a analizar.

Uno de los problemas de esta representación es que no utiliza el contexto en el que

es usada una palabra, es decir, pierde las relaciones existentes entre las palabras

de un documento.

Page 152: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[141]

Para solventar esto, se están empezando a utilizar técnicas de representación que

trabajan con conjuntos de palabras, dichas conjuntos se llaman n-grams, donde n

es el número de palabras por conjunto. En otras investigaciones se introduce la

representación de información extra por cada palabra como p.e. estructura de la

oración, la posición de la palabra o las palabras vecinas.

En las siguientes figuras se muestra una tabla extraída de (Mladenic, 1999) que

expresa la representación de documento, la selección de variables y el método

clasificatorio que se utilizaban en los principales artículos sobre Text Mining hasta

dicho año.

Page 153: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[142]

Figura 36. Representación de documento, selección de variables y método clasificatorio utilizados en algunas

de las aproximaciones de Text Mining publicadas. PARTE I (Mladenic, 1997)

Page 154: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[143]

Figura 37. Representación de documento, selección de variables y método clasificatorio utilizados en algunas

de las aproximaciones de Text Mining publicadas. PARTE II (Mladenic, 1997)

2. Perfiles de Usuario

El perfil de usuario utilizado por este tipo de sistemas se concentra en dos tipos de

información:

1. Un modelo de las preferencias del usuario. Esto es una descripción de

los tipos de ítems que interesan al usuario. Existen muchas alternativas de

Page 155: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[144]

representación, pero la más utilizada es el almacenamiento de los n ítems

más valorados por el usuario para así, a la hora de recomendar, realizar una

comparación entre estos y los disponibles, y ver si son o no parecidos.

2. Un historial de las interacciones del usuario con el sistema de

recomendación. Existen numerosas representaciones de este tipo de datos

como por ejemplo guardar un log de los ítems vistos en la misma sesión o

almacenar las consultas realizadas. Aunque no existe un método por

excelencia de extracción de esta información es importante extraerla, ya

que así el sistema puede presentar los ítems visitados si el usuario quiere

acceder a ellos, o filtrar el contenido eliminando los ítems ya visitados. Sin

embargo, la razón más importante es la de tomar dichos ítems como datos

de testeo del algoritmo de clasificación utilizado.

Es importante, que estos sistemas también permitan introducir información de

forma manual (user customization), ya que esto puede solventar grandes

problemas cuando los intereses del usuario cambien repentinamente.

La creación de un modelo de preferencias de un usuario a partir de los datos

explicados anteriormente es una forma de clasificación que puede ser resuelta con

técnicas de Data Mining. El conjunto de datos de testeo se divide en dos categorías:

“ítems que le gustan al usuario” e “ítems que no le gustan al usuario”. Para

aprender el modelo además se utilizarán diversos datos explícitos e implícitos. Los

datos explícitos son aquellos que son introducidos directamente por el usuario,

mientras que los implícitos son aquellos que se derivan del comportamiento del

usuario y no tienen porque corresponderse con la realidad. Por ejemplo, si un

usuario introduce un ítem a su carrito en una web de compras y posteriormente lo

saca, ¿significa que al usuario no le gusta dicho ítem?

En el próximo apartado vamos a describir las técnicas de Data Mining utilizadas

para aprender los perfiles de usuario.

Page 156: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[145]

3. Algoritmos de clasificación

Los algoritmos de aprendizaje de clasificación son el componente clave en este tipo

de sistemas, ya que aprenden los intereses del usuario activo, es decir, aprenden

una función que contesta a la siguiente pregunta:

Dado un nuevo ítem y un modelo del usuario, ¿el usuario estará interesado en dicho

ítem?

Las técnicas más utilizadas en aprendizaje de perfiles son algoritmos basados en

árboles y reglas, algoritmos basados en el vecino más cercano, algoritmos basados

en retroalimentación y métodos probabilísticos.

Como Árboles tenemos al ID3, el cual genera un árbol de clasificación

particionando recursivamente el conjunto de datos de entrenamiento, que en este

caso son documentos textuales, en subgrupos hasta que las instancias contenidas

en los mismos pertenezcan únicamente a una clase. Los árboles no son la opción

más adecuada para las tareas de clasificación de datos no estructurados, ya que

estos datos contienen gran cantidad de atributos, y está demostrado que este

algoritmo funciona mejor con instancias con pocos atributos. Como algoritmos

inductores de Reglas tenemos a RIPPER, el cual opera de forma muy parecida al

ID3 y posee también sus limitaciones.

Los algoritmos basados en los k vecinos más cercanos simplemente almacenan

todas las instancias. Para clasificar una nueva instancia, la comparan con todas las

almacenadas y seleccionan las k más cercanas. Al estar representados los

documentos como vectores se suele calcular la cercanía con funciones de similitud,

p.e. la similitud del ángulo del coseno. Esta técnica es apropiada cuando queremos

descubrir la similitud de dos o más documentos que tratan de un mismo tema, sin

embargo, no es muy apropiada cuando los documentos tratan de distintos temas.

Los métodos de Relevance Feedback (Relevancia de la retroalimentación) se

basan en ayudar a los usuarios a refinar sus consultas basándose en los resultados

Page 157: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[146]

previos. La idea principal de estos métodos es la de permitir a los usuarios valorar,

de acuerdo con sus intereses, los documentos devueltos por un sistema de

recuperación de información. Uno de los más utilizados es el algoritmo de

Rocchio, tratado y referenciado en este proyecto en el capítulo 9.

Por último, tenemos los métodos probabilísticos. Entre ellos destaca el naïve

Bayes, el cual es utilizado en el sistema de recomendación Syskill & Webert

(Pazzani et al, 1997). En el siguiente apartado realizaremos una breve descripción

de dicho sistema.

4. Ejemplos de sistemas que implementan esta técnica

Existen numerosos ejemplos de estos sistemas, entre los cuales destacan los que

aparecen en la Figura 38.

En este punto es necesario decir que en numerosas ocasiones estos sistemas son

tratados correctamente como Agentes Inteligentes, ya que son sistemas

autónomos que asisten a los usuarios. El único problema es que la definición dada

en este campo a los Agentes Inteligentes, no es correcta desde el punto de vista del

área que estudia dichas sistemas. Sin embargo, el uso de dicha definición en esta

área en particular es totalmente legítimo, ya que se adecúa con corrección a la

misma. Mdalenic define Agente Inteligente como sistemas de asistencia al usuario

que realizan recomendaciones utilizando técnicas de Data Mining y Machine

Learning.

Además Mdalenic establece que estos sistemas y las investigaciones que se basan

en ellos utilizan una intersección de las siguientes técnicas: Information Retrieval,

Machine Learning, Intelligent Agents e Intelligent User Interfaces.

En los siguientes apartados vamos a ver cinco ejemplos de estos sistemas, los más

importantes de los estudiados por el autor del proyecto, a su juicio. Estos sistemas

son: Syskill & Webert, WebWatcher, el agente inteligente de Fuentes et al, Letizia y

NewsWeeder.

Page 158: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[147]

Los sistemas seleccionados por el autor corresponden a sistemas que asisten al

usuario mientras éste navega en la red para ayudarle a encontrar diversa

información relevante.

Figura 38. Aproximaciones de sistemas de recomendación basados en el contenido. (Mdalenic, 1999)

4.1. Syskill and Webert

En (Pazzani et al, 1997) se expone un sistema que determina si una página del

World Wide Web interesa o no a un usuario de acuerdo con un perfil de usuario.

Dicho sistema se denomina Syskill and Webert.

Page 159: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[148]

Figura 39. Interfaz de Syskill and Webert.

Este sistema representa los documentos como bag-of-words, pero en vez de utilizar

el peso de los mismos como es costumbre en este tipo de sistemas, utiliza un

vector de booleanos para expresar la presencia o no de un término en un

documento. Para realizar las recomendaciones utiliza un clasificador naïve Bayes

demostrando que este clasificador es capaz de aprender perfiles de usuarios y de

aumentar la eficacia de este tipo de sistemas.

4.2. WebWatcher

En el documento (Joachims et al, 1997) se propone WebWatcher, el cual es un

agente que asiste a los usuarios mientras navegan en la web. Los autores

establecen que navegar en la web es como visitar un museo y que estos sistemas

deben tomarse como guías turísticos que te enseñan la web según tus necesidades,

al igual que lo harían en un museo.

La recomendación se basa en la siguiente fórmula:

Page 160: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[149]

Donde el valor de LinkQuality es la probabilidad de que el usuario seleccione un

link determinado dada la página y el interés actual.

Figura 40. Interfaz de WebWatcher.

4.3. Agente de Rubén Fuentes y Juan Pavón

Rubén Fuentes y Juan Pavón proponen en (Fuentes et al, 2003) un sistema multi-

agente que recupera información especializada de la web, el cual se basa en el

aprovechamiento de la información específica del dominio en el que se sitúa al

usuario y en la personalización. Además este sistema es el único de los presentados

que hace uso de ontologías.

El algoritmo del funcionamiento del sistema es el siguiente:

1. El usuario plantea una consulta sobre su interfaz.

2. La consulta es enriquecida por el sistema con términos relacionados con la

consulta en el dominio objetivo.

Page 161: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[150]

3. La pregunta ampliada se traduce para ser trasladada a los motores de

búsqueda comunes de la web.

4. Las respuestas obtenidas de esas fuentes son sometidas a un doble filtrado.

a. Buscar en los documentos palabras relacionadas con el dominio de

interés. Se usan vectores de palabras con pesos adaptados al usuario

y dominio.

b. Análisis del texto de los documentos buscando en él los conceptos

del dominio. Se extrae información sobre el tema del documento

utilizando filtros específicos de ontologías.

5. Los documentos más importantes son propuestos al usuario como

respuesta.

6. Los documentos de la respuesta son analizados por el sistema para

encontrar términos que no están en su vocabulario y añadirlos.

4.4. Letizia

Henry Lieberman toma el nombre de uno de los personajes de la novela de Jorge

Luis Borges titulada La biblioteca de Babel para denominar a un sistema de

asistencia al usuario en la navegación web. Dicho sistema se presenta en

(Lieberman, 1995) y su importancia viene dada por ser uno de los pioneros en esta

área. Lieberman apuesta por dejar al usuario navegar libremente sin que ningún

sistema de recomendación le asesore. Éste establece que el asesoramiento

únicamente debe darse cuando el usuario no sabe qué camino debe tomar.

Page 162: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[151]

Figura 41. Interfaz de Letizia.

4.5. NewsWeeder

En (Lang, 1995) se presenta un sistema de recomendación de noticias basado en

los intereses de un usuario activo. Este sistema representa los ítems como un bag-

of-words y utiliza técnicas de similitud para establecer los ítems a recomendar,

dichas técnicas son dos: tf.idf y MDL (Minimum Description Length).

Page 163: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[152]

5. Limitaciones de estos sistemas

A pesar de que existen numerosas aproximaciones de sistemas de recomendación

basados en el contenido, ningún sistema de estos puede dar buenos resultados si la

descripción textual de los ítems no es suficiente o no existe.

Existen dominios textuales donde no sirve de nada aplicar estas técnicas, por

ejemplo, para recomendar poemas o chistes. Ningún sistema de los presentados

podrá jamás decidir si un chiste es o no gracioso, para estos dominios es más

recomendable utilizar otras aproximaciones como p.e. Collaborative Filtering.

Debido a estas limitaciones, el artículo (Pazzani et al, 2007) establece que para

conseguir mejores resultados, estos sistemas deben ser complementados con

técnicas como Collaborative Filtering.

Page 164: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[153]

CONCLUSIONES DE LA TERCERA PARTE

En este apartado se ha presentado una de las soluciones basadas en técnicas de

Data Mining que sirven para ayudar al usuario en el proceso de la búsqueda web.

Concretamente nos hemos centrado en los sistemas de recomendación basados en

el contenido, presente en el área Personalización Web.

Los sistemas de recomendación basados en el contenido parecen no usarse en la

actualidad, ya que no se han encontrado artículos sobre dichos sistemas con fecha

posterior al 2003. En la realización de este proyecto se han barajado muchas

razones por las cuales ya no se emplea esta técnica, algunas de ellas las mostramos

a continuación:

• Las limitaciones comentadas de estos sistemas en el capítulo 12, apartado 6.

Principalmente, puede deberse a que estas técnicas se hayan incluido en

sistemas de Collaborative Filtering.

• En (Schawab et al, 2000) se exponen algunos problemas de este tipo de

sistemas que juicio personal pueden haber propiciado su desaparición:

o El almacenamiento de la información requiere proveer a un sistema

informático datos personales, y muchos usuarios no están por la

labor de realizar esta tarea.

o Muchos de estos sistemas clasifican los ítems no visitados como

ejemplos negativos y esto puede ser peligroso. Esto pone de

manifiesto la utilización de técnicas de Data Mining no existentes en

los años en los que se propusieron estos sistemas, como p.e.

Algoritmos de Aprendizaje Semi-supervisado.

• Los intereses de los usuarios varían con el tiempo, y estos sistemas no están

preparados para tal efecto. Los documentos visitados en un pasado remoto

tienen el mismo peso que los visitados en un pasado cercano. Por tanto, es

necesaria la inclusión de algún tipo de indicador de intereses del usuario.

Page 165: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[154]

• Lieberman exponía que en aquellos años el trabajo con Agentes Inteligentes

para extraer información de la web se encontraba en su infancia. Es posible

que no existiesen técnicas suficientes para dar salida a dichos sistemas.

• Por último, comentar que al igual que los buscadores anteriores a 1998,

estos sistemas no realizan ni análisis semántico, ni tienen en cuenta los

enlaces entre los documentos, lo que produce que sean vulnerables al spam.

A pesar de su desaparición y grandes limitaciones creo que su estudio merece la

pena, ya que por primera vez se toma en cuenta las acciones pasadas de los

usuarios a la hora de asesorarle en la búsqueda, y personalmente creo que esto es

bastante adecuado. Nadie podrá negar que el ser humano es un animal de

costumbres.

A modo de conclusión, citar a (Mobasher, 2007) el cual dice lo siguiente: “Mientras

la investigación sobre la personalización ha dejado un número considerable de

algoritmos efectivos, todavía quedan un gran número de retos y preguntas sin ser

resueltas”. Esto viene a decir que, aunque algunos de los caminos emprendidos en

la Personalización Web se hayan cerrado, todavía quedan muchos abiertos

esperando a ser recorridos.

Page 166: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[155]

CONCLUSIONES DEL PROYECTO

Tras la realización de este proyecto, se podría concluir comentando algunas de sus

numerosas soluciones específicas, figuras, algoritmos, técnicas,… para, así, extraer

cierto conocimiento práctico de los datos propuestos, como p.e. cuál es la técnica

que mejor desempeña su labor dadas unas condiciones generales, o qué solución

es la más aceptada en el mundo científico,… Muchos autores realizan este tipo de

conclusiones y son totalmente legítimas, sin embargo, personalmente, quiero

realizar otro tipo de conclusión. Esto se debe a dos factores:

1. Debido a la gran cantidad de temas (muy diferentes entre sí) presentes en

esta memoria, es difícil escoger un conjunto de soluciones reducido para

realizar una conclusión.

2. Las soluciones vienen y van, sin embargo, las ideas subyacentes de los

trabajos realizados permanecen. Dichas ideas son en numerosas ocasiones

una fuente de inspiración tanto para la creatividad como para la ciencia.

Realizando este proyecto se han extraído numerosas ideas subyacentes, muchas de

las cuales son ya sabidas, aunque nunca viene mal recordarlas.

En primer lugar, la web es un dominio muy variable y complejo. Dada su

descentralización y la aportación continua de elementos por parte de un amplio

número de usuarios, cambia constantemente tanto de contenido como de forma.

Esto genera numerosas complicaciones a los análisis realizados sobre la misma,

además de al diseño de herramientas en dicho contexto. Por tanto, al diseñar una

herramienta debemos tener que en cuenta qué parte del dominio queremos tratar,

ya que intentar captar todo el dominio puede resultar prácticamente utópico.

Page 167: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[156]

Sin embargo, aunque parezca contradictorio, el mayor problema de la web puede

ser a la vez una de las mayores esperanzas en el mundo científico. En la actualidad,

la mayoría de los científicos dominan un conjunto amplio o reducido de técnicas

aplicables a distintos tipos de datos. Lo que realmente escasea, hoy en día, son los

dominios en los cuales aplicar dichas técnicas. El dinamismo de la web produce

que cada día aparezcan nuevos problemas a resolver y nuevos dominios a

explorar. Esto viene a decir que la web es una de las manos que da de comer a la

ciencia (nos referimos a las áreas concernientes a la Inteligencia Artificial), y que

los científicos simplemente tienen que buscar en ella posibles huecos donde

realizar sus investigaciones.

Si ya lo decía Albert Einstein: “Lo importante no es encontrar las respuestas

correctas, si no la pregunta correcta”. ¡Qué razón tenía!

El autor

Page 168: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[157]

REFERENCIAS

Baeza-Yates R. (2004) Excavando la web. El profesional de la información, vol.13, 1,

pp. 4-10.

Blachman N., Peek J. (2007) Google Guide: How Google Works.

http://www.googleguide.com/google_works.html, Google tips, tricks, & how

Google works.

Brin S., Page L. (1998) The Anatomy of Large-Scale Hupertextual Web Search

Engines. Seventh International World Wide Web Conference (WWW7) / Computer

Networks, 30, pp. 107-117.

Broder A., Kumar R., Maghoul F., Raghavan P., Rajagopalan S., Stata R., Tomkins A.,

Wiener J. (2000) Graph structure in the web. Computer Networks, 33, pp. 309-320.

de Kunder M. (2008) WorldWideWebSize.com – Daily estimated size of the World

Wide Web. http://www.worldwidewebsize.com/. Tilburg University, Holanda.

Doyle P. (1998) Search Methods. http://www.cs.dartmouth.edu/~brd/

Teaching/AI/Lectures/Summaries/search.html. Computer Science Department.

Stanford University.

Ellsworth J., Ellsworth, M.V. (1995). Marketing on the Internet: Multimedia

Strategies for the World Wide Web. New York: John Wiley & Sons. [Citado por:

Moreno Jimenez P.M., 2005]

Page 169: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[158]

Figuerola C.G., Alonso Berrocal J.L., Zazo Rodríguez A.F. (2000) Diseño de un

motor de recuperación de la información para uso experimental y educativo.

Facultad de Documentación, Universidad de Salamanca

Fuentes Fernández R., Pavón J. (2003) Agentes para la recuperación de

información especializada en Internet. Facultad de Informática de la Universidad

Complutense de Madrid, Madrid.

Gruber T. (1993). A Translation Approach to Portable Ontology Specifications.

http://www-ksl.stanford.edu/kst/what-is-an-ontology.html

Han J., Kamber M. (2001) Data Mining: Concepts and Techniques. Morgan

Kaufmann, San Francisco, CA. [Citado por Mobasher, 2007]

Joachims T., Freitag D., and Mitchell,T. (1997) WebWatcher: a tour guide for the

world wide web. In Proceedings of International Joint Conference cial Intelligence

(IJCAI), volume 1, pages 770 - 777. Morgan Kaufmann publishers Inc.: San Mateo,

CA, USA.

Kleinberg, J. M. Authoritative sources in a hyperlinked environment. Journal of the

ACM, 1999, p. 668-677.

Kohavi R., Provost F. (2001) Applications of data mining to electronic commerce.

Data Mining and Knowledge Discovery, 5 [Citado por Mobasher, 2007]

Lang K. (1995) NewsWeeder: Learning to Filter Netnews. Proceedings of the

Twelfth International Conference on Machine Learning (ICML '95), pp 331-339,

San Francisco, CA, USA, 1995.

Lara Navarra P., Martínez Usero J. A. (2004) Agentes Inteligentes para la

recuperación de Información. BARCELONA: Planeta UOC S.L. ISBN: 84-9707-571-4

Lieberman H. (1995) Letizia: An Agent That Assists Web Browsing. In Proceedings

of the Fourteenth International Joint Conference on Artificial Intelligence (IJCAI-95),

Page 170: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[159]

pp924-929, Montreal, Quebec, Canada, 1995. Morgan Kaufmann publishers Inc.:

San Mateo, CA, USA.

Liu B. (2006a) Information Retrieval and Web Search. En Liu B., Web Data Mining

(pp. 183-236), Springer.

Liu B. (2006b) Link Analysis. En Liu B., Web Data Mining (pp. 237-271), Springer.

Markoff J. (2005) In Silicon Valley, a Debate Over the Size of the Web. The New York

Times, August 15, 2005.

Méndez Rodríguez E.M. (1999) Sistemas de búsqueda y recuperación de

Información, Universidad Carlos III de Madrid.

Mladenic D. (1999) Text learning and related intelligent agents. IEEE Expert,

July/August 1999.

Mobasher B. (2007) Data Mining for Web Personalization. En Brusilovsky P., Kobsa

A., Nejdl W. (Eds.). The Adaptive Web, Methods and Strategies of Web

Personalization. Springer, ISBN: 978-3-540-72078-2.

Moreno Jiménez P.M. (2005) Estrategias y mecanismos de búsqueda en la web

invisible. http://biblio.colmex.mx/recelec/web_invisible.htm. Biblioteca Daniel

Cosío Villegas, El Colegio de México A.C.

Noy N., McGuiness D. (2000) Ontology Development 101: A Guide to Creating Your

First Ontology. http://protege.stanford.edu/publications/ontology_development/

ontology101-noy-mcguinness.html

Pazzani M., Billsus D. (1997) Learning and Revising User Profiles: The

Identification of Interesting Web Sites. Machine Learning, 27(3), pp313-331.

Pazzani M., Billsus D. (2007) Contend-Based Recommendation Systems. En

Brusilovsky P., Kobsa A., Nejdl W. (Eds.). The Adaptive Web, Methods and Strategies

of Web Personalization. Springer, ISBN: 978-3-540-72078-2.

Page 171: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[160]

Rocchio J.J. (1971) Relevance feedback in information retrieval. The SMART

Retrieval System. Experiments in Automatic Document Processing, pp313–323.

Prentice Hall. [Citado por Figuerola C.G. et al, 2000]

Roman U., Alarcón L. (2005) Minería de uso de web para predicción de usuarios en

la universidad. Universidad Nacional Mayor de San Marcos, ISSN: 1815-0268.

Salton G. (1989) Automatic text processing: the transformation, analysis, and

retrieval of information by computer. Addison-Wesley. [Citado por Figuerola C.G. et

al, 2000]

Salton G., McGill M. (1983) Introduction to modern information retrieval. McGraw-

Hill. [Citado por Figuerola C.G. et al, 2000]

Schwab I., Kobsa A., Koychev I. (2000) Learning about Users from Observation.

AAAI 2000 Spring Symposium: Adaptive Use Interface.

SEOmoz Company Staff. (2006) A Little Piece of the Google Algorithm – Revealed.

http://www.seomoz.org/blog/a-little-piece-of-the-google-algorithm-revealed.

Serrano Cinca C. (2003) Encontrar información en el World Wide Web,

http://ciberconta.unizar.es/LECCION/BUSCAR/, Sistemas Informativos Contables.

Sherman C., Price G. (2001). The invisible Web. CyberAge Books. [Citado por:

Moreno Jimenez P.M., 2005]

SRU (2007) CQL: Contextual Query Language (SRU Version 1.2 Specifications).

http://www.loc.gov/standards/sru/specs/cql.html. Library of Congress, USA.

Wooldridge M., Jennings N.R. (1995) Intelligent Agents: Theory and Practice. The

Knowledge Engineering Review, 10, pp. 115-152.

Youngblood G. M. (1999) Web Hunting: Design of a Simple Intelligent Web Search

Agent. http://www.acm.org/crossroads/xrds5-4/webhunting.html Association for

Computer Machinery.

Page 172: Memoria del Proyecto Final de Carrera...Tras emplear gran parte del tiempo de este proyecto a indagar y analizar esos documentos se realizará un estudio teórico y crítico, tanto

[161]

Yu P., Li X., Liu B. (2004) On the temporal dimension of Search. WWW 2004, May

17-22, 2004, New York, NY USA.

Zipf G. K. (1949) Human behavior and the principle of least effort: An introduction to

human ecology, Addison-Wesley. [Citado por Broder et al, 2000]

Las referencias bibliográficas incluidas son las más relevantes a juicio del autor y

sirven como punto de partida para ahondar en el tema.