Web Information Retrieval

Transcript

Web Information Retrieval
Corso di Laurea Specialistica in Ingegneria Informatica
Corso di Linguaggi e Tecnologie Web
Web Information Retrieval
Eufemia TINELLI
A. A. 2011 - 2012
Introduzione
• Per Web information Retrieval si intende la ricerca di pagine web Æ la
collezione che si considera è la parte pubblica del web
• Modalità di ricerca sul web
– Ricerca diretta
– Ricerca mediante link
– Servizi web: motori di ricerca (Google), portali web (Yahoo), sistemi ecommerce (reccomender system)
• Evoluzione dei motori di ricerca
– 1994-1997 – Prima generazione (Lycos) basati sul “contenuto”
– 1998-0ggi – Seconda generazione (Google) basati sulla “struttura” del
web
– Oggi – Terza generazione (sperimentale): analisi semantica, analisi del
contesto, …
• Tipi di query
– Specific queries (problema della povertà)
– Broad topic queries (problema dell’abbondanza)
– Similar-page queries
E. TINELLI – LTW A. A. 20112011-2012
2
Da IR a Web IR: cosa cambia?
• Dati distribuiti: I documenti sono sparsi su milioni di server
differenti
• Dati Volatili: Molti documenti appaiono e spariscono (così
detti dead links).
• Enormi volumi di dati: Miliardi di documenti diversi
• Dati non strutturati e ridondanti: Non esiste una struttura
uniforme, ci sono errori html, circa 30% di documenti
duplicati.
• Qualità dei dati: Non ci sono controlli editoriali, le
informazioni possono essere false, possono esserci errori,
testi mal scritti..
• Dati eterogenei: multimediali (immagini, video, suoni) diversi
linguaggi, diversi formati (pdf, ps, doc)
E. TINELLI – LTW A. A. 20112011-2012
3
Web IR: I nuovi strumenti
•
Struttura & hyperlink di una pagina
– Importanza del “tagging” Æ <b>, <title>, ecc.
– Web link: rappresentano una relazione tra pagine connesse
• documento sorgente (pagina Web) che contiene il link:
– e.s. <a href = “http://www.acm.org”> ACM site </a>
• testo ancora e.s. ACM site
• documento target (pagina Web) che è riferita dal link
– e.s. http://www.acm.org
• in-link della pagina p è un link da una pagina Web alla pagina p
• out-link della pagina p è un link dalla pagina p a una pagina Web
•
Analisi dei link
– La qualità/popolarità di una pagina cresce al crescere del numero dei suoi in-link
• simile all’analisi delle citazioni nell’IR tradizionale per il calcolo dell’impact factor delle
pubblicazioni scientifiche
– L’autorevolezza di una pagina dipende dal numero di in-link ma non solo poiché anche le
pagine popolari hanno questa caratteristica
• pagine autorevoli - contengono informazioni rilevanti (sono buone sorgenti di
contenuto)
• pagine hub - puntano a pagine utili (sono buone sorgenti di link)
E. TINELLI – LTW A. A. 20112011-2012
4
Motori di ricerca: architettura generale
Page Repository
Search
Spiders
Query
Ranked
results
WEB
WEB
Modulo
Indicizzazione
Modulo
IR
Controllo Spidering
Testo
Struttura
E. TINELLI – LTW A. A. 20112011-2012
Link
5
Fasi del processo di Web IR
• Spidering: esplorazione di una porzione del web Æ cercare
pagine da indicizzare
– dato un insieme iniziale di url, scarica tutte le pagine raggiungibili
dall'insieme seguendo gli iperlink
• Tutte le pagine (general purpose crawler)
• Solo quelle su determinati argomenti (focused crawler)
• Indicizzazione: generazione di indici che associno i documenti a
dei puntatori
• Ranking: sulla base della query e degli indici, presentare gli
indirizzi delle pagine ordinate per rilevanza
– Basato sul contenuto (e struttura): modello booleano e vettoriale
– Basato sulla struttura ipertestuale
• HITS (Hypertext Induced Topic Selection) (Kleinberg, 1997)
• PageRank (Brin and Page, 1998)
E. TINELLI – LTW A. A. 20112011-2012
6
Spiders (Robots/Bots/Crawlers)
•
•
Agente software che naviga su web usando come punti di partenza URL note per
essere punti di accesso interessanti, e successivamente visita altre pagine web
percorrendo i link che vanno da una pagina all’altra
Comportamento generale
1. Inizializza una coda Q di pagine con alcuni URL noti (popolari o inviati da
utenti):
2. Seleziona un indirizzo dalla coda
3. Seleziona la pagina
4. Cerca nella pagina indirizzi di altri URL
5. Scarta gli URL che
•
•
non possono essere analizzati es.
sono già stati visitati
6. Aggiunge gli URL alla coda
•
utilizza una strategia breadth-first (FIFO - appendi alla coda di Q) o depth-first
(LIFO - aggiungi in testa a Q)
7. Se non è scaduto il tempo torna a 2
E. TINELLI – LTW A. A. 20112011-2012
7
Crawling: Strategie di ricerca (1)
• Breadth-first: si analizzano prima tutte le pagine che hanno un link nella
pagina corrente
– Adatta per siti Web che trattano argomenti in relazione tra loro
– La copertura è ampia ma superficiale
E. TINELLI – LTW A. A. 20112011-2012
8
Crawling: Strategie di ricerca (2)
• Depth-first: si segue il primo link nella pagina corrente
fino all’ultima pagina senza link
E. TINELLI – LTW A. A. 20112011-2012
9
Regolamentare l’accesso a un server
• Robots.txt
– è un file nella root di un web server che indica se i robots possono
indicizzare il contenuto del sito
– può essere usato per impedire/regolamentare l’accesso agli spider
– Costituito da coppie:
• user-agent: textstring (il crawler da regolamentare)
• disallow:textstring (le risorse il cui accesso va regolamentato)
• I crawler possono ignorare tali indicazioni ma potrebbero
essere bloccati
• Esempi:
– User-agent: *
– Disallow: /cgi-bin/ (impedisce a tutti i crawler l’accesso alla directory specificata)
– User-agent: googlebot
– Disallow: * (impedisce l’accesso al crawler di google)
E. TINELLI – LTW A. A. 20112011-2012
10
HITS
•
•
•
•
•
•
Obiettivo: ottenere il ranking di una pagina per ogni specifica query
(dinamico) Æ Analisi locale
Per una specifica query si vuole trovare:
– Le authorities su quell’argomento o topic (dove cioè le informazioni
richieste effettivamente sono contenute)
– I siti hub, che puntano alle migliori pagine su quel topic
Una Autorità è una pagina puntata da molte altre pagine
Relazione di mutuo rinforzo
– Una buona authority è puntata da buoni hub
– Un buon hub punta a buone authority
L’algoritmo si divide in 2 passi:
– Costruzione del focused subgraph Sσ
– Calcolo degli Hub e Authorities da Sσ
L’algoritmo opera sul web graph
– Le pagine del web sono i nodi del grafo
– I link entranti o uscenti sono gli archi del grafo
E. TINELLI – LTW A. A. 20112011-2012
11
HITS
•
•
•
Root set Rσ: composto dalle t (≈200) pagine con più alto ranking risultanti da
una query σ (broad topic query) al motore ε
Base set Sσ: espandiamo Rσ con i successori e con i predecessori (al max d ≈50)
di ogni pagina in Rq
Costruzione del focused subgraph Sσ
Sσ = Rσ
For each page p Є Rσ
Out(p)= i successori di p
In(p)= i predecessori di p
Aggiungi tutte le pagine Out(p) a Sσ
If |In(p)|≤d then
Aggiungi tutte le pagine in In(p) a Sσ
else
Aggiungi un insieme arbitrario di d pagine da In(p) in Sσ
end if
end for
return Sσ
E. TINELLI – LTW A. A. 20112011-2012
12
HITS
• Calcolo dei gradi di autorità A(p) e di hub H(p) di una pagina p
• calcolo del peso di autorità A(p)
– se p è puntata da molte pagine con valori alti di H, allora deve ricevere un
valore alto di A
• calcolo del peso di hub H(p)
– se p punta a molte pagine con valori alti di A, allora deve ricevere un valore
alto di H
• Dopo il calcolo i pesi vengono normalizzati
E. TINELLI – LTW A. A. 20112011-2012
13
PageRank
•
•
Obiettivo : ottenere un ranking di tutte le pagine del web indipendentemente
dalle query (statico) Æ Analisi Globale
Idea di base: PageRank simula la navigazione casuale dell’utente su Web
– una pagina ha un PageRank alto se la somma dei PageRank dei suoi in-link è alta
– una pagina con PageRank alto ha
– o molti in-link
– oppure pochi in-link con PageRank alto
1
P(a) = (1− d) + d
P(a i )
C (a i )
i∈A in
∑
– P(a) è la probabilità che un navigatore casuale (random walker) raggiunga la pagina a
– C(ai) numero complessivo di (out) links della pagina ai
– d è il “damping factor” e modella la probabilità che il “random walker” smetta di
navigare
•
PageRank simula un attraversamento casuale del web e calcola il “grado” di
probabilità di raggiungere la pagina Æ in altri termini è un indice di quanto
tempo, mediamente, il navigatore impiegherà ad arrivare su una certa pagina
E. TINELLI – LTW A. A. 20112011-2012
14
PageRank: Esempio di calcolo “ad un
passo”
T1
3
A
PR=0.5
Si parte da
pesi casuali e
si itera il
procedimento
2
T2
4
PR=0.3
5
T3
PR=0.1
PR(A)=(1-d) + d*(PR(T1)/C(T1) + PR(T2)/C(T2) + PR(T3)/C(T3))
=0.15+0.85*(0.5/3 + 0.3/4+ 0.1/5)
E. TINELLI – LTW A. A. 20112011-2012
15
PageRank
• Inizialmente l’utente è su una pagina p; a ogni passo procede
– verso una pagina casuale legata (tramite outlink) alla pagina corrente con
probabilità d (“fattore di damping”) es. probabilità di seguire un outlink = 0.8
– verso una pagina Web casualmente selezionata con probabilità 1-d es.
probabilità di un salto casuale = 0.2
• Problema del “Rank Sink”
– In generale, molte pagine web non hanno inlinks/outlinks
•
Formula leggermente diversa, che introduce gli archi tra tutte le pagine (anche
dai pozzi), rendendo il grafo fortemente connesso
1
P(a) = (1− d)E(a) + d
P(a i )
C (a i )
i ∈A in
∑
E. TINELLI – LTW A. A. 20112011-2012
16
Google
•
•
Fase di memorizzazione e indicizzazione sono
separate
Indexer
–
–
Inizialmente costruisce un “forward index”
Individua i link
•
•
•
–
Memorizzati nell’area di storage delle ancore
Risoluzione URL relativi (URL resolver)
Memorizzati coppie di URL nell’area di storage dei
links
Aggiorna il lessico
•
Hit è la parola trovata (plain hit e fancy hit) es. di
plain hit
–
–
–
•
Sorter
–
•
1bit per maiuscolo/minuscolo
3bit per la lunghezza della parola
12bit per la posizione del doc
Crea l’inverted index dal forward index
Search
–
–
–
–
Server web si fa carico della richiesta
Controlla il lessico
Cerca nei barrels i docIDs
Ranking: combinazione lineare di pesi
•
•
•
E. TINELLI – LTW A. A. 20112011-2012
contenuto Æ plain hit
struttura Æ fancy hit
popolarità Æ PageRank
17
Riferimenti
• Modern Information Retrieval, R. Baeza-yates and B.
Ribeiro-Neto,Addison-Wesley and ACM Press, 1999
• Christopher D. Manning, Prabhakar Raghavan and Hinrich
Schütze, Introduction to Information Retrieval, Cambridge
University Press, 2007
– http://nlp.stanford.edu/IR-book/information-retrieval-book.html
E. TINELLI – LTW A. A. 20112011-2012
18