ALGORITMI PAGERANK ED HITS A CONFRONTO ED UNA

ALGORITMI PAGERANK ED
HITS A CONFRONTO ED
UNA POSSIBILE
IMPLEMENTAZIONE DEL
SECONDO
Marco Buzzoni
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Introduzione




HITS (Hypertext Induced Topic Search) e PageRank hanno lo
scopo di fornire una stima della popolarità delle pagine web prese
in considerazione.
Le pagine restituite in seguito ad una query verranno ordinate
anche in base al punteggio assegnato da tali algoritmi.
Per comprendere in cosa differisce l’algoritmo HITS dal più
popolare algoritmo usato da Google è necessario per prima cosa
fare una breve introduzione di quest’ultimo.
A seguire verranno mostrate le differenze tra i due algoritmi e
verrà data una possibile implementazione dell’HITS.
2
ALGORITMO PAGERANK
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Formula di base


La tesi alla base di questo algoritmo è che una pagina è
importante se è puntata da altre pagine importanti.
Il PageRank 𝒓 di una pagina è quindi dato dal punteggio delle
pagine che puntano ad essa.
𝒓 𝒌 (𝑷𝒋 )
𝒓 𝒌+𝟏 𝑷𝒊 =
𝑷𝒋 ∈𝑩𝑷𝒊
𝑷𝒋
𝒌: indice dell’iterazione;
𝑷𝒊 : pagina corrente (di tutte le pagine indicizzate);
𝑩𝑷𝒊 : insieme delle pagine 𝑷𝒋 che puntano alla pagina 𝑷𝒊 ;
𝑷𝒋 : quantità dei link in uscita dalla pagina 𝑷𝒋 ;
4
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Formula di base (2)



Per eseguire la prima iterazione si prende 𝒓(𝟎) =
𝟏
𝒏
per tutte le
pagine web, dove 𝒏 è il numero di pagine indicizzate dal motore
di ricerca.
Le iterazioni vengono ripetute fino a quando non si ha
convergenza. Per convergenza si intende che la differenza tra i
valori ottenuti durante l’iterazione attuale e i valori ottenuti in
quella precedente è minore di un valore fissato.
La formula per ottenere il PageRank può essere riscritta in termini
di matrici e vettori.
5
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Formula in termini di matrici
Riscrivendo la formula sostituendo la sommatoria con un prodotto
vettore matrice si ottiene la formula seguente, che è una
implementazione del metodo delle potenze:
𝒓(𝒌+𝟏) 𝑻 = 𝒓(𝒌) 𝑻 𝑯
𝒓(𝒌) 𝑻 : vettore riga contenente i PageRank delle pagine.
𝟏 𝑷𝒊 𝒔𝒆 𝒆𝒔𝒊𝒔𝒕𝒆 𝒖𝒏 𝒍𝒊𝒏𝒌 𝒅𝒂 𝑷𝒊 𝒂 𝑷𝒋
𝑯=
𝟎 𝒂𝒍𝒕𝒓𝒊𝒎𝒆𝒏𝒕𝒊
ovvero la matrice di adiacenza del grafo rappresentante le pagine
web indicizzate.
𝑷𝒊 : pagina indicizzata.
6
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio di esecuzione del PageRank
P2
P1
Abbiamo
4
pagine
web
indicizzate, 𝑷𝟏 𝑷𝟐 𝑷𝟑 e 𝑷𝟒 , e il
grafo mostrato in figura.
P3
pagina web
A

B
P4
𝑃1
𝑃2
𝑃3
𝑃4
𝑃1
0
1/2 1/2
0
H= 𝑃2
0
Il vettore iniziale è:
𝒓(𝟎) 𝑻 = 𝟏/𝟒

hyperlink da A a B
𝟏/𝟒
𝟏/𝟒
𝟏/𝟒
La matrice di adiacenza è:
0
0
𝑃3 1/3 1/3
0
1/3
𝑃4
0
0
0
0
0
7
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio di esecuzione del PageRank (2)

