Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per...

104
Web Information Retrieval

Transcript of Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per...

Page 1: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Web Information Retrieval

Page 2: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Il World Wide Web

• Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

• Combina l’idea di scaricare documenti via FTP con l’idea di ipertesti per collegare fra loro i documenti

• Ha sviluppato il protocollo HTTP, il concetto di URLs, ed il primo “web server.”

Page 3: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Problemi per WEB IR• 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..)

Page 4: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Numero di Web Servers

Page 5: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.
Page 6: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Struttura a grafo del Web

http://www9.org/w9cdrom/160/160.html

Paginecon linkin uscita

Paginecon linkin ingresso

Pagine con linkdi ingresso e uscita

Page 7: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Ricerca sul Web

Il Web

Ind. commerciali

Web Results 1 - 10 of about 7,310,000 for miele . (0.12 seconds)

Miele, Inc -- Anything else is a compromise At the heart of your home, Appliances by Miele . ... USA. to miele .com. Residential Appliances. Vacuum C leaners. Dishwashers. Cooking Appliances. Steam Oven. Coffee System ... www. miele .com/ - 20k - Cached - Similar pages

Miele Welcome to Miele , the home of the very best appliances and kitchens in the world. www. miele .co.uk/ - 3k - Cached - Similar pages

Miele - Deutscher Hersteller von Einbaugeräten, Hausgeräten ... - [ Translate this page ] Das Portal zum Thema Essen & Geniessen online unter www.zu -tisch.de. Miele weltweit ...ein Leben lang. ... Wählen Sie die Miele Vertretung Ihres Landes. www. miele .de/ - 10k - Cached - Similar pages

Herzlich willkommen bei Miele Österreich - [ Translate this page ] Herzlich willkommen bei Miele Österreich Wenn Sie nicht automatisch weitergeleitet werden, klicken Sie bitte hier! HAUSHALTSGERÄTE ... www. miele .at/ - 3k - Cached - Similar pages

Sponsored Links

CG Appliance Express Discount Appliances (650) 756 -3931 Same Day Certified Installation www.cgappliance.com San Francisco -Oakland-San Jose, CA Miele Vacuum Cleaners Miele Vacuums - Complete Selection Free Shipping! www.vacuums.com Miele Vacuum Cleaners Miele -Free Air shipping! All models. Helpful advice. www.b est -vacuum.com

Spider

Indicizzatore

Indici

Search

Utente

Page 8: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

WWW

Spiders/Crawlers

}

Page Respository

ModuloIR

ModuloIndiciz-zazione

Testo Struttura LinkControllo Spidering

Utenti

Query Rankedresults

Page 9: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

FASI• Spidering/Crawling: esplorazione di una porzione del web• Indicizzazione: generazione di indici che associno i

documenti a dei puntatori, su tre basi: – struttura del documento, – contenuto, – posizione del documento nel grafo del web.

• Ranking: sulla base della query e degli indici, presentare gli indirizzi delle pagine ordinate per rilevanza

Page 10: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Web Search

1. Spidering (o Crawling)

Page 11: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Spiders (Robots/Bots/Crawlers)

• Sono programmi che attraversano la rete spedendo pagine nuove o aggiornate ad un server principale,e dove queste vengono indicizzate

• Uno Spider gira su macchine locali e spedisce richieste a server remoti

• Gli indici sono usati in maniera centralizzata per rispondere alle query degli utenti

Page 12: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Spiders (Robots/Bots/Crawlers)

• Si parte da un insieme pre-identificato di URL “radice”.

• Si seguono tutti i link a partire dalle radici alla ricerca di pagine addizionali.

• Alcuni sistemi consentono all’utente di sottomettere pagine per l’indicizzazione (o stabilire i nodi radice).

Page 13: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Spidering

Web

URLs “esplorate”e analizzate

Frontiera URLs

Il Web “nascosto”

pagineiniziali(seeds)

Page 14: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Questo semplice schema presenta complicazioni

• Non si può effetuare il crawling con una sola macchina, quindi tutte le fasi sono distribuite su threads

• Problemi:– Latenza e ampiezza di banda varia sui server remoti– Quanto in profondità esplorare la gerachia di URL in un sito?– Pagine duplicate e siti “mirror”

• Pagine “maliziose”– Pagine spam– Spider traps

Page 15: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Uno schema meno semplice

URLs “crawled”E analizzate

Web nascosto

Pagine

Seed

frontiera

Crawling thread

Page 16: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Fasi di crawling• Seleziona una URL dalla frontiera

• Preleva il documento a quell’ URL

• Analizza il documento– Estrai i link ad altri documenti (URLs)

