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