LNR Ingles Teoria (1) - 1

También podría gustarte

Está en la página 1de 132

Machine Translated by Google

1. Recuperación de
información: Introducción

W. Bruce Croft, Donald Metzler, Trevor Strohman. Los motores de búsqueda. Recuperación de información en la práctica, Pearson Education 2015
Machine Translated by Google

Búsqueda y Recuperación de Información

• La búsqueda en la Web es una actividad diaria para muchas


personas en todo el mundo

• La búsqueda y la comunicación son los usos más


populares de la computadora y los teléfonos inteligentes
• Las aplicaciones relacionadas con la búsqueda están en todas partes

• El campo de la informática que es más


involucrado con I + D para la búsqueda es la recuperación de

información (IR)
Machine Translated by Google

Recuperación de información

• “La recuperación de información es un campo relacionado


con la estructura, el análisis, la organización, el
almacenamiento, la búsqueda y la recuperación de informac
(Saltón, 1968)

• Definición general que se puede aplicar a muchos tipos de


información y aplicaciones de búsqueda.

• El enfoque principal de IR desde los años 50 ha sido


el texto y los documentos
Machine Translated by Google

¿Qué es un documento?

• Ejemplos:
– páginas web, correo electrónico, libros, noticias, patentes,
artículos académicos, Word™, Powerpoint™, PDF,
publicaciones en foros, mensajes de texto, whatsapps, tweets,
etc.

• Propiedades comunes
– Contenido de texto significativo

– Alguna estructura (p. ej., título, autor, fecha de los trabajos;


asunto, remitente, destino del correo electrónico)
Machine Translated by Google

Documentos frente a registros de bases de datos

• Los registros de la base de datos (o tuplas en las


bases de datos relacionales) suelen estar formados
por campos (o atributos) bien definidos .
– por ejemplo, registros bancarios con números de cuenta,
saldos, nombres, direcciones, números de seguro social ,
fechas de nacimiento, etc.

• Campos fáciles de comparar con bien definidos


semántica a las consultas para encontrar coincidencias
• El texto es más difícil
Machine Translated by Google

Documentos vs Registros

• Ejemplo de consulta de base de datos bancaria

– Encuentre registros con saldo > $50,000 en sucursales ubicadas en


Amherst, MA.

– Coincidencias fácilmente encontradas por comparación con el campo


valores de registros

• Ejemplo de consulta de motor de búsqueda


– escándalos bancarios en masa occidental

– Este texto debe compararse con el texto de toda la


noticias
Machine Translated by Google

Comparando texto
• Comparar el texto de la consulta con el texto del
documento y determinar cuál es una buena coincidencia
es el tema central de la recuperación de información.

• La coincidencia exacta de palabras no es suficiente


– Muchas maneras diferentes de escribir lo mismo en
lenguaje natural
– por ejemplo, ¿una noticia que contenga el texto “director
de banco en Amherst roba fondos” coincide con la
consulta?
– Algunas historias serán mejores coincidencias que otras
Machine Translated by Google

Dimensiones de IR

• IR es más que solo texto y más que solo búsqueda


web (aunque estos son centrales)

• Personas que realizan trabajos de IR con diferentes


medios, diferentes tipos de aplicaciones de
búsqueda y diferentes tareas
Machine Translated by Google

Otros medios

• Las nuevas aplicaciones implican cada vez más nuevos


medios de comunicación

– por ejemplo, video, fotos, música, voz

• Al igual que el texto, el contenido es difícil de describir y


comparar
– se puede usar texto para representarlos (por ejemplo, etiquetas)

• Enfoques IR para buscar


Machine Translated by Google

Dimensiones de IR
Contenido Aplicaciones Tareas

Texto búsqueda Web Búsqueda ad hoc

Imágenes Búsqueda vertical Filtración

Video Búsqueda empresarial Clasificación

documentos escaneados Búsqueda de escritorio pregunta respondiendo

Audio búsqueda en el foro

Música búsqueda P2P

Busqueda de literatura

• Búsqueda vertical: forma de búsqueda web donde el dominio de la


búsqueda se restringe a un tema en particular
• Búsqueda empresarial: a través de una intranet corporativa
• Búsqueda punto a punto: encontrar información en redes de nodos o
computadoras sin ningún control centralizado
Machine Translated by Google

Tareas de infrarrojos

• Búsqueda ad-hoc
– Encuentre documentos relevantes para una consulta de texto arbitraria:
búsqueda basada en una consulta de usuario

• Filtrado o seguimiento
– Identificar perfiles de usuario relevantes para un nuevo documento: detectar
historias de interés en función de los intereses de una persona y
proporcionar una alerta mediante correo electrónico o algún otro mecanismo .

• Clasificación
– Identificar etiquetas relevantes para documentos

• Respuesta a preguntas
– Dar una respuesta específica a una pregunta.
Machine Translated by Google

Grandes problemas en IR

• Relevancia
- ¿Qué es?

– Definición simple (y simplista): Una


documento contiene la información que una
persona estaba buscando cuando envió una
consulta al motor de búsqueda
– Muchos factores influyen en la decisión de una persona sobre
lo que es relevante: por ejemplo, tarea, contexto, novedad, estilo
– Relevancia temática (mismo tema) vs. relevancia del
usuario (todo lo demás)
Machine Translated by Google

Grandes problemas en IR

• Relevancia
– Los modelos de recuperación definen una vista de relevancia

– Los algoritmos de clasificación utilizados en los motores de búsqueda son


basado en modelos de recuperación

– La mayoría de los modelos describen propiedades estadísticas de


texto más que lingüístico
• es decir, contar características de texto simple como palabras en su lugar
de analizar y analizar las oraciones

• El enfoque estadístico del procesamiento de textos comenzó con


Luhn en los años 50

• Las características lingüísticas pueden ser parte de un modelo estadístico


Machine Translated by Google

Grandes problemas en IR

• Evaluación
– Procedimientos y medidas experimentales para
comparar la salida del sistema con las expectativas del usuario

– Los métodos de evaluación IR ahora se usan en muchos campos


– Por lo general, utilice la recopilación de pruebas de
documentos, consultas y juicios de relevancia .