Dopo 2 iterazioni le pagine sono ordinate come mostrato nella
tabella seguente (in caso di valori uguali si ordinano per
posizione):
Pagine
K
𝑷𝟏
𝑷𝟐
𝑷𝟑
𝑷𝟒
0
1/4
1/4
1/4
1/4
1
1/12
5/24
1/8
1/12
2
1/24
1/12
1/24
1/24
𝑷𝟐
𝑷𝟏
𝑷𝟑
𝑷𝟒
Posizione:
8
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Pro e contro di PageRank
Pro
Contro
Indipendenza dalle query: il calcolo I calcoli vengono effettuati su una
del punteggio per le pagine non matrice comprendente tutte le
deve essere fatto ad ogni pagine indicizzate.
iterazione.
È un algoritmo robusto, ovvero il
fenomeno del link spamming non
comporta particolari problemi.
9
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Robustezza dell’algoritmo


Piccole community non possono alterare in modo significativo i
punteggi di popolarità delle pagine.
Un limite al tale cambiamento nei punteggi è dato dalla seguente
formula:
𝑻
𝒙𝒌 − 𝒙𝒌+𝟏
𝑻
𝟏
𝟐𝜶
≤
𝟏−𝜶
𝒙𝒊
𝒊∈𝑴
𝒙𝒌 𝑻 e 𝒙𝒌+𝟏 𝑻 : il vecchio e il nuovo vettore PageRank.
𝒙
𝟏
=
𝒏
𝒊=𝟏
𝒙𝒊
𝜶: probabilità che l’utente navighi seguendo gli hyperlink.
𝒊∈𝑴 𝒙𝒊 : somma del vecchio PageRank delle pagine modificate.
10
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio di robustezza dell’algoritmo
𝜶 = 0.8.
−𝟔

𝐢∈𝐌 𝐱 𝐢 = 𝟐 ∗ 𝟏𝟎 , quindi questo è il punteggio complessivo

delle pagine aggiornate.

𝟐𝜶
𝟏−𝜶
=8
𝒙𝒌 𝑻 − 𝒙𝒌+𝟏 𝑻
𝟏
≤ 𝟖 ∗ (𝟐 ∗ 𝟏𝟎−𝟔 )
Due elementi importanti sono il numero di pagine modificate ed
PageRank delle stesse.
11
DIFFERENZE TRA HITS E
PAGERANK
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Differenze tra HITS e PageRank
PageRank
HITS
Indipendente dalla query: il Dipendente
dalla
query:
il
punteggio viene calcolato su tutte punteggio viene calcolato a tempo
le pagine indicizzate a intervalli di query.
fissati.
Una sola lista di risultati:
PageRank delle pagine.
Resistente al link spamming.
il Due liste di risultati: authority e
hub.
Suscettibile al link spamming.
Dimensione del problema: tutte le Dimensione del problema: un
pagine indicizzate.
sottoinsieme
contenuto
delle
pagine indicizzate.
Convergenza prevedibile grazie al Convergenza
prevedibile.
parametro 𝜶.
non
facilmente
13
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Relazione tra authority ed hub
In questo esempio viene evidenziata la relazione tra pagine
authority e pagine hub.
 Una pagina authority è una pagina che è puntata da altre
pagine.
 Una pagina hub è una pagina che punta ad altre pagine.
A
: pagina web
A
B
: hyperlink da A a B
B
C
A è un hub per B C e D
B è un authority per A ed un hub per C
D
14
INTRODUZIONE ED
IMPLEMENTAZIONE
DELL’ALGORITMO HITS
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Introduzione all’algoritmo HITS