• Verifica se esistono pagine già analizzate– Se no, aggiungi gli indici

• Per ogni URL estratta– Controlla che superi opportuni URL test di

filtraggio– Elimina duplicati

Es., accetta gli “.edu”, obbedisci ai robots.txt,

etc.

Quale?

Page 17: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Architettura

WWW

Fetch

DNS

Parse

Già visto?

DocFP’s

DupURLelim

URLset

URL Frontier

URLfilter

robotsfilters

Domain name serverAnalizza la front page

Filtri e robot exlcusion

Elimina duplicati

Page 18: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Spider Control

• Decide quali link i crawler debbano esplorare e quali ignorare

• Può usare dei feedback provenienti da “usage patterns” (analisi di comportamenti di utente) per guidare il processo di esplorazione

Page 19: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Strategie di ricercaBreadth-first Search

Page 20: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Strategie di Ricerca (2)Depth-first Search

Page 21: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Trade-Off’s• Breadth-first esplora uniformemente a partire dalla

pagina(e) root, ma richiede la memorizzazione di tutti i nodi del livello precedente (è esponenziale nel fattore di profondità p). E’ il metodo standard.

• Depth-first richiede di memorizzare p volte il fattore di branching (lineare in p), ma “si perde” seguendo un’unica traccia.

Page 22: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Algoritmo di SpideringInizializza la coda Q con un set iniziale di URL note.Until Q vuota o si esauriscono i limiti di tempo o pagine memorizzabili: Estrai URL, L, dalla testa di Q. Se L non è una pagina HTML (.gif, .jpeg, .ps, .pdf, .ppt…) continua il ciclo. Se L già visitata, continua il ciclo. Scarica la pagina, P, di L. Se non è possibile scaricare P (e.g. 404 error, robot exclusion) continua ciclo. Indicizza P (cioè aggiungi rapp(P) all’inverted

inedex,oppure memorizza una copia cache). Analizza P per ottenere una nuova lista di links N. Appendi N in coda a Q.

Page 23: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Append:Strategie di queueing• I nuovi link aggiunti come modificano la strategia di

ricerca? • FIFO (appendi alla coda di Q) determina una strategia di

ricerca breadth-first.• LIFO (aggiungi in testa a Q) determina una strategia di

ricerca depth-first.• Alcuni sistemi usano delle euristiche per collocare i nuovi

link secondo priorità “focused crawler” tese a direzionare la ricerca verso pagine “interessanti”.

Page 24: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Strategie per Spider specializzati

• Ristretti a siti specifici.– Rimuove alcuni links da Q.

• Ristretti a directories specifici.– Rimuove i links non contenuti nel directory.

• Obbedisce a restrizioni imposte dai proprietari dei siti (robot exclusion).

Page 25: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Dettagli sulle tecniche di Spidering : 1. Estrazione dei Link (puntatori)

• Si devono identificare tutti i links contenuti in una pagina ed estrarre le relative URLs, per proseguire nell’esplorazione.– <a href=“http://www.cs.utexas.edu/users/mooney/ir-course”>– <frame src=“site-index.html”>

• Se esistono URL specificate con riferimento alla URL della pagina corrente, devono costruire un URL completo :– <a href=“proj3”> diventa

http://www.cs.utexas.edu/users/mooney/ir-course/proj3– <a href=“../cs343/syllabus.html”> diventa

http://www.cs.utexas.edu/users/mooney/cs343/syllabus.html

I frames dividonouna pagina insezioni

Page 26: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

2. Esprimere i Link in formato canonico• Variazioni equivalenti vengono normalizzate

rimuovendo la “slash” finale http://www.cs.utexas.edu/users/mooney/– http://www.cs.utexas.edu/users/mooney

• Si rimuovono i riferimenti a pagine interne (ref’s) :– http://www.cs.utexas.edu/users/mooney/welcome.html#courses

– http://www.cs.utexas.edu/users/mooney/welcome.html

Page 27: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

3. Refresh: aggioramento delle pagine

• Il Web è dinamico: ci sono molte pagine nuove, pagine aggiornate, cancellate, riposizionate..

• Periodicamente lo Spider deve verificare tutte le pagine indicizzate per aggiornamenti e cancellazioni :– Basta guardare le info di intestazione (es. META tags sull’ultimo

aggiornamento) per verificare se la pagina è stata aggiornata, e ricaricarla se necessario.

• Tiene traccia delle pagine più “dinamiche” nel tempo, e controlla quelle in prevalenza.

• Aggiorna e verifica con preferenza le pagine più popolari.

Page 28: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

4. Robot Exclusion