– La memoria y la precisión son dos ejemplos de


medidas de eficacia
Machine Translated by Google

Grandes problemas en IR

• Usuarios y Necesidades de Información


– La evaluación de la búsqueda está centrada en el usuario

– Las consultas de palabras clave suelen ser descripciones deficientes de


necesidades reales de información

– La interacción y el contexto son importantes para comprender la


intención del usuario

– Técnicas de refinamiento de consultas como query


expansión, sugerencia de consulta (p. ej ., revisión ortográfica),
retroalimentación de relevancia (expande las consultas en función de las
apariciones de términos en documentos que el usuario identifica como relevantes)

mejorar la clasificación
Machine Translated by Google

IR y motores de búsqueda

• Un motor de búsqueda es la aplicación práctica de técnicas


de recuperación de información a colecciones de texto a
gran escala .

• Los motores de búsqueda web son los ejemplos más conocidos


(por ejemplo, Google), pero muchos otros
– Los motores de búsqueda de código abierto son
importantes para la investigación y el desarrollo: por
ejemplo, Lucene, Lemur/Indri, Elasticsearch, Nutch, Whoosh
Machine Translated by Google

IR y motores de búsqueda

Recuperación de información Los motores de búsqueda

Actuación
Relevancia
-Búsqueda e indexación eficientes
-Clasificación efectiva
Incorporando nuevos datos
Evaluación
-Cobertura y frescura
-Prueba y medición

Necesidades de información Escalabilidad


-Creciendo con datos y usuarios
-Interacción del usuario
Adaptabilidad
-Tuning para aplicaciones

Problemas específicos -por


ejemplo, Spam
Machine Translated by Google

Problemas del motor de búsqueda

• Rendimiento
– Medir y mejorar la eficiencia de la búsqueda

por ejemplo, reducir el tiempo de respuesta, aumentar el
rendimiento de las consultas , aumentar la velocidad de indexación

– Los índices son estructuras de datos diseñadas para mejorar


eficiencia de búsqueda
• diseñarlos e implementarlos son problemas importantes para los
motores de búsqueda
Machine Translated by Google

Problemas del motor de búsqueda

• Datos dinámicos
– La colección para la mayoría de las aplicaciones reales
cambia constantemente en términos de actualizaciones,
adiciones, eliminaciones

por ejemplo paginas web
– Adquirir o rastrear los documentos es una de las principales
tarea

• Las medidas típicas son la cobertura (cuánto se ha


indexado) y la actualización (cuán recientemente se indexó)
– Actualizar los índices mientras se procesan las consultas también
es un problema de diseño
Machine Translated by Google

Problemas del motor de búsqueda

• Escalabilidad
– Hacer que todo funcione con millones de usuarios
todos los días y muchos terabytes de documentos
– El procesamiento distribuido es esencial

• Adaptabilidad
– Cambio y puesta a punto de los componentes del motor de búsqueda
como algoritmo de clasificación, estrategia de
indexación, interfaz para diferentes aplicaciones
Machine Translated by Google

Correo no deseado

• Información inapropiada o no relevante en un documento que está


diseñado para algún beneficio comercial

• Para la búsqueda web, el spam en todas sus formas es uno de los


principales problemas
• Afecta la eficiencia de los motores de búsqueda y,
más en serio, la eficacia de los resultados
• Muchos tipos de spam
– por ejemplo, spamdexing o término spam (palabras puestas en un
documento para hacer que se recupere en respuesta a consultas
populares), spam de enlaces, "optimización"
• Nuevo subcampo denominado IR adversarial, ya que
Los spammers son “adversarios” con diferentes objetivos
Machine Translated by Google

Metas

• Para ayudarlo a comprender los motores de búsqueda

• Proporcionar una amplia cobertura de los temas


importantes en la recuperación de información y
los motores de búsqueda (incluye modelos subyacentes)
Machine Translated by Google

2. Motores de búsqueda

W. Bruce Croft, Donald Metzler, Trevor Strohman. Los motores de búsqueda. Recuperación de información en la práctica, Pearson Education 2015
Machine Translated by Google

Arquitectura del motor de búsqueda

• Una arquitectura de software consta de software


componentes, las interfaces proporcionadas por esos
componentes y las relaciones entre ellos

• Arquitectura de un motor de búsqueda determinada por


2 requisitos
– eficacia (calidad de los resultados) y eficiencia
(tiempo de respuesta y rendimiento)
Machine Translated by Google

Proceso de indexación
Machine Translated by Google

Proceso de indexación

• Adquisición de texto (rastreador, feeds, almacén de


datos) : identifica y almacena documentos para su