La tesi alla base di questo algoritmo è che buone authority sono
puntate da buoni hub, viceversa buoni hub puntano a buone
authority.
L’authority score di una pagina è dato dalla somma degli hub
score delle pagine che puntano ad essa.
L’hub score di una pagina è dato dalla somma degli authority
score delle pagine alle quali essa punta.
Come nel caso del PageRank l’algoritmo si basa su iterazioni
successive fino a raggiungere la convergenza. Non vi sono
particolari restrizioni sui valori iniziali.
16
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Formule di base
Introduciamo le equazioni di base usate per il calcolo di authority
score ed hub score.
𝒙𝒊 (𝒌) =
𝒚𝒋 (𝒌−𝟏)
𝒋:𝒆𝒋𝒊 ∈𝑬
𝒚𝒊 (𝒌) =
𝒙𝒋 (𝒌)
𝒋:𝒆𝒊𝒋 ∈𝑬
𝒙𝒊 (𝒌) ed 𝒚𝒊 (𝒌) : authority ed hub score della pagina web i;
𝒌: iterazione corrente;
𝒆𝒊𝒋 : pagina i che punta alla pagina j;
𝑬: insieme dei link delle pagine web analizzate;
Normalizziamo x ed y dopo ogni computazione.
17
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio di calcolo dei due punteggi
Calcoliamo i punteggi di alcune pagine usando l’algoritmo HITS.
Consideriamo il grafo rappresentante le pagine web da ordinare.
A
: pagina web
A
B
: link da A a B
B
C
D
18
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio di calcolo dei due punteggi (2)
Assegniamo 1 come valore iniziale e normalizziamo dividendo i
vettori per il loro massimo valore).
Pagine
A
B
C
D
y
1
1
1
1
x
0,5
0,5
1
0,5
y
1
0,5
0,25
0
x
0,16
0,66
1
0,66
y
1
0,43
0,06
0
Authority:
C
B
D
A
Hub:
A
B
C
D
0
K
1
2
19
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Grafo dei vicini

Si costruisce il grafo dei vicini N basato sui termini della query
usando l’inverted file index.
Inverted File Index

Restituisce le pagine che contengono i termini cercati.
Pagina A:
Casa
Frutta

Pagina B:
Casa
Giardino
Pagina C:
Sport
Ad esempio la ricerca dei termini “Sport” e “Giardino ” restituisce
le pagine B e C.
20
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Grafo dei vicini (2)


Per prima cosa si inseriscono le pagine che corrispondono a
quelle cercate dall’utente.
In seguito si aggiungono i vicini di ognuna di queste pagine (fino a
un massimo), per trovare anche pagine contenenti sinonimi.
pagina ottenuta dalla
query
vicino delle pagine
ottenute dalla query
B
C
21
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Implementazione dell’algoritmo – grafo come
matrice di adiacenza
Il grafo che rappresenta il sottoinsieme del web considerato è
implementato con matrice di adiacenza, che chiameremo L,
quadrata di dimensioni nxn, con n numero dei nodi del grafo. Ad
esempio:
Lij =
𝑳=
1,
0,
se l′ arco orientato 𝑒𝑖𝑗 𝑒𝑠𝑖𝑠𝑡𝑒
altrimenti
A
A B C D
A
0
1
1
0
B
1
0
1
0
C
0
1
0
1
D
0
1
0
0
C
B
D
22
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Assegnazione dei punteggi
Sfruttando il metodo delle potenze i punteggi possono essere
assegnati come segue:
𝒙(𝒌) = 𝑳𝑻 𝒚(𝒌−𝟏)
𝒚(𝒌) = 𝑳𝒙(𝒌)
Tali formule possono essere riscritte come:
𝒙(𝒌) = 𝑳𝑻 𝑳𝒙(𝒌−𝟏)
𝒚(𝒌) = 𝑳 𝑳𝑻 𝒚(𝒌−𝟏)
𝒙(𝒌) : vettore degli authority score all’iterazione k
𝒚(𝒌) : vettore degli hub score all’iterazione k
𝑳𝑻 : L trasposta (le righe diventano le colonne e viceversa)
𝑳𝑻 𝑳 : matrice authority
𝑳 𝑳𝑻 : matrice hub
23
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Assegnazione dei punteggi (2)
Per il grafo mostrato in figura avremmo ad esempio le seguenti
matrici:
𝑳=
𝑳𝑻 =
𝑨
𝑩
𝑪
𝑨 𝑩 𝑪
𝟎 𝟏 𝟏
𝟎 𝟎 𝟏
𝟎 𝟏 𝟎
𝑨
𝑩
𝑪
𝑨 𝑩 𝑪
𝟎 𝟎 𝟎
𝟏 𝟎 𝟏
𝟏 𝟏 𝟎
𝑳𝑻 𝑳 =
𝑳𝑳𝑻 =
𝑨
𝑩
𝑪
𝑨
𝟎
𝟎
𝟎
𝑩
𝟎
𝟐
𝟏
𝑪
𝟎
𝟏
𝟐
𝑨
𝑩
𝑪
𝑨 𝑩 𝑪
𝟐 𝟏 𝟏
𝟏 𝟏 𝟎
𝟏 𝟎 𝟏
A
C
B
24
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Struttura delle matrici authority ed hub

