Metodi Computazionali
Elisabetta Fersini
[email protected]
A.A. 2009/2010
Catene di Markov
  Applicazioni:
Fisica – dinamica dei sistemi
  Web – simulazione del comportamento utente
  Biologia – evoluzione delle cellule
  Musica – definizione di sw per la composizione
musicale
  Finanza – credit risk
 
2
Web Mining
 
 
Il web è una collezione di documenti eterogenei
in continua evoluzione caratterizzato da:
 
Vastità dell’informazione disponibile
 
Difficoltà
di
“interessante”
reperire
facilmente
conoscenza
Nasce così una fertile area di ricerca con lo scopo
di applicare metodi in grado “organizzare”, per
quanto possibile, il contenuto del web.
3
Web Structure Mining
  Obiettivo:
 
Analizzare la struttura topoligica di una rete di
informazioni al fine di identificare comunità,
relazioni nascoste, etc…
  Link
 
Analysis
Area del Web Structure Mining orientata alla
Social Newtork Analysis
Markov Chains:
la gallina dalle uova d’ora di Google!
4
Google…le assunzioni
 
Assunzioni:
1. 
Un Hyperlink è un riferimento di una pagine web i
contenuto in una pagina web j
 
 
un link da una pagina j verso una pagina i corrisponde ad
una “raccomandazione” della pagina i da parte dell’autore
della pagina j .
se le pagine j e i sono connesse tramite un link, allora la
probabilità che esse trattino dello stesso argomento è più
alta in confronto al caso in cui esse non siano connesse.
j
i
5
Google…le assunzioni
 
Assunzioni:
2. 
La visibilità di un sito si misura mediante il numero di
siti che puntano ad esso
3. 
La luminosità di un sito rappresenta il numero di siti
che esso punta
4. 
In generale la Link Analysis basa i suoi assunti sulla
teoria dei grafi, in particolare:
 
Un LINK GRAPH contiene un nodo per ogni pagina j ed
assumono esista un arco diretto (j,i), se e solo se la
pagina j contiene un hyperlink verso la pagina i.
6
PageRank - definizioni intuitive (1)
 
 
Introdotto da Page e Brin nel 1998
L’importanza
di
una
pagina
i
è
influenzata
dall’importanza delle pagine che puntano ad essa, in
particolare:
 
un link dalla pagina j alla pagina i viene interpretato
come un voto di j per i e se a sua volta anche i ha un
link verso j entrambe ricevono un voto ancora più alto
(Feedback-Link).
 
Se la pagina i ha un PageRank più alto, il valore di un
suo link è ancora più elevato; se ha un valore più basso
non esiste alcuna penalità.
7
PageRank - definizioni intuitive (2)
 
L'importanza di una pagina è data dal voto che
questa riceve "dalla Rete" nella sua globalità
 
PageRank rappresenta l’intero web come un grafo
diretto G = (V,E) contenente n pagine; il valore di
PageRank associato ad una pagina i, denotato da
P(i) è definito da:
(1)
Oj è il numero di
out-link di j
8
Notazione Matriciale
 
 
 
Sistema di n equazioni con n incognite
Sia P il vettore colonna dei PageRank score, cioè
P = (P(1), P(2), …, P(n))T.
Sia A la matrice di adiacenza del grafo del web,
dove
(2)
 
Possiamo scrivere le n equazioni come
(3)
9
Risolvere il sistema di equazioni
 
PageRank può essere calcolato da un semplice
algoritmo iterativo
 
La soluzione al sistema corrisponderà agli
autovettori
della
matrice
normalizzata
rappresentante i link del web
 
Problema: per ottenere la convergenza devono
essere soddisfatte due condizioni
 
 
1 è il più grande autovalore
P è il principale autovettore
10
…un passo indietro verso le Markov chain…
 
Per introdurre le due condizioni la stessa
equazione (3) dalla modellazione mediante
catene di Markov:
 
 
 
Ogni pagina web rappresenta uno stato.
Ogni hyperlink è una transizione, che permette di
passare da una pagina all’altra con una
determinata probabilità.
Tale framework permette di
navigazione di un utente web.
simulare
la
11
Random surfing
  Oi
denota il numero di out-links della
pagina i.
  Ogni
probabilità di transizione è 1/Oi se
assumiamo che l’utente sceglierà di
passare da una pagina all’altra in maniera
random.
12
Matrice delle probabilità di transizione
 
Sia A la matrice di probabilità di transizione
 
Aij rappresenta la probabilità che un utente nello
stato i (pagina i) passi allo stato j (pagina j). Aij è
definita dall’equazione(2).
13
Let us start
 
Data la distribuzione di probabilità iniziale che
l’utente si trovi in un particolare stato o pagina
 
 
p0 = (p0(1), p0(2), …, p0(n))T (vettore colonna)
A : n×n matrice delle probabilità di transizione,
Avremo:
(4)
(5)
 
Se la matrice A soddisfa l’equazione (5), allora
diremo che A è la matrice stocastica della
catena di Markov.
14
Distribuzione di probabilità stazionaria
 
Dal teorema delle Markov chain:
 
 
Una catena di markov definita da una matrice
stocastica A ha un’unica distribuzione di
probabilità stazionaria se A è irriducible e
aperiodica.
Una distribuzione di probabilità stazionaria
garantisce che dopo una serie di transizioni pk
convergerà ad un vettore di probabilità π
15
…torniamo al grafo del web…
  Per
verificare la convergenza dell’algoritmo
verifichiamo le due condizioni
 
 
A è una matrice stocastica
 
A è irriducibile e aperiodica
Nessuna di queste condizioni è verificata!!!
16
A non è una matrice stocastica
 
A è la matrice di transizione del grafo del web
 
Non soddisfa l’equazione (5)
 
Perchè?
  Molte
pagine web non hanno out-links, per cui in A potrebbero
esserci delle righe uguali a 0.
17
Esempio
18
A non è una matrice stocastica: soluzione
1. 
2. 
Rimuovere tutte le pagine che hanno non
hanno out-links
Aggiungere un set di out-links dalle
pagine che non rispettano l’equazione (5)
verso tutte le altre pagine del grafo.
19
A non è irriducibile
 
Irriducibile significa che il grafo del web è fortemente
connesso.
 
Definizione: G = (V, E) è fortemente connesso se e solo
se, per ogni coppia di nodi i,j ∈ V, esiste un percorso da i
to j.
 
Perchè il grafo del web rappresentato da A non è
irriducibile?
per alcune coppie di nodi i,j non è detto che esista un
percorso
 
20
A non è aperiodica
  Uno
stato i in una catena di Markov è
periodico se esiste un ciclo che la catena
deve attraversare.
  Se uno stato non è periodico si dice
aperiodico.
  Una
catena di Markov è definita
aperiodica se tutti gli stati sono
aperiodici.
21
Esempio di stato periodico
Esempio: Catena di Markov di periodo 3.
22
Irriducibilità e aperiodicità: soluzione
  Aggiungere
un link da ogni pagina verso
tutte le altre e dare ad ogni link una
probabilità di transizione molto bassa,
controllata da un parametro d.
23
PageRank
 
Il coefficiente di ranking della pagina pi si ottiene
risolvendo il seguente sistema di eq. lineari:
con il seguente vincolo:
Vettore delle probabilità
stazionarie a cui la catena
di markov converge!!!
24