• Alcuni siti Web o pagine possono richiedere che gli spiders/robot non accedano né indicizzino certe aree.

• Due componenti:– Robots Exclusion Protocol: E’ un protocollo che vieta

l’accesso da direttori specificati all’intero sito. Robots META Tag: Etichetta documenti specifici per evitarne l’indicizzazione o l’esplorazione.

Page 29: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Robots Exclusion Protocol

• Gli amministratori dei siti mettono un file “robots.txt” alla radice del web directory dell’host.– http://www.ebay.com/robots.txt– http://www.cnn.com/robots.txt

• Il file contiene una lista di directories proibite per un dato robot, o agente di utente. – Exclude all robots from the entire site:

User-agent: * Disallow: /

Page 30: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Robot Exclusion Protocol Examples• Escludere directories: User-agent: * Disallow: /tmp/ Disallow: /cgi-bin/ Disallow: /users/paranoid/

• Escludere uno specifico robot: User-agent: GoogleBot Disallow: /

• Consentire l’uso solo ad uno specifico robot: User-agent: GoogleBot Disallow:

User-agent: * Disallow: /

Page 31: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

5. Multi-Threaded Spidering

• Il collo di bottiglia consiste nel ritardo di rete per scaricare singole pagine.

• E’ preferibile seguire molti “fili” della rete in parallelo ognuno dei quali richiede una pagina da diversi host.

• Il precedente spider di Google aveva molti crawlers coordinati, ognuno con 300 thread, complessivamente capaci di scaricare più di 100 pagine al secondo.

Page 32: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

6. Selezione delle pagine

• Quali pagine scaricare?? (non tutto il web!!)

• Metriche di importanza:– Interest-driven (spiders specializzati)– Popularity driven – Location driven

Page 33: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Sommario (Spiders)

• Strategia di ricerca

• Strategia di aggiornamento (refresh)

• Minimizzazione del carico su altre organizzazioni (robot exclusion)

• Selezione delle pagine

Page 34: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

2. Indicizzazione

1. Spidering (o Crawling)

Page 35: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Modalità per indicizzare le pagine sul Web

• Per ogni pagina identificata dallo Spider va creato un indice. Tre metodi (non esclusivi)– Si usano dei directories, che classificano le pagine Web

per argomento– Si indicizza ogni documento esplorato dallo Spider

come full text (flat o strutturato)– Si tiene conto della struttura ipertestuale del Web, cioè

degli hyperlinks

Page 36: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Indicizzazione mediante Directories:

a) Classificazione manuale• Yahoo usa editors umani per generare un directory

gerachico di pagine web. – http://www.yahoo.com/

• Open Directory Project è un progetto simile, basato sul lavoro distribuito di editors volontari (“net-citizens provide the collective brain”). E’ utilizzato da molti motori di ricerca. Il progetto è stato avviato da Netscape.– http://www.dmoz.org/

Page 37: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.
Page 38: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.
Page 39: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.
Page 40: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.
Page 41: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Indicizzazione mediante Directories:

b) Classificazione automatica• La classificazione manuale dei documenti sul web ad

opera dei gestori di portali o motori di ricerca richiede molto tempo e molta forza-lavoro, è soggettiva, e soggetta a errori.

• I metodi automatici di classificazione dei testi possono essere usati per alleviare questo lavoro.

• Questi metodi si basano su tecniche di machine learning.

Page 42: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Gerarchizzazione automatica di documenti

• Lo sviluppo di tassonomie è un processo complesso, richiede tempo, è soggettivo, produce errori.

• Esistono metodi automatici (Hierarchical Agglomerative Clustering (HAC) ) per ottenere automaticamente una strutturazione gerarchica.

Page 43: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Metodi di classificazione automatica

Sport Cn

Politica C1

Economia

C2

. . . . . . . . . . .

Wonderful Totti

Yesterday match

Berlusconi acquires Inzaghi before

elections

Bush declares war

Page 44: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Classificazione Automatica (2)• Dato:

– Un insieme di categorie:– Un insieme T di documenti d,

definisci

f : T 2C

• VSM (Vector Space Model)

– I documenti sono rappresentati come vettori (modello vettoriale).

– Sia i documenti che le categorie sono vettori.

– d è assegnato a se

r d ×

r C i >th

{ } ,.., 1 nCCC =

iC

Page 45: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Esempio

Berlusconi

Bush

Totti

Bush declares war.Berlusconi gives support

Wonderful Totti in the yesterday match against Berlusconi’s Milan

Berlusconi acquires Inzaghi before elections

d1: Politica

d1

d2

d3

C1

C1 : Politica

d2: Sport d3:Economia

C2

C2 : Sport

