cargando menú...

inicio

temario

calendario

tutoría

notas

cambios

comunica

servicios

buscar

salir
Situación en la jerarquía: Fundamentos -> Primera parte -> Unidad F092 -> Artículo
Master en Buscadores
Artículo F092. Estructura y funciones de un motor de búsqueda
Autor: Lluís Codina

Usuario: . Tipo de página: contenido. Fichero: pag103.htm
[imprimir] · [exportar a Openoffice]

Citación recomendada: Lluís Codina. Artículo F092. Estructura y funciones de un motor de búsqueda [en línea]. En Cristòfol Rovira; Lluís Codina (dir.). Máster en Buscadores. Barcelona: Área de Ciencias de la Documentación. Departamento de Periodismo y de Comunicación Audiovisual. Universidad Pompeu Fabra, 2007. http://www.masterenbuscadores.com [Consulta: 14 febrero 2008]

Sumario
1. Introducción
2. Sistemas de información documental
3. Estructura de un motor de búsqueda
4. Rastreador del motor de búsqueda
5. Sistema de recuperación de información
   5.1. Sistema de indización
      5.1.1. Índices directos
      5.1.2. Índices invertidos
6. Interfaz de consulta
   6.1. Cálculo de relevancia
      6.1.1. Criterios intrínsecos
      6.1.2. Criterios externos
7. Página de resultados
8. Conclusiones
9. Bibliografía

Nota sobre la evaluación: de forma intercalada en el texto de este artículo encontrará el enunciado de diversas actividades. Para superar esta unidad didáctica deberá realizar estas actividades redactando un informe en el que se incluyan comentarios y, en caso que sea pertinente, una captura de pantalla de cada actividad para ilustrar su realización. Para entregar este informe deberá crear un solo documento para todos las actividades de esta unidad didáctica en formato OpenOffice o Word y de un máximo de 500 Kb. A continuación podrá usar el espacio de entrega y notificación perteneciente a este grupo de unidades didácticas. La realización de forma satisfactoria de este ejercicio implicará la obtención de 0,75 créditos.

1. Introducción

Los motores de búsqueda son los más importantes sistemas de información documental de nuestro tiempo. Forman parte del paisaje de Internet de una manera que parece definitiva. Nadie imagina hoy la posibilidad de explotar la inmensa riqueza de la Web sin el auxilio de los motores de búsqueda cuyas funciones no han dejado ni de aumentar ni de experimentar cambios desde su temprana aparición en los años 90.

2. Sistemas de información documental

Una forma de entender las funciones de un motor de búsqueda consiste en concebirlo como una clase de sistema de información documental, que se puede representar con el diagrama (Ilustración 1) que mostramos a continuación:


Ilustración 1: Diagrama de un Sistema de Información documental

Podemos ver que un sistema documental (tal como un motor de búsqueda) acepta dos clases de entradas: Documentos y Necesidades de Información. Los documentos en nuestro caso son páginas web principalmente y las necesidades de información son las preguntas de los internautas. La salida del sistema es una lista de sitios web que, presumiblemente, contienen información capaz de satisfacer las necesidades de información del usuario, de aquí que la salida se rotule con el (optimista) texto de Personas informadas . Naturalmente, si la primera consulta no da buenos resultados, lo lógico es que el usuario (el internauta) haga algún intento más. Esto queda representado por la elipse rotulada con la palabra Control . Es decir, se supone que el usuario examina la relevancia de los resultados y si no le satisfacen, reitera la pregunta usando otros términos o introduciendo algún otro tipo de cambios.

3. Estructura de un motor de búsqueda

Un motor de búsqueda (MDB a partir de ahora) consiste en un conjunto de programas que trabajan en cooperación. Estos programas se pueden distribuir en dos grupos principales:

  • Sistema de exploración o Rastreador (en inglés: spyder o crawler )

  • Sistema de recuperación de información (en inglés: information retrieval system )

Cada uno de estos sistemas se compone de otros subsistemas (Ilustración 2) que analizaremos a continuación:


Ilustración 2: Estructura y funciones de un Motor de Búsqueda

4. Rastreador del motor de búsqueda

El rastreador, o sistema de exploración tiene la misión de descubrir y descargar páginas web y otros documentos de Internet. Para ello, parte de una lista de URL o direcciones de páginas web (1). A partir de ella accede a documentos (2) publicados en la web. Descarga esos documentos, en su mayoría páginas web, pero también documentos ofimáticos, presentaciones, archivos de imágenes, etc. en el almacén o repositorio de documentos del MDB (3). A partir de las páginas descargadas, el rastreador obtiene nuevas URL (4) que añade a su lista de URL pendientes de analizar (5).