Le matrici 𝑳𝑻 𝑳 ed 𝑳𝑳𝑻 godono delle proprietà seguenti.
 Sono quadrate.
 Sono simmetriche, ovvero hanno valori uguali in posizioni
simmetriche rispetto alla diagonale.
𝑨 𝑩 𝑪
𝑨
𝟎 𝟎 𝟎
𝑳𝑻 𝑳 =
𝑩
𝟎 𝟐 𝟏
𝑪
𝟎 𝟏 𝟐
𝑻 𝑻
 Sono semidefinite positive: 𝒙 𝑳 𝑳𝒙 ≥ 𝟎 per ogni vettore x di
lunghezza n (in questo caso 3).
 Sono non negative: tutti i suoi elementi sono maggiori o uguali
a 0.
25
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Calcolo dei punteggi e convergenza



Si calcolano i due punteggi.
Data la struttura delle matrici 𝑳𝑻 𝑳 ed 𝑳𝑳𝑻 e la normalizzazione
descritta dalla formula seguente l’algoritmo converge sempre.
Si evita l’insorgere di problemi dovuti all’hardware.
𝒙(𝒌)
𝒙(𝒌)
=
𝒎(𝒙 𝒌 )
𝒙(𝒌) : vettore di authority score
𝒎 𝒙𝒌
= 𝒙(𝒌) =
𝒏
𝟐
𝒙
𝒊
𝒊=𝟏
Oppure
𝒎 𝒙𝒌
= elemento del vettore il cui valore assoluto è maggiore.
26
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Velocità di convergenza

Il tasso di convergenza è dato dalla velocità con cui:
𝒄𝟐 𝒌
( ) →𝟎
𝒄𝟏
𝒄𝟏 e 𝒄𝟐 : il primo ed il secondo autovalore della matrice usata.

I vettori di authority ed hub score convergono all’autovettore
corrispondente all’autovalore massimo.
27
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Autovalori ed autovettori di una matrice

Ogni autovalore c soddisfa l’equazione
𝑨𝑿 = 𝒄𝑿
che si può riscrivere come
𝑨 − 𝒄𝑰 𝑿 = 𝟎
𝑨𝒏𝒙𝒏 : una matrice quadrata
𝑰: matrice identità
𝑿: autovettore di n elementi relativo a c.
28
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Autovalori ed autovettori di una matrice (2)

Per trovare gli autovalori che soddisfano tale equazione bisogna
applicare la formula:
𝒅𝒆𝒕 𝑨 − 𝒄𝑰 = 𝟎

Esempio:
1) 𝑨 =
𝟐
𝟏
𝟏
𝟐
3) 𝒄𝟐 − 𝟒𝒄 + 𝟑 = 𝟎
2) 𝒅𝒆𝒕
𝟐−𝒄
𝟏
𝟏
=𝟎
𝟐−𝒄
𝒄𝟏 = 𝟑
𝒄𝟐 = 𝟏
29
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Irriducibilità delle matrici e unicità dei risultati


La matrice 𝑳𝑻 𝑳 così come 𝑳𝑳𝑻 è riducibile, e ciò causa
dipendenza dei risultati dal vettore iniziale di hub score.
Una matrice quadrata B è riducibile se esiste una matrice di
permutazione Q tale che
𝑸𝑻 𝑩𝑸 =

𝑿 𝒀
𝟎 𝒁
X e Z sono matrici quadrate.
Per il teorema di Perron-Frobenius se una matrice è irriducibile e
non negativa essa possiede un unico autovettore dominante
chiamato vettore di Perron.
30
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio - 𝐿𝑇 𝐿 riducibile
𝑳=