Page 46: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

• Si parte da un insieme di documenti-campione T, preassegnati manualmente alle varie classi

• , il peso di wi in dj

– Ad esempio (ma esistono altri schemi di pesatura) TF * IDF• , il peso di wi in Ck :

• , i documenti di addestramento per

• Un documento d è assegnato alla classe Ck se:

Il Classificatore di Rocchio

Cwik

Cwik =max{ 0,

βTk

wijdj∈Tk

∑ − λTk

wijdj∈Tk

∑ }

Tk

r d ×

r C k>th

Ck

wij

Page 47: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Il classificatore di Rocchio

• Il peso della parola wi nel vettore che rappresenta Ck è il massimo fra:– 0– La differenza fra la somma dei pesi di wi nei

documenti “campione” usati per apprendere il vettore Ck e la somma dei pesi di wi in tutti i documenti del set di apprendimento che NON sono appartenenti a Ck

Cwik =max{ 0,

βTk

wijdj∈Tk

∑ − λTk

wijdj∈Tk

∑ }

Page 48: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Iperpiano di seperazione

Altri metodi di classificazione: SVM

Support Vectors

Tk

Tk

Page 49: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

1.Indicizzazione mediante classificazione

2. Creazione degli indici2.1 Full text2.2 Usando informazioni aggiuntive sul testo

Page 50: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Creazione automatica di Indici nel Web IR

• Molti sistemi usano varianti dell’inverted file

• Ad ogni parola o keyword viene associato l’insieme dei puntatori alle pagine che contengono la parola

• Eliminazione di stopwords, punteggiatura..

• Usualmente si associa anche una breve descrizione del contenuto della pagina (per mostrarlo all’utente)

Page 51: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Creazione automatica di Indici (2)

– Poiché occorrono circa 500 bytes per memorizzare l’informazione relativa ad ogni pagina, occorrono circa 50 Gb per mantenere le informazioni relative a 100 milioni di pagine !!

– Tecniche di compressione possono consentire di ridurre la taglia di un inverted file di circa il 30% (dunque bastano 15 Gb per 100 milioni di pagine)

Page 52: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Creazione automatica di Indici (3)• Alcuni inverted files puntano all’occorrenza di

una parola nel testo (non nel documento), ma la tecnica è troppo costosa in termini di memoria.

• Se si possiede un puntatore di posizione dentro la pagina, è possibile fare “proximity search” cioè cercare frasi (parole fra loro contigue).

• Qualche motore di ricerca consente proximity search, ma le tecniche non sono note interamente.

Page 53: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Creazione automatica di Indici (4)

• Una soluzione intermedia consiste nel puntare a blocchi anziché a singole occorrenze nel documento.

• Questo riduce la taglia dei puntatori e velocizza la ricerca.

Page 54: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Metodi avanzati: Indicizzazione usando il testo nelle ancore

• Lo Spider analizza il testo nelle ancore (between <a> and </a>) di ogni link seguito.

• Il testo nelle ancore di solito è molto informativo sul contenuto del documento cui punta.

• Si aggiunge il testo contenuto nell’ancora alla rappresentazione del contenuto della pagina destinazione (keywords).

• Questo metodo è usato da Google:– <a href=“http://www.microsoft.com”>Evil Empire</a>

– <a href=“http://www.ibm.com”>IBM</a>

Page 55: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Indicizzazione usando il testo nelle ancore (cont)

• E’ particolarmente utile quando il contenuto descrittivo nelle pagine destinazione è “nascosto” nei logo delle immagini piuttosto che in testi accessibili.

• Spesso non è affatto utile: – “click here”

• Migliora la descrizione del contenuto di pagine “popolari” con molti link entranti, ed aumenta la recall di queste pagine.

• Si può anche assegnare un peso maggiore al testo contenuto nelle ancore.

Page 56: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

1. Classificazione2. Creazione degli indici

2.1 Full text2.2 Usando informazioni

aggiuntive sul testo

3. Ranking3.1 Ranking sulla base del

contenuto3.2 Ranking sulla base della struttura

ipertestuale

Page 57: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Ranking

• I metodi di ranking usati dai motori di ricerca sono top-secret

• I metodi più usati sono il modello vettoriale e booleano • La maggioranza dei motori utilizzano per il ranking

anche gli hyperlinks. Le pagine “risposta” pi vengono valutate (ed il loro numero viene esteso) sulla base del numero di connessioni da e verso pi.

Page 58: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Link Analysis

Page 59: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Primi metodi di link analysis

• Gli Hyperlinks contengono informazioni che sussumono un giudizio sulla pagina

• Più links entrano in un sito, più importante è il giudizio