Las tareas del rastreador son más complejas si se analizan con detalle, pero dado que tenemos una unidad dedicada a los rastreadores, en lo que sigue, nos concentraremos en el sistema de recuperación de información.

  • Actividad 1: Acuda a la versión inglesa de Wikipedia ( http://en.wikipedia.org/wiki/Web_crawler ) y haga una revisión del artículo, aunque sea en diagonal, prestando atención a los diagramas y a la lista de crawlers que presenta el artículo. Alternativa : Vaya a la versión española de la Wikipedia ( http://es.wikipedia.org/wiki/Web_crawler ) ¿Qué le parece el artículo examinado?. ¿Propondría algún cambio al mismo?

5. Sistema de recuperación de información

El sistema de recuperación de información tiene a su vez dos componentes:

  • Sistema de indización

  • Sistema de consulta

El primero de ellos se ocupa del análisis de los documentos descargados de la web y de la creación de los índices que permiten luego las consultas al motor; mientras que el segundo constituye la interfaz visible del MDB, precisamente la parte con la que interactúan los usuarios.

5.1. Sistema de indización

Si el MDB puede responder preguntas en el asombrosamente breve tiempo al que nos han acostumbrado los otros motores de búsqueda (típicamente, fracciones de segundo), es porque no exploran la web para los usuarios en tiempo real, es decir, en el momento de la consulta.

Un sistema que pretendiera explorar de forma secuencial los documentos de la web para ofrecer respuestas no tendría el más mínimo sentido. Podrían transcurrir mese o años entre la pregunta y la respuesta. Si un estudiante hiciera su pregunta en primer curso de la carrera, cuando obtuviese la respuesta ya se habría licenciado (eso si no suspendió curso esperando la respuesta del motor). En lugar de lo anterior, lo que hacen los motores es consultar sus índices internos.

  • Actividad 2: Haga diversas consultas en Google o en Yahoo y compare los tiempos de respuestas (indicados en una barra situada justo sobre la lista de resultados). Compruebe si, con diferentes preguntas, por ejemplo con términos relativamente específicos (como "stradivarius") o con términos mucho más genéricos (como "música") los tiempos de respuesta son muy distintos o, en general, los tiempos son similares. Cabe esperar que no haya diferencias apreciables. El motivo se discutirá más adelante.

5.1.1. Índices directos

Los MDB utilizan al menos dos clases de índices, denominados respectivamente índices directos e índices invertidos. Las consultas las resuelven los índices invertidos , mientras que los índices directos , que son los que vamos a ver ahora, se utilizan como elementos de gestión y control internos.

En un índice directo tenemos la lista de documentos (o de registros) en un orden cronológico (el documento más antiguo primero, por ejemplo) o numérico (del documento número 1 hasta el último). La siguiente figura ilustra esta clase de índices:

Núm. Documento

Contenido

00001

Título: Manual de lenguajes documentales Autor: Blanca Gil

00002

Título: Diseño y construcción de sitios con Dreamweaver 8 Autor: Marc Campbell

...

...

34567

Título: Aprender a razonar Autor: Fina Pizarro

Tabla 1: Representación de un índice directo

Como podemos ver, con este índice, para saber si hay un documento con las palabras “aprender” y “razonar”, tendríamos que recorrer decenas de miles de entradas del índice (concretamente 34.567). Lo peor es que, si el índice completo tuviera, por ejemplo, cien mil entradas, habría que recorrer las cien mil entradas del índice para saber si hay más de un documento que cumpla la condición anterior.

Como es fácil suponer, esta clase de índices no mejora mucho en relación al supuesto rastreo en tiempo real de la Web con el que especulábamos antes. Por tanto, un MDB necesita complementar este índice con un índice invertido, que es el que se utiliza realmente para responder a las consultas (mientras que el índice directo se utiliza para aspectos de gestión y administración internos).

5.1.2. Índices invertidos

La estructura de un índice invertido es exactamente la inversa de la anterior (de aquí el nombre), a saber: consiste en una lista ordenada de todas y cada una de las palabras que aparecen en los distintos documentos asociadas a los documentos concretos en los que aparecen. La estructura típica de un índice invertido, por tanto es la siguiente:

Término único

Frecuencia

Ubicación

Aprender

110

(34567, 01, 01) ...

...

...

...

Blanca

233

(00001, 02, 01) ...

...

...

...

Campbell

6

(00002, 02, 02) ...

...

...

...

Razonar

214

(34567, 01, 03) ...

...

...

...

Tabla 2: Representación de un fichero invertido

La explicación:

  • En Término único aparecen las distintas palabras de los documentos, pero solamente aparece una fila por cada palabra (aunque en el conjunto de los documentos aparezca muchas veces).

  • En la columna Frecuencia tenemos el número total de veces que aparece cada término.

  • Por último, en Ubicación tenemos una clave en forma de vector donde aparece el número de documento, la zona o campo donde aparece la palabra y el orden de la palabra. Habrá un vector por cada ocurrencia.

Veamos esto último con más detalle. Tomemos el término “Aprender”. Tenemos que la columna de Frecuencia señala: “110” . Esto significa que “Aprender” aparece 110 veces en el conjunto de los documentos, y que habrá por tanto 110 vectores distintos en la columna Ubicación . Nosotros solamente hemos representado uno de ellos para simplificar. Tomemos ahora este mismo vector [ (34567, 01, 01) ] y veámoslo con detalle. El primer número, 34567, es el que identifica el documento, el segundo, 01, identifica el campo o zona del documento donde aparece la palabra, en este caso, Título .

Otros índices auxiliares ayudan al MDB a recorrer la lista de términos únicos con un pequeño número de operaciones de comparación. Lo mejor de todo es que esta clase de índices hace que el tiempo de respuesta sea virtualmente independiente del número de términos que aparecen en la lista.

El problema principal con estos índices es la cantidad de recursos de hardware que requieren, particularmente, si se debe dar servicio a miles de usuarios simultáneamente.

Actividad 3: Google utiliza alguna versión del tipo de índice invertido que hemos mostrado. Para ver que estos índices son eficaces, pero no permiten hacer milagros, haga una consulta en Google por un término muy frecuente (p.e. Televisión) y compruebe si le resulta posible llegar al resultado número mil (es decir, compruebe si puede llegar a la página de resultados número 100). Probablemente, no podrá. Hasta hora, el motivo no estaba documentado, pero era fácil deducir que Google tiene una cantidad máxima de memoria RAM que puede asignar a cada usuario y por tanto no puede cargar toda la información de sus índices. Una solución técnica consiste en no cargar más de n referencias en memoria para cada consulta.

Para que el MDB pueda construir su índice necesita a su vez un procedimiento que le permita analizar las páginas web y extraer los términos de las mismas que formarán parte del índice, y para ello a su vez necesita poder determinar qué es y qué no es un término.

El algoritmo más fácil determinaría que son términos todas las cadenas de caracteres situadas entre espacios en blanco. Sin embargo este algoritmo produciría muchos errores. Por ejemplo, no seleccionaría las palabras iniciales de cada frase ni sabría tratar las que estuvieran rodeadas de signos ortográficos; por otro lado, tampoco conviene identificar como términos las palabras sin significado propio, como los pronombres y los artículos, etc.

6. Interfaz de consulta

Las funciones que desempeña son las siguientes:

  • En primer lugar, el formulario de consulta sirve para enviar la pregunta a otra parte del sistema que compara los términos de la pregunta con el índice invertido y filtra de este modo las páginas web que contienen los términos de la pregunta.

  • En segundo lugar, el MDB debe presentar los resultados de la forma más clara y eficiente posible a través de la Página de resultados del motor de búsqueda (search engine results page).

  • Por último, pero posiblemente lo más importante de todo, los resultados deben mostrarse en algún orden significativo, y de entrada podemos descartar el orden alfabético o el cronológico, dada su escasa utilidad en un contexto tan heterogéneo y con la inmensa cantidad de documentos que hay en Internet. Aquí interviene el denominado algoritmo de cálculo de relevancia, al que dedicaremos el resto de este apartado.

Actividad 4: Vaya a Yahoo Search ( http://es.search.yahoo.com/ ) y acceda al formulario de búsqueda avanzada y examine la opción Formato. ¿Cuántos tipos distintos de documentos permite buscar? (En el momento de preparar esta unidad podían buscarse siete formatos distintos). Haga pruebas con la misma palabra clave pero con distintos formatos. Observe el número total de formatos disponibles y si probando con distintos formatos ha obtenido mejor (o peor) relevancia.

6.1. Cálculo de relevancia

En recuperación de información se considera que los distintos documentos de un fondo presentan un grado de relevancia diferente para cada pregunta o necesidad de información. Ante una pregunta dada, en un extremo tendremos a los documentos cuya relevancia será cero (por no tener ninguna relación con la pregunta). En el otro extremos tendremos (con suerte) documentos cuya relevancia será total (o casi total). En zonas intermedias tendremos documentos con diversos grados de relevancia.

Si la expresamos con tanto por ciento, tendremos un espectro que irá del 0% de relevancia al 90% o al 100% de relevancia con zonas intermedias donde habrá documentos con el 10%, el 25% o el 70% de relevancia, etc.

Lo más lógico será presentar la página de resultados con los documentos ordenados según su grado de relevancia. Esta ordenación se denomina también ranking. De este modo, aunque haya miles y miles de documentos relevantes en la respuesta, podremos limitarnos a consultar los 10 o 20 primeros, puesto que se supone que son los más relevantes. Otros modos de ordenación, como el alfabético o el cronológico no nos permitirían tal economía de consulta. Para estar seguros que accedemos a los más relevantes ¡tendríamos que examinar la lista completa!

Los MDB actuales suelen combinar dos grupos de criterios para determinar la relevancia de una página web:

  • Criterios internos o intrínsecos

  • Criterios externos o de popularidad

6.1.1. Criterios intrínsecos

Los criterios internos se refieren principalmente a aspectos estadísticos o de frecuencia de ocurrencia de la palabra (o palabras) clave de la pregunta. En concreto, las páginas web que tengan mayor densidad de la palabra clave, serán más relevantes.

Otros aspectos, como que la palabra clave aparezca rodeada de etiquetas como <h1> o <h2> también otorga mayor importancia relativa a la página correspondiente, y sobre todo, al hecho de que la palabra clave forme parte de la URL de la página.

6.1.2. Criterios externos

Los criterios externos se refieren al resultado que pueda arrojar el análisis de los enlaces de entrada de la página considerada.

Cada MDB tiene sus propios conjuntos de criterios y sus propias reglas para asignar pesos a cada criterio, pero en general, el número de enlaces que recibe una página suele ser uno de los más importantes, al menos a igualdad de los otros factores.

7. Página de resultados

Por último, la respuesta del motor con la lista de documentos organizados en un ranking debe presentarse de alguna forma. De este aspecto se ocupa precisamente la página de resultados (PDR a partir de ahora).

Las funciones de la PDR, más allá de poder hacer clic en ellos y, por alguna razón, suelen pasar desapercibidas. Tal vez está bien que sea así, porque cada vez que se han hecho intentos en contra, parece el motor ha perdido popularidad.

En este sentido, a simple vista, la PDR ofrece una lista de páginas o documentos y ya está. Sin embargo, una mirada atenta a la PDR de, por ejemplo, Google, nos muestra las siguientes informaciones y opciones:

(1) Número total de páginas que contienen la palabra clave.

(2) La sección de resultados de pago (resultados patrocinados).

(3) La sección de resultados no pagados (resultados orgánicos). De cada uno de estos resultados, tenemos la siguiente información:

  • Título de la página (o del documento)

  • El tipo del documento (cuando no es HTML)

  • Unas líneas de descripción del contenido del documento

  • URL de la página

  • Tamaño de la página web (no de los archivos enlazados)

(4) Y las siguientes opciones:

  • Obtener una versión traducida de la página con traducción automática (o sea, en general muy deficiente)

  • Ver la página en la caché de Google

  • Buscar páginas con contenidos similares

  • Navegación secuencial entre los resultados o yendo a una página de resultados concreta (hasta la página 90 más o menos)

  • Restringir la siguiente búsqueda a los resultados obtenidos

Actividad 5: Vaya a Ask ( www.ask.com ), haga una pregunta por cualquier término (p.e. “television digital”) y observe la página de resultados. Compárela con la página de resultados de Google (vea la lista superior). ¿Ofrece las mismas opciones? ¿Hay alguna opción en Ask que no esté en Google -o al revés-? ¿Cuál le parece mejor?

8. Conclusiones

Conocer los aspectos estructurales y funcionales que hemos examinado aquí nos ayudará sin ninguna duda en nuestra relación con los motores de búsqueda. Conocer un poco mejor los fundamentos de los motores nos ayudará a llevar a cabo mejores búsquedas, pero seguramente, nos ayudará también a desarrollar sitios web más amistosos con los motores de búsqueda, y por supuesto, debería ayudarnos a desarrollar mejores campañas de posicionamiento.

9. Bibliografía

Abadal, E,; Codina, L. “Recuperación de información”. En: Bases de datos documentales: Características, funciones y método. Madrid: Síntesis, 2005

Chu, H. Information representation and retrieval in the Digital Age. Medford: Information Today, 2003

Codina, L. “Modelo conceptual de un sistema de información documental”. Revista española de documentación científica , v. 17, n. 4, Octubre-diciembre 1994, p. 44-53

Codina, L. “Cómo funcionan los servicios de búsqueda en Internet: un informe especial para navegantes y creadores de información”. Partes I y II. Information world en español , 1997

Kowalski, G. “Automatic indexing”. En: Information Retrieval Systems: Theory and Implementation . Boston: Kluwer, 1997

Liu, B. “Information retrieval and Web Search. En: Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data . Berlin: Springer, 2007

Milstein, S.; Biersdorfer, J:D.; MacDonald, M. Google: The Missign Manual. Sebastopol: O`Reilly, 2006



inicio temario calendario tutoría notas cambios comunica servicios buscar salir

© Master en Buscadores (IDEC-UPF)
14/2/2008