indexación • Transformación de texto (analizador,…, análisis de en


– transforma documentos en términos de índice (o características)

• Creación de índices (estadísticas, ponderación, inversión) :


toma los términos del índice y crea índices (estructuras de
datos) para respaldar la búsqueda rápida
Machine Translated by Google

Proceso de consulta

Datos de registro: por ejemplo , datos de clics que registran los documentos en los que se hizo clic durante una sesión de búsqueda
Machine Translated by Google

Proceso de consulta

• Interacción del usuario


– admite la creación y el refinamiento de consultas,
visualización de resultados

• Clasificación
– utiliza consultas e índices para generar una lista clasificada
de documentos

• Evaluación
– supervisa y mide la eficacia y la eficiencia
Machine Translated by Google

Proceso de indexación
Machine Translated by Google

Adquisición de texto
• rastreador
– Identifica y adquiere documentos para la búsqueda
motor
– Muchos tipos: web, empresa, escritorio
– Los rastreadores web siguen enlaces para encontrar documentos

• Debe encontrar de manera eficiente un gran número de


páginas web (cobertura) y mantenerlas actualizadas (frescura)
• Rastreadores de un solo sitio para la búsqueda de sitios

• Rastreadores tópicos o enfocados para búsqueda vertical


– Rastreadores de documentos para empresas y escritorio
búsqueda

• Seguir enlaces y escanear directorios


Machine Translated by Google

Adquisición de texto
• Fuentes
– Flujos de documentos en tiempo real

por ejemplo, fuentes web para noticias, blogs, videos, radio, televisión, …
– RSS es un estándar común para las fuentes web
• RSS "lector" puede proporcionar nuevos documentos XML para buscar
motor

• Conversión
– Convierta una variedad de documentos en un texto consistente
más formato de metadatos
• por ejemplo, HTML, XML, Word, PDF, etc. ÿ XML
– Convierta la codificación de texto para diferentes idiomas
• Usar un estándar Unicode como UTF-8
Machine Translated by Google

Adquisición de texto
• Almacén de datos de documentos

– Almacena texto, metadatos y otro contenido relacionado para


documentos

• Los metadatos son información sobre el documento, como el tipo


y la fecha de creación .

• Otro contenido incluye enlaces, texto ancla: texto


asociado con un enlace
– Proporciona un acceso rápido al contenido del documento para
componentes del motor de búsqueda

por ejemplo, generación de listas de resultados

– Podría usar un sistema de base de datos relacional


• Por lo general , se usa un sistema de almacenamiento más
simple y eficiente debido a la gran cantidad de documentos
Machine Translated by Google

Proceso de indexación
Machine Translated by Google

Transformación de texto
• Analizador de documentos
– Procesamiento de la secuencia de tokens de texto en
el documento para reconocer elementos estructurales

por ejemplo, títulos, enlaces, encabezados, etc.

– Tokenizer reconoce palabras en el texto


• debe considerar cuestiones como mayúsculas, guiones, apóstrofes, caracteres
no alfabéticos, separadores

– Lenguajes de marcado como HTML, XML a menudo utilizados para


especificar la estructura
• Etiquetas utilizadas para especificar elementos del documento
– Por ejemplo, <h2> Resumen </h2>

• El analizador de documentos utiliza la sintaxis del lenguaje de marcado (u otro


formato) para identificar la estructura
Machine Translated by Google

Transformación de texto

• Detención :
elimine palabras comunes (palabras de
parada) • p. ej., “y”, “o”, “el”, “en”
– Cierto impacto en la eficiencia y la eficacia – Puede ser
un problema para algunas consultas: p. ej., ser o no ser • Stemming –

Agrupar palabras derivadas de una raíz común

• ej., “computadora”, “computadoras”, “computación”, “computar”


– Suele ser eficaz, pero no para todas las consultas
– Los beneficios varían para diferentes idiomas
Machine Translated by Google

Transformación de texto

• Análisis de enlaces
– Hace uso de enlaces y texto ancla en páginas web
– El análisis de enlaces identifica la popularidad y la información de
la comunidad.


por ejemplo, PageRank

– El texto de anclaje puede mejorar significativamente la


representación de las páginas a las que apuntan los enlaces

– Impacto significativo en la búsqueda web


• Menor importancia en otras aplicaciones
Machine Translated by Google

Transformación de texto

• Extracción de información
– Identificar clases de términos de índice que son importantes
para algunas aplicaciones

– por ejemplo , los reconocedores de entidades nombradas identifican clases

como personas, ubicaciones, empresas, fechas, etc.

• Clasificador
– Identifica metadatos relacionados con la clase para documentos
• es decir, asigna etiquetas a los documentos


por ejemplo , temas, sentimiento, género

– El uso depende de la aplicación


Machine Translated by Google

Proceso de indexación
Machine Translated by Google

Creación de índices

• Estadísticas de documentos
– Reúne recuentos y posiciones de palabras y otros
caracteristicas

– Utilizado en el algoritmo de clasificación

• Ponderación
– Calcula pesos para términos de índice
– Utilizado en el algoritmo de clasificación

– por ejemplo , peso tf.idf


• Combinación de la frecuencia del término en el documento
y la frecuencia inversa del documento en la colección:
log N/n donde N # de documentos en la colección, n # de
documentos que contienen el término
Machine Translated by Google

Creación de índices

• Inversión
– Núcleo del proceso de indexación

– Convierte información de término de documento a término

documento para indexación •

Difícil para un gran número de documentos

– El formato de archivo invertido está diseñado para un procesamiento


rápido de consultas

• También debe manejar

actualizaciones • Compresión utilizada para la eficiencia


Machine Translated by Google

Creación de índices

• Distribución de índices
– Distribuye índices a través de múltiples computadoras y/o
múltiples sitios

– Esencial para el procesamiento rápido de consultas con grandes


números de documentos

– Muchas variaciones
• Distribución de documentos, distribución de términos, replicación
– P2P e IR distribuido implican búsqueda a través de

múltiples sitios
Machine Translated by Google

Proceso de consulta

Datos de registro: por ejemplo , datos de clics que registran los documentos en los que se hizo clic durante una sesión de búsqueda
Machine Translated by Google

La interacción del usuario

• Entrada de consulta :

proporciona una interfaz y un analizador para el lenguaje de consulta.

La mayoría de las consultas web son muy simples. El lenguaje de

consulta se usa para describir consultas más complejas y los resultados


de la transformación de consulta, por ejemplo, consultas booleanas
• (lenguaje de consulta Indri).

• similar al lenguaje SQL utilizado en aplicaciones de bases de datos •

Los lenguajes de consulta IR también permiten especificaciones de


contenido y estructura, pero se enfocan en el contenido
Machine Translated by Google

La interacción del usuario

• Transformación de consultas
– Mejora la consulta inicial, tanto antes como después de la inicial
búsqueda

– Incluye técnicas de transformación de texto utilizadas


para documentos
– La revisión ortográfica y la sugerencia de consulta brindan
alternativas a la consulta original

– La expansión de la consulta y los comentarios de relevancia modifican la


consulta original con términos adicionales: amplía las consultas en función
de las apariciones de términos en documentos que el usuario identifica
como relevantes
Machine Translated by Google

La interacción del usuario

• Salida de resultados
– Construye la visualización de documentos clasificados para un
consulta

– Genera fragmentos para mostrar cómo las consultas coinciden con


los documentos

– Resalta palabras y pasajes importantes

– Recupera publicidad adecuada en muchas aplicaciones

– Puede proporcionar agrupación y otras visualizaciones


instrumentos
Machine Translated by Google

Proceso de consulta

Datos de registro: por ejemplo , datos de clics que registran los documentos en los que se hizo clic durante una sesión de búsqueda
Machine Translated by Google

Clasificación

• Puntuación
– Calcula puntajes para documentos usando un algoritmo de
clasificación

– Componente central del motor de búsqueda

– La forma básica de puntuación es ÿ qi di



qi y di son ponderaciones de términos de consulta y documento
para el término i

– Muchas variaciones de algoritmos de clasificación y


modelos de recuperación
Machine Translated by Google

Clasificación

• Optimización del rendimiento


– Diseño de algoritmos de clasificación para un procesamiento eficiente
• Procesamiento de un término a la vez : puntajes calculados accediendo
el índice de un término de consulta, calculando la contribución de ese
término a la puntuación de un documento, agregando esta contribución a
un acumulador de puntuación y luego accediendo al siguiente índice

• frente al procesamiento de documentos a la vez : acceda a todos los índices


para los términos de consulta simultáneamente, y calcule puntuaciones
moviendo punteros a través de los índices para encontrar los términos
presentes en un documento

• Optimizaciones seguras: garantiza que las puntuaciones calculadas


ser igual que las puntuaciones sin optimización

• frente a optimizaciones inseguras: no lo hacen


Machine Translated by Google

Clasificación

• Distribución
– Procesamiento de consultas en un entorno distribuido

– Query Broker distribuye las consultas a los procesadores en una red y


ensambla los resultados

– El almacenamiento en caché es una forma de búsqueda distribuida:


los índices o incluso las listas de documentos clasificados de

consultas anteriores se dejan en la memoria local


Machine Translated by Google

Proceso de consulta

Datos de registro: por ejemplo , datos de clics que registran los documentos en los que se hizo clic durante una sesión de búsqueda
Machine Translated by Google

Evaluación
• Registro
– El registro de las consultas y la interacción de los usuarios es crucial
para mejorar la eficacia y la eficiencia de la búsqueda .

– Registros de consultas y datos de clics utilizados para la consulta


sugerencia, corrección ortográfica, almacenamiento en caché de
consultas, clasificación, búsqueda de publicidad y otros componentes

• Análisis de clasificación
– Medir y ajustar la efectividad de la clasificación

• Análisis de rendimiento
– Eficiencia del sistema de medición y ajuste
Machine Translated by Google

3. Rastreos y alimentaciones

W. Bruce Croft, Donald Metzler, Trevor Strohman. Los motores de búsqueda. Recuperación de información en la práctica, Pearson Education 2015
Machine Translated by Google

rastreador web

• Encuentra y descarga páginas web


automáticamente

– proporciona la colección para la búsqueda


• La web es enorme y está en constante crecimiento.

• La web no está bajo el control de los proveedores de motores de


búsqueda

• Las páginas web cambian constantemente

• Los rastreadores también se utilizan para otros tipos de datos


Machine Translated by Google

Recuperación de páginas web

• Cada página tiene un recurso uniforme único


Localizador (URL)

• Las páginas web se almacenan en servidores web que utilizan


Protocolo de transferencia de hipertexto (HTTP) a
intercambiar información con el software del cliente

p.ej
Machine Translated by Google

Recuperación de páginas web

• El programa cliente del rastreador web se conecta a un


Servidor de sistema de nombres de dominio (DNS)
• El servidor DNS traduce el nombre de host a un
Dirección de Protocolo de Internet (IP)

• El rastreador luego intenta conectarse al servidor


host usando un puerto específico (un número de 16 bits que
identifica un servicio en particular) • Después de la conexión, el
rastreador envía un HTTP
solicitud al servidor web para solicitar una página
– generalmente una solicitud GET
Machine Translated by Google

Rastreo de la Web
Machine Translated by Google

rastreador web
• Comienza con un conjunto de semillas, que son un conjunto de URL

dado a él como parámetros

• Las semillas se agregan a una cola de solicitud de URL


• Crawler comienza a obtener páginas de la solicitud
cola

• Las páginas descargadas se analizan para encontrar etiquetas


de enlace que puedan contener otras URL útiles para obtener

• Nuevas URL añadidas a la cola de solicitudes del rastreador,


llamadas frontera (cola estándar o cola ordenada)
• Continúe hasta que no haya más URL nuevas o el disco esté lleno
Machine Translated by Google

Rastreo web
• Los rastreadores web pasan mucho tiempo esperando
respuestas a las solicitudes
• Para reducir esta ineficiencia, los rastreadores web usan
subprocesos y obtienen cientos de páginas a la vez .

• Los rastreadores podrían potencialmente inundar los sitios


con solicitudes de páginas.

• Para evitar este problema, los rastreadores web utilizan


políticas de cortesía: ventana de cortesía
– por ejemplo, retraso entre solicitudes al mismo servidor web
Machine Translated by Google

Controlando el rastreo
• Incluso rastrear un sitio lentamente enfadará a algunos
administradores de servidores web, que se oponen a
cualquier copia de sus datos
• El archivo Robots.txt se puede usar para controlar rastreadores

// (grupo de) rastreadores afectados por la regla

// URL e información sobre el tiempo de modificación y la frecuencia de modificación


Machine Translated by Google

Hilo de oruga simple

// cola

// política de cortesía con el sitio web


Machine Translated by Google

Frescura
• Constantemente se agregan páginas web ,
borrado y modificado
• El rastreador web debe volver a visitar
continuamente las páginas que ya ha rastreado
para ver si han cambiado a fin de mantener la
frescura de la colección de documentos.
– las copias obsoletas ya no reflejan el contenido real
de las páginas web
Machine Translated by Google

Frescura
• El protocolo HTTP tiene un tipo de solicitud especial
llamado HEAD que facilita la verificación de
cambios en la página
– devuelve información sobre la página, no la página en sí

// Etiqueta de entidad
Machine Translated by Google

Frescura
• No es posible revisar constantemente todas las páginas
– debe revisar las páginas importantes y las páginas
que cambian con frecuencia

• La frescura es la proporción de páginas que son


nuevo

• La optimización de esta métrica puede conducir a


malas decisiones, por ejemplo , no rastrear sitios populares

• La edad es una mejor métrica


Machine Translated by Google

Frescura vs Edad

página obsoleta página obsoleta


Machine Translated by Google

Años

• Edad esperada de una página t días después de que fue


rastreada por última vez (la página web cambia con una frecuencia

• Las actualizaciones de la página web siguen la


distribución de Poisson en promedio
– tiempo hasta la próxima actualización se rige por un
distribución exponencial

edad: tx
Machine Translated by Google

Años

• Cuanto más antigua se vuelve una página, más cuesta no hacerlo

rastrearlo
– p. ej., edad esperada con frecuencia de cambio
media ÿ = 1/7 (un cambio por semana)
Machine Translated by Google

Rastreo enfocado
• Intentos de descargar solo aquellas páginas que tratan sobre un tema en

particular

– utilizado por aplicaciones de búsqueda vertical

• Confiar en el hecho de que las páginas sobre un tema


tienden a tener enlaces a otras páginas sobre el mismo tem
– las páginas populares de un tema se suelen utilizar como
semillas

• El rastreador utiliza un clasificador de texto para decidir si un


la página es sobre el tema
Machine Translated by Google

Red profunda

• Los sitios que son difíciles de encontrar para un


rastreador se conocen colectivamente como sitios profundos (u ocu
Web
– mucho más grande que la Web convencional
• Tres categorías amplias:
– sitios privados
• no hay enlaces entrantes, o puede requerir iniciar sesión con una cuenta válida

– resultados del formulario

• sitios a los que se puede acceder solo después de ingresar algunos datos en
una forma

– páginas guionadas
• páginas que usan JavaScript u otro lenguaje del lado del cliente para generar enlaces
Machine Translated by Google

Mapas del sitio

• Los sitemaps contienen listas de URL y datos sobre esas URL,


como la hora de modificación y la frecuencia de modificación.

• Generado por los administradores del servidor web

• Informa al rastreador sobre las páginas que de otro


modo no podría encontrar .

• Le da al rastreador una pista sobre cuándo revisar un

pagina de cambios
Machine Translated by Google

Ejemplo de mapa del sitio


Machine Translated by Google

Rastreo distribuido
• Tres razones para usar varias computadoras
para rastrear
– Ayuda a acercar el rastreador a los sitios que rastrea
– Reduce la cantidad de sitios que el rastreador debe
recordar
– Reduce los recursos informáticos necesarios: por ejemplo , CPU
recursos para análisis y ancho de banda de red para rastrear
páginas
• El rastreador distribuido usa una función hash para
asignar direcciones URL a las computadoras que rastrean
– la función hash debe calcularse en la parte del host de cada
URL
Machine Translated by Google

Rastreos de escritorio

• Utilizado para la búsqueda de escritorio y la empresa


búsqueda

• Diferencias con el rastreo web:


– Mucho más fácil encontrar los datos

– Responder rápidamente a las actualizaciones es más importante


– Debe ser conservador en términos de disco y CPU

uso
– Muchos formatos de documentos diferentes
– Privacidad de datos muy importante
Machine Translated by Google

Fuentes de documentos

• Se publican muchos documentos


– creado en un momento determinado y rara vez actualizado de nuevo

– por ejemplo, artículos de noticias, publicaciones de blog, comunicados de prensa, correo electrónico

• Los documentos publicados de una sola fuente se


pueden ordenar en una secuencia llamada
alimentación de documentos

– nuevos documentos encontrados al examinar el final de


la alimentación
Machine Translated by Google

Fuentes de documentos

• Dos tipos:
– Un push feed: alerta al suscriptor de nuevos
documentos

– Un feed de extracción: requiere que el suscriptor verifique


periódicamente para nuevos documentos

• El formato más común para pull feeds se llama


RSS
– Sindicación realmente simple, resumen del sitio RDF, rico
Resumen del sitio, o...
Machine Translated by Google

Ejemplo de RSS

// tiempo de vida de la etiqueta en

minutos: // indicación de la frecuencia con la que se debe rastrear este archivo de fue
Machine Translated by Google

Ejemplo de RSS

// identificador único global


Machine Translated by Google

RSS

• etiqueta ttl (tiempo de vida)


– cantidad de tiempo (en minutos) que los contenidos deben ser
en caché

• Se accede a las fuentes RSS como a las páginas web.

– utilizando solicitudes HTTP GET a servidores web que alojan


a ellos

• Fácil de analizar para los rastreadores

• Fácil de encontrar nueva información


Machine Translated by Google

Conversión
• El texto se almacena en cientos de archivos incompatibles
formatos

– por ejemplo, texto sin formato, RTF, HTML, XML, Microsoft Word, ODF,
PDF

• Otros tipos de archivos también importantes


– por ejemplo, PowerPoint, Excel

• Suele utilizar una herramienta de conversión


– convierte el contenido del documento en un texto etiquetado
formato como HTML o XML

– conserva parte de la información de formato importante


Machine Translated by Google

Codificación de caracteres

• Una codificación de caracteres es un mapeo entre


bits y letras (glifos)
– es decir, pasar de bits en un archivo a caracteres en un
pantalla

– Puede ser una fuente importante de incompatibilidad

• ASCII es un esquema básico de codificación de caracteres para


inglés
– codifica 128 letras, números, caracteres especiales y caracteres
de control en 7 bits, ampliado con un bit adicional para
almacenamiento en bytes
Machine Translated by Google

Codificación de caracteres

• Otros idiomas pueden tener muchos más glifos

– por ejemplo, el chino tiene más de 40.000 caracteres, con


más de 3000 de uso común
• Muchos idiomas tienen múltiples esquemas de codificación ,
por ejemplo, la familia CJK (chino-japonés-coreano) de idiomas
de Asia oriental; hindi, árabe,…
– debe especificar la
codificación – no puede tener varios idiomas en un archivo
• Unicode desarrollado para solucionar problemas de codificación
Machine Translated by Google

Formato de transformación Unicode

• Mapeo único de números a glifos que


intenta incluir todos los glifos de uso común
en todos los idiomas conocidos
• Unicode es un mapeo entre números y
glifos
– problema: hay muchas formas de traducir
Números Unicode a glifos

– por ejemplo, UTF-8, UTF-16, UTF-32


Machine Translated by Google

Unicode
• La proliferación de codificaciones proviene de la
necesidad de compatibilidad y de ahorrar espacio
– UTF-8 usa un byte para inglés (ASCII), hasta 4
bytes para algunos caracteres chinos tradicionales
– UTF-32 usa 4 bytes para cada carácter
• Muchas aplicaciones utilizan UTF-32 para
codificación de texto (búsqueda aleatoria rápida) y UTF 8
para almacenamiento en disco (menos espacio)
Machine Translated by Google

Unicode

– por ejemplo, la letra griega pi (ÿ) es el número de símbolo Unicode


960
– En binario, 00000011 11000000 (3C0 en
hexadecimal)
– La codificación final es 11001111 10000000 (CF80
en hexadecimal)
Machine Translated by Google

Almacenamiento de los documentos

• Muchas razones para almacenar el texto del documento convertido en

preparación para la indexación

– proporciona acceso eficiente al texto para la generación


de fragmentos, extracción de información, etc.

• Sistema de almacenamiento de documentos:

- acceso aleatorio
– compresión

– actualización
Machine Translated by Google

Sistema de almacenamiento de documentos

• Acceso aleatorio
– recuperar documentos rápidamente para calcular un fragmento para los
resultados de búsqueda – solicitar el contenido de un documento en función de
su URL – la función hash basada en la URL es típica

• Compresión y archivos de gran tamaño :


reducción de los requisitos de almacenamiento y acceso eficiente. •

Actualización : manejo de grandes volúmenes de documentos nuevos y


modificados. Texto de anclaje: proporciona un resumen conciso de lo que
significa la página.
es sobre
Machine Translated by Google

Archivos grandes

• Almacene muchos documentos en archivos grandes,


en lugar de cada documento en un archivo

– evita gastos generales al abrir y cerrar archivos

– reduce el tiempo de búsqueda en relación con el tiempo de lectura

• Formatos de documentos compuestos


– utilizado para almacenar varios documentos en un archivo – por

ejemplo, TREC Web


Machine Translated by Google

Formato web TREC


sección que contiene la información sobre la solicitud de página

identificador único del documento


Machine Translated by Google

Compresión

• El texto es muy redundante (o predecible)


• Las técnicas de compresión aprovechan esta redundancia
para reducir el tamaño de los archivos sin perder nada del contenid
• Compresión de índices • Los
algoritmos populares pueden comprimir texto HTML y XML en
un 80 %
– por ejemplo, DEFLATE (zip, gzip) y LZW (compresión UNIX, PDF)

– puede comprimir archivos grandes en bloques para que el acceso sea más rápido
Machine Translated by Google

Mesa grande

• Sistema de almacenamiento de documentos de Google

– Personalizado para almacenar, encontrar y actualizar web


paginas

– Maneja colecciones de gran tamaño usando computadoras


económicas
Machine Translated by Google

Mesa grande

• Sin lenguaje de consulta, sin consultas complejas para optimizar


• Solo transacciones a nivel de fila
• Las tabletas se almacenan en un sistema de archivos replicado al que
pueden acceder todos los servidores de BigTable.
• Cualquier cambio en una tableta BigTable se registra en un registro
de transacciones, que también se almacena en un sistema de archivos
compartidos
• Si algún servidor de tableta falla, otro servidor puede
lea inmediatamente los datos de la tableta y el registro de transacciones
del sistema de archivos y tome el control
Machine Translated by Google

Mesa grande

• Organizado lógicamente en filas


• Una fila almacena datos para una sola página web

textos ancla de enlaces de los sitios


other.com y null.com (haga clic aquí) a example.com

• Combinación de una clave de fila, una clave de columna y


un punto de marca de tiempo en una sola celda de la fila
Machine Translated by Google

Mesa grande

• BigTable puede tener una gran cantidad de columnas por fila


– todas las filas tienen los mismos grupos de columnas
– no todas las filas tienen las mismas columnas

– importante para reducir las lecturas de disco para acceder a los

datos del documento • Las filas se dividen en tabletas en función de su fi

claves , por ejemplo, todas las URL que comienzan con a están ubicadas en una

tableta, etc., implica determinar qué servidor es apropiado


Machine Translated by Google

Detección de duplicados

• Los documentos duplicados y casi duplicados


ocurren en muchas situaciones
– Copias, versiones, plagio, spam, sitios espejo
– El 30% de las páginas web en un rastreo grande son
duplicados exactos o casi de las páginas en el otro 70%

• Los duplicados consumen recursos significativos


durante el rastreo, la indexación y la búsqueda
– Poco valor para la mayoría de los usuarios
Machine Translated by Google

Detección de duplicados

• La detección exacta de duplicados es relativamente fácil


• Técnicas de suma de comprobación

– Una suma de comprobación es un valor que se calcula en función


del contenido del documento

por ejemplo, la suma de los bytes en el archivo del documento

– Es posible que los archivos con texto diferente tengan la misma


suma de verificación

• Funciones como una verificación de redundancia cíclica


(CRC), se han desarrollado que consideran las posiciones
de los bytes
Machine Translated by Google

Detección casi duplicada


• Tarea más desafiante
– Son páginas web con el mismo contexto de texto pero
publicidad diferente o formato casi duplicado?

• Un documento casi duplicado se define utilizando


un valor de umbral para alguna medida de
similitud entre pares de documentos
– por ejemplo, el documento D1 es casi un duplicado del
documento D2 si más del 90% de las palabras en los
documentos son iguales
Machine Translated by Google

Detección casi duplicada


• Buscar:
– encontrar casi duplicados de un documento D
– Se requieren comparaciones O(N)
• Descubrimiento:
encuentre todos los pares de documentos casi duplicados en
la colección

– Comparaciones O(N2 )
• Las técnicas de IR son efectivas para el escenario de búsqueda

• Para el descubrimiento, otras técnicas utilizadas para


generar representaciones compactas: huellas dactilares
Machine Translated by Google

huellas dactilares
Machine Translated by Google

Ejemplo de huella digital

selección de todos los n-gramas cuyo valor hash mod 4 es cero


Machine Translated by Google

Simhash
• Comparaciones de similitud usando palabras
representaciones más efectivas para encontrar casi
duplicados
– El problema es la eficiencia

• Simhash combina las ventajas de la palabra


medidas de similitud basadas en la eficiencia de las
huellas dactilares basadas en hashing
• Similitud de dos páginas medida por el
la medida de correlación del coseno es proporcional
al número de bits que son iguales en el simhash
huellas dactilares
Machine Translated by Google
Machine Translated by Google

Ejemplo de Simhash
Machine Translated by Google

Eliminación de ruido

• Muchas páginas web contienen texto, enlaces y


imágenes que no están directamente relacionadas
con el contenido principal de la página web

• Este material adicional es principalmente ruido que


podría afectar negativamente el ranking de la página

• Se han desarrollado técnicas para detectar los bloques


de contenido en una página web
– El material sin contenido se ignora o se reduce en
importancia en el proceso de indexación
Machine Translated by Google

ejemplo de ruido
Machine Translated by Google

Encontrar bloques de contenido

• Distribución acumulativa de etiquetas en la página web de ejemplo

• El contenido del texto principal de la página corresponde al


“meseta” en medio de la distribución: menos etiquetas HTML
en el texto del contenido principal
Machine Translated by Google

Encontrar bloques de contenido

• Representar una página web como una secuencia de bits, donde bn = 1

indica que el token n es una etiqueta

• Etiquetas que se utilizan para dar formato al texto (p. ej., encabezados,
etiquetas de tabla, cambios de fuente) están representados por un bit 0

• Problema de optimización donde encontramos valores de i y


j para maximizar tanto el número de etiquetas por debajo de i y por
encima de j como el número de tokens sin etiquetas entre i y j

• es decir, maximizar

N: número de tokens en la página web


Machine Translated by Google

Encontrar bloques de contenido

Otros enfoques utilizan la


estructura del Modelo de
objetos del documento
(DOM) y las características
visuales (diseño) : posición
del bloque, tamaño de la
fuente, colores de fondo y
fuente , presencia de
separadores (por ejemplo,
líneas y espacios)
Machine Translated by Google

4. Procesamiento de textos

W. Bruce Croft, Donald Metzler, Trevor Strohman. Los motores de búsqueda. Recuperación de información en la práctica, Pearson Education 2015
Machine Translated by Google

De las palabras a los términos

• Conversión de documentos a términos de índice

• ¿Por qué?
– Coincidencia de la cadena exacta de caracteres escritos por
el usuario es demasiado restrictivo

• es decir, no funciona muy bien en términos de efectividad

– No todas las palabras tienen el mismo valor en una búsqueda

– A veces no está claro dónde comienzan y terminan las palabras


• Ni siquiera está claro qué palabra es en algunos idiomas , por
ejemplo, chino, coreano
Machine Translated by Google

Estadísticas de texto

• Gran variedad de palabras usadas en el texto pero...

• Muchas características estadísticas de las


ocurrencias de palabras son predecibles
– por ejemplo, distribución de recuentos de palabras

• Los modelos de recuperación y los algoritmos de


clasificación dependen en gran medida de las propiedades
estadísticas de las palabras .

– por ejemplo, las palabras importantes aparecen a menudo en los

documentos, pero no son muy frecuentes en la recopilación


Machine Translated by Google

Ley de Zipf
• La distribución de frecuencias de palabras es muy sesgada
– algunas palabras ocurren muy a menudo, muchas palabras casi nunca
ocurrir

– por ejemplo, dos palabras más comunes ("el", "de") forman


alrededor del 10% de todas las ocurrencias de palabras en documentos de texto

• Ley de Zipf: –

observación de que el rango (r) de una palabra por su frecuencia


(f) es aproximadamente una constante (k)
• suponiendo que las palabras se clasifiquen en orden decreciente de frecuencia

– es decir, r · f ÿ k o r · Pr ÿ c, donde Pr es la probabilidad


de ocurrencia de la palabra y c ÿÿ0.1 para inglés
Machine Translated by Google

Ley de Zipf
Machine Translated by Google

Colección de noticias (AP89) Estadísticas

Documentos totales 84,678


Ocurrencias totales de palabras 39.749.179
Tamaño del vocabulario 198,763
Palabras que ocurren > 1000 veces 4,169
Palabras que ocurren una vez 70,064

Frecuencia de r PR(%) r · pr
palabra asistente 5.095 1.021 0,013 0.13
alcantarillas 100 17.110 2,56 × 10ÿ4 0,04
cepillo de dientes 10 51.555 2,56 × 10ÿ5 0,01
materiales peligrosos 1 166.945 2,56 × 10ÿ6 0,04
Machine Translated by Google

Las 50 mejores palabras de AP89


Machine Translated by Google

Ley de Zipf para AP89

gráfico log-log: tenga en cuenta los problemas en frecuencias altas y bajas


Machine Translated by Google

Ley de Zipf

Proporción de palabras con una frecuencia dada:


– Palabra que ocurre n veces tiene rango rn = k/ n
– Número de palabras con frecuencia n es
rn ÿ rn+1 = k/n ÿ k/(n + 1) = k/ n(n + 1)
– Proporción hallada al dividir por el número total de
palabras = el rango de la última palabra con frecuencia
1 = k/ 1 = k
– La proporción predicha con frecuencia n es
1/ n(n+1)
Machine Translated by Google

Ley de Zipf

• Clasificación de

frecuencia de palabras de ejemplo

• Para calcular el número de palabras con frecuencia 5.099


– rango de “químico” menos el rango de “cumbre”
– 1006 ÿ 1002 = 4
Machine Translated by Google

Ejemplo

• Proporción de palabras que aparecen n veces en


336.310 TREC colección de documentos
• El tamaño del vocabulario es 508,209
Machine Translated by Google

Crecimiento de vocabulario

• A medida que crece el corpus, también lo hace el tamaño del vocabulario

– Menos palabras nuevas cuando el corpus ya es grande

• Relación observada (Ley de Heaps):


v = k · norte ÿ

donde v es el tamaño del vocabulario (número de palabras únicas),


n es el número de palabras en el corpus, k,
ÿ son parámetros que varían para cada corpus (los
valores típicos dados son 10 ÿ k ÿ 100 y ÿ ÿ 0.5)
Machine Translated by Google

Colección AP89
Machine Translated by Google

Predicciones de la ley de Heaps

• Las predicciones para las colecciones de TREC son precisas para

gran cantidad de palabras


– por ejemplo, se leen las primeras 10ÿ879ÿ522 palabras de la colección AP89

– la predicción es de 100,151 palabras únicas


– el número real es 100,024
• Predicciones para pequeñas cantidades de palabras
(es decir, < 1000) son mucho peores
Machine Translated by Google

Colección GOV2 (Web)


Machine Translated by Google

Ejemplo web
• La ley de Heaps funciona con corpus muy grandes
– ¡Nuevas palabras que aparecen incluso después de ver 30 millones!

– valores de parámetros diferentes a los típicos TREC


valores de colección

• Las palabras nuevas provienen de una variedad de fuentes


• errores ortográficos, palabras inventadas (por ejemplo, productos, nombres
de empresas), código, otros idiomas, direcciones de correo electrónico, etc.

• Los motores de búsqueda deben lidiar con estos extensos y


crecientes vocabularios .
Machine Translated by Google

Estimación del tamaño del conjunto de resultados

• ¿Cuántas páginas contienen todos los términos de


consulta? • Para la consulta “abc”: fabc = N · fa / N · fb / N ·
fc / N = (fa · fb · fc )/ N2

• Asumiendo que los términos ocurren

independientemente • fabc es el tamaño estimado del

conjunto de resultados • fa , fb , fc son el número de documentos que contienen los térm


ocurre en
• N es el número de documentos en la colección
Machine Translated by Google

Colección GOV2

El tamaño de la colección (N) es 25,205,179


Machine Translated by Google

Estimación del tamaño del conjunto de resultados

• Estimaciones pobres : las palabras no son independientes…

• Mejores estimaciones posibles si la co-ocurrencia


información disponible
P(a ÿ b ÿ c) = P(a ÿ b) · P(c|(a ÿ b)) (*) · f
Fpecesÿtropicalesÿacuarioÿacuario
= f tropical = pezÿacuario/ faquarium
1921 · 9722/26480 = 705

F = fcríaÿtropical · f pezÿreproducción/ freproducción

críaÿdeÿpecesÿtropicales = 5510 · 36427/81885 = 2451

(*) P(c|(a ÿ b)) se puede aproximar con P(c|a) o P(c|b) el


que sea mayor
Machine Translated by Google

Estimación del conjunto de resultados

• Estimaciones aún mejores utilizando el conjunto de resultados inicial

– La estimación es simplemente C/s

• donde s es la proporción del total de documentos que se han


clasificado y C es el número de documentos encontrados
que contienen todas las palabras de consulta
– Por ejemplo, “acuario de peces tropicales” en la colección GOV2

• después de procesar 3.000 de los 26.480 documentos que


contienen "acuario", C = 258
Fpecesÿtropicalesÿacuario = 258/(3000÷26480) = 2277
• Después de procesar el 20% de los documentos,
f pecesÿtropicalesÿacuario = 1,778 (1,529 es valor real)
Machine Translated by Google

Estimación del tamaño de la colección

• Cuestión importante para los motores de búsqueda


web • Técnica sencilla: utilice el modelo de independencia
– Dadas dos palabras a y b que son independientes
fab/ N = fa / N · fb / N
N = (fa · fb )/ fab

– por ejemplo, para la recopilación de documentos GOV2

Flincoln = 771,326 f = 120,990 f = 3,018 tropical lincoln ÿ tropical


N = (120990 · 771326)/3018 = 30 922 045
(el número real es 25 205 179)
Machine Translated by Google

Tokenización

• Formar palabras a partir de una secuencia de caracteres


• Sorprendentemente complejo en inglés, puede ser más
difícil en otros idiomas
• Primeros sistemas IR:
– cualquier secuencia de caracteres alfanuméricos
de longitud 3 o más
– terminado por un espacio u otro carácter especial
– mayúsculas cambiadas a minúsculas
Machine Translated by Google

Tokenización

• Ejemplo:
– “El informe semestral de 2007 de Bigcorp mostró que las ganancias
aumentaron un 10 %”. se convierte

– “El informe anual de bigcorp 2007 mostró que las ganancias aumentaron”

• Demasiado simple para aplicaciones de búsqueda o incluso


experimentos a gran escala
• Demasiada información perdida

– Pequeñas decisiones en la tokenización pueden tener un gran


impacto en la efectividad de algunas consultas
Machine Translated by Google

Problemas de tokenización
• Las palabras pequeñas pueden ser importantes en algunas
consultas, generalmente en combinaciones

xp, ma, pm, ben e king, el paso, maestro p, gm, j lo, segunda guerra
mundial

• Tanto las formas con guiones como sin guiones de


muchas palabras son comunes
– A veces no se necesita guión
• e-bay, wal-mart, active-x, cd-rom, camisetas
– En otras ocasiones, los guiones deben considerarse como
parte de la palabra o como separador de palabras.
• winston-salem, mazda rx-7, e-cards, pre-diabetes, t-mobile, habla hispana
Machine Translated by Google

Problemas de tokenización

• Los caracteres especiales son una parte importante de las etiquetas,


URL, código en documentos

• Las palabras en mayúsculas pueden tener un significado


diferente al de las palabras en minúsculas

– arbusto, manzana

• Los apóstrofes pueden ser parte de una palabra, parte de un


posesivo, o simplemente un error
– rosie o'donnell, can't, don't, años 80, 1890, sombreros de paja para
hombres, maestría, las diez ciudades más grandes de inglaterra, shriner's
Machine Translated by Google

Problemas de tokenización

• Los números pueden ser importantes, incluidos


los decimales

– nokia 3250, 10 mejores cursos, united 93, quicktime


6.5 pro, 92.3 the beat, 288358 •
Los puntos pueden aparecer en números, abreviaturas,
direcciones URL, finales de oraciones y otras situaciones
– IBM, Ph.D., cs.umass.edu, MIEDO
• Nota: los pasos de tokenización para consultas deben
ser idénticos a los pasos para documentos

También podría gustarte