Assunzioni

• La visibilità (hubness) di un sito si misura mediante il numero di siti che puntano ad esso

• La luminosità (authority) di un sito è il numero di altri siti che esso punta

Limite: non cattura l’importanza relativa dei siti “parenti” (cioè ad esso collegati )

Page 60: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS - Kleinberg’s Algorithm

• HITS – Hypertext Induced Topic Selection

• Per ogni vertice v V in un sottografo di interesse:

• Un sito è autorevole se riceve molte citazioni. Le citazioni da parte di siti importanti pesano di più di quelle da parte di siti meno importanti.

• Un buon hub è un sito che è collegato con molti siti autorevoli

a(v) - l’ authority di vh(v) - la hubness di v

Page 61: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Authority e Hubness

2

3

4

1 1

5

6

7

a(1) = h(2) + h(3) + h(4) h(1) = a(5) + a(6) + a(7)

Page 62: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Il grafo dei collegamenti• I documenti sono visti come

i nodi di un grafo• Gli hyperlinks sono visti

come archi diretti• Gli archi possono avere pesi• Si costruisce in tal modo il

grafo dell’intero web• Gweb = (V(Gweb), E(Gweb))

– E(Gweb) V(Gweb)V(Gweb)

1

3

4

2

5

67

0 0 1 0 0 0 0

1 0 0 0 0 0 0

0 0 0 1 1 0 1

0 0 0 0 0 0 0

0 0 0 0 0 0 0

0 0 0 1 0 0 0

0 0 0 1 0 0 0

L: Matrice delle adiacenze

Page 63: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Due metodi di ranking sono i più diffusi: HITS e Page Rank

• Basati sulla link analysis:– HITS (Hypertext Induced Topic Selection)

(Kleinberg, 1997)• Obiettivo: ottenere il ranking di una pagina per ogni

specifica query (dinamico)

– PageRank (Brin and Page, 1998)• Obiettivo : ottenere un ranking di tutte le pagine del web

indipendentemente dalle query (statico)

Page 64: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS Hubs and Authorities (1)

• Si estrae il set P di pagine che includono le keywords di Q

• Si include il set delle back pages

B = { b : (b, p) E(Gweb) }• Si include anche il set delle forward

pages F = { f : (p, f) E(Gweb) }• Si definisce:

– VQ = PBF– EQ = Eweb(BPPF)– GQ = (VQ, EQ)

searchresults

p1

p|P|

p2

.

.

.

b1

b|B|

b2

.

.

.

backset

f1

f|F|

f2

.

.

.

forwardset

Obiettivo : ottenere un ranking delle pagine per una particolare query Q = {w1, …, wn}

Page 65: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Hubs and Authorities (2)

• 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

• le authorities più importanti avranno molti siti che puntano ad esse

• Gli hubs più importanti avranno molti puntatori • Assunzione: le migliori authorities sono puntate dai migliori

hubs e viceversa

Page 66: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Hubs and Authorities (3)• Partendo dal grafo GQ, e dalla matrice di

adiacenza L, si definiscono due vettori

a = (a1, a2, …, an)T e h = (h1, h2, …, hn)T,

|VQ| = n, tali che:

– ai è il grado di autorità di vi V(GQ)

– hi è il grado di di hubness di vi V(GQ)

Page 67: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

The HITS algorithm(Kleinberg, 1998)

• h(0) := (1, 1, …, 1)T

• k := 1• Fino alla “convergenza”, esegui:

– a(k) := LT h(k-1) (aggiorna a)– h(k) := L a(k) (aggiorna h)– a(k) := a(k)/||a(k)|| and h(k) := h(k)/||h(k)|| (normalizzazione)

• Si possono riscrivere le due assegnazioni nei termini degli stessi vettori dell’ iterazione precedente :– a(k) := LT h(k-1) = LT L a(k-1)

– h(k) := L a(k) = L LT h(k-1)

InizializzazoneIterazioni

Page 68: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Significato delle matrici L LT e LT L

• L è la adjacency matrix di GQ

• LT L è detta authority matrix:

i j

k

∑∑==

==n

kkjki

n

kkj

Tikij LLLLA

11

Aij è il numero co-citazioni, cioè

Il numero di nodi che puntano sia a i che j

== LLA TijA = T

ikL kjL

TL L

..vi ricorda qualcosa di già visto???????

Page 69: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Significato delle matrici L LT e LT L• L è la adjacency matrix di GQ

• LT L è detta authority matrix

• L LT è detta hubness matrix:

i j

k

∑∑==

==n

kjkik

n

k

Tkjikij LLLLH

11