0
0
0
0
1
0
0
0
1
0
0
0
0
1
1
0
=
0
0
0
0
1
1
0
0
1
1
0
0
0
0
0
Gli autovalori sono 𝒄𝟏 = 𝟐, 𝒄𝟐 = 𝟎.
Input:
𝒙𝟏 (𝟎) = 𝟏 𝟒 , 𝟏 𝟒 , 𝟏 𝟒 , 𝟏 𝟒

𝑳𝑻 𝑳
2
𝑻
𝐱 𝟐 (𝟎) = 𝟏 𝟒 , 𝟏 𝟖 , 𝟏 𝟖 , 𝟏 𝟐
𝐓
Normalizzazione con la norma 1 otteniamo:
𝒙𝟏 (∞) = 𝟏 𝟑 , 𝟏 𝟑 , 𝟏 𝟑 , 𝟎
𝑻
𝒙𝟐 (∞) = 𝟏 𝟐 , 𝟏 𝟒 , 𝟏 𝟒 , 𝟎
𝑻
31
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Rendiamo 𝐿𝑇 𝐿 irriducibile

Rendiamo la matrice riducibile applicando la formula:
𝑨=
𝜶𝑳𝑻 𝑳
(𝟏 − 𝜶) 𝑻
+
𝒆𝒆
𝒏
𝟎≤𝜶≤𝟏
𝜶 : scalare che indica la probabilità che l’utente navighi
seguendo gli hyperlink piuttosto che digitando un nuovo URL
nel browser.
𝟏−𝜶
𝒏
𝒆𝒆𝑻 = 𝑬 : matrice di teletrasporto che rappresenta il fatto
che l’utente può saltare in una nuova pagina qualsiasi.
𝒆 è un vettore di 1.
32
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Perché usare il metodo delle potenze





L’implementazione vista per HITS usa il metodo delle potenze.
Richiede solo un prodotto matrice vettore. Il vettore hub può
essere ricavato al termine della computazione.
Perfetto per il parallelismo: si pensi al prodotto matrice vettore.
Si può tranquillamente iterare solo con una matrice e poi una
volta ottenuto il vettore delle authority ricavare il vettore degli hub
a partire da quest’ultimo.
Esistono anche altri metodi.
33
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio completo di HITS

Viene inviata una query di ricerca.

Arriviamo al grafo dei vicini formato dalle pagine {1, 2, 3, 5, 6,10}.
3
10
pagina ottenuta dalla
query
vicino delle pagine
ottenute dalla query
2
1
6
5
34
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio completo di HITS (2)

Dopo aver costruito il grafo dei vicini otteniamo la corrispondente
matrice di adiacenza:
𝐋=
1
2
3
5
6
10
1
0
0
1
0
1
0
2
1
0
0
0
0
0
3
0
0
0
0
1
0
5
0
0
0
0
0
0
6
0
0
1
1
0
0
10
0
0
0
0
1
0
35
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio completo di HITS (3)

Le matrici authority e hub sono formate come segue:
1
2
3
5
6
10
1
2
0
1
0
1
1
0
2
0
1
0
0
0
0
1
0
3
1
0
1
0
0
1
1
0
0
5
0
0
0
0
0
0
1
0
3
0
6
1
0
0
0
2
0
0
0
0
0
10
1
0
1
0
0
1
1
2
3
5
6
10
1
1
0
0
0
0
0
2
0
0
0
0
0
3
0
0
2
1
5
0
0
1
6
0
0
10
0
0
𝑳𝑻 𝑳
𝑳𝑳𝑻
36
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio completo di HITS (4)

Otteniamo i 2 vettori 𝑥 𝑇 ed 𝑦 𝑇 che determinano rispettivamente
authority score ed hub score.
𝒙𝑻 =
(
0
0
0,3660 0,1340
𝒚𝑻 =
(
0,3660
0
0,2113
0
0,5
0
)
0,2113
0,2113
)

Ripetizioni di 0: evitabili rendendo le matrici irriducibili.

Valori positivi identici: ordinati in base alla posizione.
37
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Esempio completo di HITS (5)