Hij è il numero di co-referenze, cioè

Il numero di nodi puntati sia da i che j

== TLLH ijH

j

i =ikL

TkjL

L TL

Page 70: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Significato delle matrici L LT e LT L

• L è la adjacency matrix di GQ

• LT L è detta authority matrix

• L LT è detta hubness matrix

• Le matrici sono:– Simmetriche (aij = aji i,j = 1, …, n)– Positive semidefinite (i, i 0, i = 1, …, n)

Page 71: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Il Power Method (1)

• Ricordate il passo iterativo :– a(k) := LT L a(k-1)

– h(k) := L LT h(k-1)

• L’algoritmo iterativo per calcolare i vettori HITS a e h è il power method per calcolare l’ eigenvector dominante (cioè l’ autovettore che corrisponde all’ autovalore di valore massimo) di LTL e LLT, rispettivamente (riguardatevi la lezione su LSI!!)

Page 72: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Il Power Method Convergeal Dominant Eigenvector

1, 2, …, k sono gli n eigenvalues di una matrice A (=LLT) e

|1| > |2| … |k|• x1, …, xk sono gli eigenvectors associati e linearmente indipendenti

(indipendenza lineare : 1x1+ 2x2 +…+kxk=0 iff 1=…=k=0)• Un generico vettore v0 (h(0) o a(0)) può essere scritto come:

– v0=1x1+ 2x2 +…+kxk

• Quindi:– v1=Av0=1Ax1+ 2Ax2 +…+kAxk=11x1+ 22x2 +…+kkxk= 1[1x1+ 2(2/1)x2 +…+k(k/1)xk]

• E in generale:– vm=Avm-1=Amv0=1Amx1+ 2Amx2 +…+kAmxk=11

mx1+ 22mx2 +…+

kkmxk= 1

m [1x1+ 2(2/1)mx2 +…+k(k/1)mxk]

• Poichè |i/1| < 1, i = 2, 3, …, n, abbiamo: 11011

1lim

1lim xvAv m

mmmmm

==∞→∞→

a(k) := LT L a(k-1)=A a(k-1)

∀i : x i ,λ i autovettore,autovalore di A, A = λ i x i

Page 73: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Convergenza del Power Method (2)

• Perciò, con m grande:

• Osservazione: la velocità di convergenza dipende dal rapporto |1/2|

11011

1lim

1lim xvAv m

mmmmm

==∞→∞→

vm+1vm

=λ1

m+1Am+1v0

λ1mAmv0

= λ1α1x1α1x1

= λ1

Page 74: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS: Esempio (1)

36

1

4

2 5

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

=

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

L

654321

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

=

100101

020001

000000

100101

000010

110102

6

5

4

3

2

1

TLL

654321

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

=

000000

030100

001100

011200

000000

000001

6

5

4

3

2

1

LLT

654321

Page 75: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS: Esempio (2)

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

775.0

258.0

516.0

0

258.0

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

412.0

412.0

0

412.0

137.0

687.0

a1 h1654321

36

1

4

2 5

hubs

–a(1) := LT h(0)

–h(1) := L a(1)

36

12 5

authorities4

654321

1

2

3

4

5

6

0 0 1 0 1 0

1 0 0 0 0 0

0 0 0 0 1 0

0 0 0 0 0 0

0 0 1 1 0 0

0 0 0 0 1 0

⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜

⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟

T

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

1

1

1

1

1

1

h0

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

775.0

258.0

516.0

0

258.0

a1

=

(la normalizzazione non è evidenziata)

Page 76: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS: Esempio (3)3

6

1

4

2 5

hubs

36

1

4

2 5

authorities

654321

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

788.0

215.0

573.0

0

072.0T

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

h1 a2

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

412.0

412.0

0

412.0

137.0

687.0

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

409.0

409.0

0

409.0

037.0

706.0

a2 h2654321

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

788.0

215.0

573.0

0

072.0

–a(2) := LT h(1)

–h(2) := L a(2)

Page 77: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS: Esempio (4)

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

789.0

212.0

577.0

0

019.0

36

1

4

2 5

654321

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

789.0

212.0

577.0

0

019.0T

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

h2 a3

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

408.0

408.0

0

408.0

001.0

707.0

a3 h3654321

36

1

4

2 5

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

409.0

409.0

0

409.0

037.0

706.0

authorities hubs

–a(3) := LT h(2)

–h(3) := L a(3)

Page 78: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

HITS: Esempio (5)

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

789.0

211.0

577.0

0

0

=

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

408.0

408.0

0

408.0

001.0

707.0

36

1

4

2 5

654321

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

0

789.0

211.0

577.0