Adesso calcoliamo i 2 vettori ma questa volta usando
l’accorgimento spiegato precedentemente con 𝜶 = 𝟎. 𝟗𝟓.
𝒙𝑻 =
(
0,0032
0,0023
0,3634
0,1351
0,4936
0,0023
)
𝒚𝑻 =
(
0,3628
0,0032
0,2106
0,0023
0,2106
0,2106
)
I risultati per authority e hub ranking sono i seguenti:
Authority Rank:
6
3
5
1
2
10
Hub Rank:
1
3
6
10
2
5
38
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Pro e contro di HITS
Pro
Contro
Due metodi di ricerca a disposizione Algoritmo query-dependent: calcolo
dell’utente. Pagine authority per dei punteggi a tempo di query
ricerche precise, pagine hub per
ricerche ampie.
Dimensione ridotta del problema Suscettibilità al link spamming
relativamente al Web.
dovuta al numero di pagine
considerate, ridotto rispetto al web
Topic drift: possibilità di ottenere
documenti che non c’entrano niente
con l’argomento cercato durante la
costruzione del grafo.
39
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Evitare il topic drift


Si assegna un peso alle pagine.
Si costruisce una query più specifica prendendo le prime
1000 parole di ogni pagina trovata inizialmente (non i
vicini).

Si calcola la similarità per ogni documento del grafo.

Si eliminano le pagine poco corrispondenti dai risultati.

Questa procedura mitiga il fenomeno del link spamming.
40
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Evitare il topic drift (2)

La formula per la similarità è:
𝒔𝒊𝒎𝒊𝒍𝒂𝒓𝒊𝒕𝒚 𝑸, 𝑫𝒋 =
𝒕
𝒊=𝟏(𝒘𝒊𝒒
𝒕
𝟐
𝒊=𝟏(𝒘𝒊𝒒 )
∗
∗ 𝒘𝒊𝒋 )
𝒕
𝟐
𝒊=𝟏(𝒘𝒊𝒋 )
𝑸 = 𝐪𝐮𝐞𝐫𝐲 𝐦𝐨𝐝𝐢𝐟𝐢𝐜𝐚𝐭𝐚
𝑫𝒋 = 𝐝𝐨𝐜𝐮𝐦𝐞𝐧𝐭𝐨 𝐞𝐬𝐚𝐦𝐢𝐧𝐚𝐭𝐨
𝒘𝒊𝒒 = 𝒇𝒓𝒆𝒒𝒊𝒒 ∗ 𝑰𝑫𝑭𝒊
𝒘𝒊𝒋 = 𝒇𝒓𝒆𝒒𝒊𝒋 ∗ 𝑰𝑫𝑭𝒊
𝒇𝒓𝒆𝒒𝒊𝒒 = 𝐟𝐫𝐞𝐪𝐮𝐞𝐧𝐳𝐚 𝐝𝐞𝐥 𝐭𝐞𝐫𝐦𝐢𝐧𝐞 𝒊 𝐧𝐞𝐥𝐥𝐚 𝐪𝐮𝐞𝐫𝐲 𝑸
41
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Evitare il topic drift (3)
𝒔𝒊𝒎𝒊𝒍𝒂𝒓𝒊𝒕𝒚 𝑸, 𝑫𝒋 =
𝒕
𝒊=𝟏(𝒘𝒊𝒒
𝒕
𝟐
𝒊=𝟏(𝒘𝒊𝒒 )
∗ 𝒘𝒊𝒋 )
+
𝒕
𝟐
𝒊=𝟏(𝒘𝒊𝒋 )
𝒇𝒓𝒆𝒒𝒊𝒋 = 𝐟𝐫𝐞𝐪𝐮𝐞𝐧𝐳𝐚 𝐝𝐞𝐥 𝐭𝐞𝐫𝐦𝐢𝐧𝐞 𝐢 𝐧𝐞𝐥 𝐝𝐨𝐜𝐮𝐦𝐞𝐧𝐭𝐨 𝑫𝒋
𝑰𝑫𝑭𝑰 (𝐈𝐧𝐯𝐞𝐫𝐭𝐞𝐝 𝐃𝐨𝐜𝐮𝐦𝐞𝐧𝐭 𝐅𝐫𝐞𝐪𝐮𝐞𝐧𝐜𝐲) =
𝒕𝒐𝒕𝒂𝒍𝒆 𝒅𝒆𝒊 𝒅𝒐𝒄𝒖𝒎𝒆𝒏𝒕𝒊 𝒅𝒆𝒍 𝒘𝒆𝒃
𝒍𝒐𝒈
𝒏𝒖𝒎𝒆𝒓𝒐 𝒅𝒊 𝒅𝒐𝒄𝒖𝒎𝒆𝒏𝒕𝒊 𝒄𝒉𝒆 𝒄𝒐𝒏𝒕𝒆𝒏𝒈𝒐𝒏𝒐 𝒊𝒍 𝒕𝒆𝒓𝒎𝒊𝒏𝒆 𝒊
42
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Rimozione dei nodi inutili