0

0T

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

h3 a4

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

010000

001100

000000

010000

000001

010100

6

5

4

3

2

1

⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟

⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜

408.0

408.0

0

408.0

0

707.0

a4 h4654321

36

1

4

2 5

authorities hubs

–a(4) := LT h(3)

–h(4) := L a(4)

Page 79: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Strategia di Ranking

• L’ authority vector è il ranking delle pagine in GQ

• C’è un rischio di topic drift (slittamento del topic)

– Le pagine Back e Forward possono essere più generali

– C’è il rischio di recuperare pagine troppo generiche rispetto alla query Q

• Inoltre, è possibile influenzare i punteggi di hubness

– Aggiungere degli archi in una pagina ne aumenta il valore di hubness, il quale a sua volta aumenta l’autorithy delle pagine puntate, portando ad un effetto di SPAM!!

Page 80: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

PageRank• Introdotto da Brin & Page (1998)

– Il peso dipende dal rank dei nodi parenti

• 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

• Differenza rispetto a HITS– HITS prende i pesi di Hubness & Authority– Page Rank è proporzionale al rank dei suoi nodi parenti ma inversamente proporzionale al

“outdegree” dei suoi parenti

P(a) = (1− d) + d P(aii∈Ain

∑ )1

C (ai )

Page 81: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

PageRank è usato da Google

The Anatomy of a Large-Scale Hypertextual Web Search Engine. Brin, S. & Page, L (1998).

http://dbpubs.stanford.edu:8090/pub/1998-8

Page 82: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

T1

PR=0.5

T2

PR=0.3

T3

PR=0.1

A

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)

3

4

5

2

Page 83: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Interpretazione probabilistica di PageRank

• PageRank dispone di una chiara ed intuitiva spiegazione probabilistica del suo funzionamento

• Pensiamo ad un navigatore che visita senza un particolare ordine i nodi del web seguendo i vari links che trova nelle pagine partendo da una pagina scelta a priori a caso (es. www.yahoo.com)

• Il PageRank non è altro che un indice di quanto tempo, mediamente, tale navigatore impiegherà ad arrivare su una certa pagina.

• Questo modello prende il nome di “random walk” o passeggiata casuale.

Page 84: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Notazione matriciale

Matrice delle transizioni P =

A meno del dumping factor, posso riscrivere la formula del PageRank di Brill&Page usando la notazione matriciale: dove èil vettore delle probabilità di raggiungere ogni pagina ai.

a = aP

a

Pij=0 se da i non c’è hyperlink verso j; 1/C(ai) altrimenti

Page 85: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Come calcolare il vettore delle probabilità?

• Il modello delle Random Walk può essere modellato mediante le Markov Chains

Page 86: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Catene di Markov• Una catena di Markov consiste in n stati (sia S tale insieme), e una

matrice di probabilità di transizione nn P.• Ad ogni passo, ci troviamo esattamente in uno stato.• Per 1 i,j n, P(sisj) =Pij è la probabilità di transitare in sj, se ci

troviamo attualmente in si. • Inoltre, se Xk è la variabile aleatoria che indica lo stato raggiunto in tk

(X assume valori in S) ,

P(Xk /X1,X2,… Xk-1)=P(Xk /Xk-1)• Il valore di X al tempo k dipende solo dal valore della variabile

aleatoria nell’istante precedente

Page 87: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

.11

=∑=

ij

n

j

P

Markov chains

• Ovviamente

• Le catene di Markov rappresentano un modello delle “passeggiate casuali” (random walks) .

Page 88: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Vettori di probabilità• Indichiamo con x = (x1, … xn) un vettore

che indichi lo stato raggiunto in un certo istante.

• Es: (000…1…000) indica che si è nello stato s i.i n1

Poiché si tratta di un processo probabilistico, dovremo invece considerare il vettore x =(P(s1), … P(sn))= (x1, … xn), che indica che la passeggiata ha condotto in si con probabilità xi, e

.11

=∑=

n

iix

Page 89: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Catene di Markov ergodiche

• Una catena di Markov è ergodica se:– Esiste un percorso fra ogni coppia di stati

– Da ogni stato, dopo un periodo di transizione T0, la probabilità di raggiungere un qualsiasi altro stato in un tempo fisso T>T0 è sempre diversa da zero.

Page 90: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Catene ergodiche

• Se una catena di Markov è ergodica, ogni stato ha una probabilità “stazionaria” di essere visitato, indipendentemente dal punto di partenza.– Il vettore delle probabilità x converge ad

un valore stazionario a

Page 91: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Variazioni del vettore di probabilità• Se il vettore è x(i) = (x1, … xn) al passo i, come cambierà al