Un possibile approccio all’eliminazione dei nodi è basato sul
fissaggio di una soglia minima. Ci sono tre possibilità per fissare
la soglia:



Peso medio: la soglia è una media dei pesi di tutti i
documenti.
Peso medio dell’insieme iniziale: la soglia è una media dei
pesi dei documenti dell’insieme iniziale (non i vicini).
Frazione del peso massimo: la soglia è una frazione del
peso massimo.
43
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Applicazione dell’algoritmo in bibliometria
La bibliometria è una scienza applicata ai vari ambiti scientifici che
utilizza la struttura di citazioni dei documenti per produrre stime
numeriche della loro importanza e del loro impatto.
In particolare esistono connessioni tra l’HITS e i due concetti di:


co-citazione: due documenti sono citati da uno stesso terzo
documento;
co-riferimento: due documenti citano un terzo documento
comune.
44
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Applicazione dell’algoritmo in bibliometria (2)
Supponiamo di avere il grafo di
hyperlink mostrato a fianco, e le
relative matrici:


La matrice authority ha una
diretta relazione con la cocitazione.
A
B
C
D
A B C D
La matrice hub ha una diretta
relazione con il co-riferimento.
A 0 1 1 0
𝑳=
B 1 0 1 0
C 0 1 0 1
D 0 1 0 0
45
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Applicazione dell’algoritmo in bibliometria (3)
A B C D
A
B
C
D
A 1 0 1 0
𝑳𝑻 𝑳 = B 0 3 1 1 = 𝑫𝒊𝒏 + 𝑪𝒄𝒊𝒕
C 1 1 2 0
D 0 1 0 1
𝑫𝒊𝒏 è una matrice diagonale che indica il numero di citazioni di un
documento (es: C è citato da 2 documenti).
𝑪𝒄𝒊𝒕 matrice di co-citazione (es: A e C hanno un solo documento
che condivide entrambe).
46
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Applicazione dell’algoritmo in bibliometria (4)
A B C D
A
B
C
D
A 2 1 1 1
𝑳𝑳𝑻 = B 1 2 0 0 = 𝑫𝒐𝒖𝒕 + 𝑪𝒓𝒆𝒇
C 1 0 2 1
D 1 0 1 1
𝑫𝒐𝒖𝒕 è una matrice diagonale che indica il numero di riferimenti
del documento (es: A ha 2 riferimenti).
𝑪𝒓𝒆𝒇 matrice di co-riferimento che indica il numero di riferimenti
che due documenti hanno in comune (es: A e C hanno un solo
documento che condivide entrambe).
47
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Conclusioni
48
Esame CBD
a.a. 2010/2011,
Pasquale Marco
Puzio Buzzoni
di CBD
a.a. 2011/2012,
Riferimenti e link utili
Google's PageRank and Beyond: The Science of Search Engine
Rankings. Autori: Amy N. Langville, Carl D. Meyer. Princeton
University Press, 2006:
http://press.princeton.edu/quotes/q8216.html
Improved Algorithms for Topic Distillation in a Hyperlinked
Environment. Autori: Krishna Bharat, Monika B. Henzinger:
http://dl.acm.org/citation.cfm?id=290972
Link Analysis: Hubs and Authorities on the World. Autori: Chris H.Q.
Ding, Hongyuan Zhay, Xiaofeng He, Parry Husbands, Horst D.
Simon. 2003: http://citeseerx.ist.psu.edu/
Wolfran Mathworld: http://mathworld.wolfram.com/
Teoma: http://www.teoma.com/
49