successivo passo?• La riga i-esima della matrice P ci dice dove si transiterà dallo stato

i (contiene le probabiltà di transizione da i verso gli stati ad essa collegati).

• Da x(i) , la prob. dello stato successivo è distribuito come x(i) P (x(i+1) = x(i) P )

• Se il processo è ergodico, x convergerà ad un vettore a tale che a=aP

• Poiché P è una matrice e a un vettore, che vettore è a per P??

Page 92: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Power method• x(k+1) =Px(k)

• La sequenza di vettori xk converge al valore stazionario a• Per il calcolo del valore stazionario a si utilizza il power

method (già visto per HITS)• x (k+1) =xPk=x(k)P• L’assunzione che esista un autovalore dominante è essenziale

per la convergenza del metodo• Notate che, poiché in condizioni stazionarie deve essere a=aP,

a è l’autovettore dominante con autovalore dominante 1.€

=1k α 1v1 +α 2(

λ2λ1

)k v2 + ...+α n (λnλ1

)k vn ⎡

⎣ ⎢

⎦ ⎥

Page 93: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Come si calcola pageRank?

• Si parte da pesi casuali e si itera il procedimento• Es:

A B

d = 0.85 PR(A) = (1 – d) + d(PR(B)/1) PR(B) = (1 – d) + d(PR(A)/1) Partiamo con P=1 PR(A)= 0.15 + 0.85 * 1= 1 PR(B)= 0.15+0,85*1=1 già converge!!

Partiamo con P=0 PR(A)= 0.15 + 0.85 * 0= 0.15 PR(B)= 0.15+0,85*0.15=0.2775

PR(A)= 0.15 + 0.85 * 0.2775=0.385875PR(B)=0.47799..

PR(A)=0.5562..PR(B)=0.6228..Tende a 1!!

Page 94: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Esempio 2

Page 95: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Matrice adiacenze normalizzata

1/C(ai)

P

Page 96: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Iterazioni

x0 x1 x2 x3 x4 x60 x611

x(k+1) =Px(k)

Page 97: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.
Page 98: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Nota: “c” in figura è il damping factor (d)

Page 99: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Problemi• Problema del “Rank Sink”

– In generale, molte pagine web non hanno inlinks/outlinks

E.g.

nessun parente rank 0

nessun figlio P converge ad un vettore di zeri

(pozzi o rank sink)

Page 100: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Nessun figlio --> converge a zero

Page 101: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Convergenza di Page Rank

• PageRank è un algoritmo che è garantito convergere se e solo se la matrice P derivata da quella di adiacenza è irriducibile (cioè se il grafo è fortemente connesso) e aperiodica (il che corrisponde alla condizione di ergodicità vista prima)

• Per l’aperiodicità non ci sono problemi nella pratica (le pagine contenute in anelli sono molto poche in confronto alle pagine del web); per l’irriducibilità serve utilizzare una formula leggermente diversa, che introduce gli archi tra tutte le pagine (anche dai pozzi), rendendo il grafo fortemente connesso

• Il vettore E è una distribuzione di probabilità di pagine a cui il navigatore può attingere per uscire da un rank-sink, allorché ne raggiunga uno, o da una pagina senza out-edges (E(a)=1/C(a))

P(a) = (1− d)E(a) + d P(aii∈Ain

∑ )1

C (ai )

Page 102: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Rank sink• Nella pratica dunque, i pozzi vengono trattati in uno di questi

modi:– Per ogni pozzo i, si aggiungono archi fittizi dalla pagina i ad ogni altro

pozzo, in modo da far sì che i pozzi cedano uniformemente la loro importanza al resto del grafo

– Ad ogni passo di PageRank si aggiunge alle componenti del vettore a una stessa quantità (E) in modo che la norma di a rimanga pari a 1

– Alternativamente, si eliminano tutti i pozzi e si applica PageRank al grafo così ottenuto; i pozzi verranno poi reinseriti alla fine

Page 103: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Altri Problemi di PageRank

Guardate la figurae intuite il problema..

Page 104: Web Information Retrieval. Il World Wide Web Sviluppato da Tim Berners-Lee nel 1990 al CERN per organizzare documenti di ricerca disponibili su Internet.

Problemi

• 302 Google Jacking: ogni pagina con rank basso che viene ridirezionata, mediante un “302 server header” or a "Refresh" meta tag, ad una pagina con P elevato, aumenta artificialmente il proprio P.

• Alcune web companies vendono links con valori alti di P ai webmasters. Google combatte queste politiche.

• Attributo “nofollow” per combattere spamindexing (non seguire questo link..)