k-kurze knotendisjunkte Pfade

Werbung
Fachbereich Informatik
Fachgebiet: Intelligente Systeme
Prof. Dr. Thomas Hofmann
Seminar Data Mining
31.Mai 2005 / SS 2005
Algorithms for Estimating
Relative Importance in
Networks
Paper von Scott White, Padhraic Smyth
Information and Computer Science
University of California, Irvine 2003
Präsentation : Dominique Hong
Motivation


Datenmengen können oftmals als Graphen
betrachtet
Komplexe Graphen werden für die Datenanalyse
immer bedeutender
– Soziale Netzwerke
– Web Graphen
– Biologische Netzwerke


Es werden Tools benötigt, die die Graphen
quantitativ charakterisieren können
Frage, welche Knoten im Graphen am
„bedeutendsten“ relativ zu einem oder mehreren
Knoten sind
31.05.2005
Dominique Hong
2/37
Bestehende Ansätze


Soziologen, Statistiker, Informatiker
Unterschied:
– Knoten wird relativ zu allen anderen Knoten
bewertet
– Wurzelknoten(menge) wird nicht gesondert
behandelt
31.05.2005
Dominique Hong
3/37
Notation






gerichteter Graph G = (V,E)
V: Knotenmenge (vertices)
E: Kantenmenge (edges)
e = (u,v): gerichtete Kante von u nach v
Keine Schleifen oder parallelen Kanten
Bei ungerichteten Graphen: jede Kante e =
(u,v) hat auch eine Kante e‘ = (v,u)
31.05.2005
Dominique Hong
4/37
Notation








Weg p ist eine Folge (u,u1 ), (u1, u2 ),…,(uk ,v)
Ein Pfad ist ein Weg, bei dem jeder Knoten nur
einmal vorkommt
2 Pfade heißen knotendisjunkt, wenn sie keine
gemeinsamen Knoten haben
k-kurze Pfade: Menge aller Pfade, deren Länge ≤
k ist
P(u,v) = Menge von Pfaden zwischen u und v
|Z| = Anzahl der Elemente in Z
Sout(u) = Menge der Kanten, die von u aus gehen
dout(u) = |Sout(u)|; Anzahl der ausgehenden Kanten
31.05.2005
Dominique Hong
5/37
Problemformulierung
1. Schritt
Gegeben seien der Graph G und r und t mit {r,t} ⊂
G. Bestimme die „Bedeutung (Importance)“ von
t in Bezug zum Wurzelknoten r. Wir bezeichnen dies
als I(t|r), eine nichtnegative Größe.
2. Schritt
Gegeben seien der Graph G und der Knoten r ∈ G,
bestimme eine Rangfolge aller Knoten in T(G), T
⊆ V, in Bezug zu r.
Bestimme I(t|r) für alle t ∈ T und sortiere die
Werte, so dass der größte Wert die höchste
Wichtigkeit und der kleinste die niedrigste erhält.
31.05.2005
Dominique Hong
6/37
Problemformulierung
3. Schritt
 Gegeben seien ein Graph G, eine Knotenmenge T(G) und
eine Wurzelknotenmenge R(G) mit R ⊆ V, bestimme eine
Rangfolge aller Knoten in T in Bezug zu R.
 Berechne I(t|R) als eine Funktion aller Knoten r ∈ R, wobei
I(t|R) als eine Funktion der Menge der einzelnen Rankings
definiert ist
 Beispiel: Die durchschnittliche Bedeutung in Bezug zur
Knotenmenge R:
31.05.2005
Dominique Hong
7/37
Problemformulierung
4. Schritt


Gegeben sei Graph G, bestimme eine
Rangfolge für alle Knoten
Spezialfall von 3 mit R=T=V.
31.05.2005
Dominique Hong
8/37
Gewichtete Pfade



2 Knoten sind abhängig der Pfade zwischen ihnen
miteinander verbunden
Je länger der Pfad ist, desto weniger wichtig wird er
behandelt
Definiere I(t|r) als
- P(r,t) Menge der Pfade von r nach t
- pi ist der i-te Pfad in P
- Skalar λ ≥ 1, bestimmt die Bedeutung von r nach t (hier
λ=2)
31.05.2005
Dominique Hong
9/37
Gewichtete Pfade


I(t|r) nimmt exponentiell mit der
Wegelänge ab
Wie wird P bestimmt?
– Kürzeste Pfade
– k-kurze Pfade
– k-kurze knotendisjunkte Pfade
31.05.2005
Dominique Hong
10/37
Beispielgraphen
31.05.2005
Dominique Hong
11/37
Kürzeste Pfade


Nützlich, wenn Knoten, die nicht in der
Nachbarschaft sind, vernachlässigbar sind
Beispiel: Benutze so wenig Knoten wie
möglich
– Problem: kann zu schlechten Annäherungen
führen


Beispiel: die kürzesten Wege in b zwischen
R und T sind {R – C – T, R – D – T}
Damit werden allerdings viele Verbindungen
gar nicht erst berücksichtigt
31.05.2005
Dominique Hong
12/37
k-kurze Pfade


Menge der Pfade mit Länge ≤ k
3-kurze Pfade in b: {R-C-T,
R-D-T, R-A-B-T, R-C-B-T, R-A-C-T, R-E-F-T, R-E-D-T, RD-F-T}

Problem: Knoten und Kanten können öfters gezählt
werden auf unterschiedlichen Pfaden und können
damit die Bedeutung beeinflussen
31.05.2005
Dominique Hong
13/37
k-kurze
knotendisjunkte Pfade


Menge der k-kurzen Graphen, die weder
Knoten noch Kanten gemeinsam haben
Beispiel: Menge der k-kurzen
knotendisjunkten Pfade in b sind {R-C-T,R-
D-T,R-A-B-T,R-E-F-T}
31.05.2005
Dominique Hong
14/37
k-kurze
knotendisjunkte Pfade



Beachtet Kapazitätsbeschränkungen auf Knoten und
Kanten (jeder Knoten wird nur einmal benutzt)
Ergebnis sind gute Annäherungen an die relative
Bedeutung der Knoten, die von einer kleinen Menge
von Pfaden in der Nachbarschaft mit Radius k von
den Wurzelknoten abhängen
Heuristischer BFS-Algorithmus, um eine gute
Wegemenge P zu bestimmen
31.05.2005
Dominique Hong
15/37
Markov Ketten

Ein Graph wird stochastisch durchlaufen
– Nächster Knoten wird abhängig von der
stochastischen Funktion bestimmt
– Zeit bei einem Knoten kann als proportional zu
einer Abschätzung der globalen Bedeutung
dieses Knotens relativ zu allen anderen Knoten
angesehen werden
– Beispiel: PageRank
31.05.2005
Dominique Hong
16/37
Markov Ketten


Annahme, dass der Graph in eine
äquivalente Markov Kette umgewandelt
werden kann
Wahrscheinlichkeit des Übergangs von i zu j
ist p(i|j) = 1/dout(j), falls es eine Kante
zwischen i und j gibt, sonst p(i|j) = 0
31.05.2005
Dominique Hong
17/37
Markov Zentralität

Inverse der mean first-passage time in der
Markov Kette:
Mean first-passage time mrt ist die erwartete
Anzahl von Schritten bis zum Erreichen von Knoten t
ausgehend vom Knoten r
n ist Anzahl der Schritte, frt(n) ist die
Wahrscheinlichkeit, dass die Markov Kette den
Zustand t in genau n Schritten erreicht
31.05.2005
Dominique Hong
18/37
Markov Zentralität




Berechnung von m über die Mean first passage
Matrix
M = (I – Z + EZdg)D
I ist die Einheitsmatrix, E Matrix mit überall 1, D ist
Diagonalmatrix mit dvv=1/ π(v), π(v) ist die
stationäre Verteilung des Knoten v, Z ist
Fundamentalmatrix, Zdg ist auf der Diagonalen wie
Z, sonst 0
Z = (I – A –eπT)-1
A ist Markov Übergangsmatrix, e ist ein
Spaltenvektor mit 1, π ist Spaltenvektor mit der
stationären Verteilung für die Markov Kette
31.05.2005
Dominique Hong
19/37
Markov Zentralität



Für R=T=V erhält man ein globales Ranking
Knoten, die näher am Zentrum sind, sind
höher gerankt als solche, die weiter weg
sind
Problem:
– Rechenkomplexität liegt bei O(|V|3)
– Speicherkomplexität liegt bei O(|V|2)
31.05.2005
Dominique Hong
20/37
PageRank with Priors



PageRank wird „personalisiert“
Definiere einen Vektor pr mit
Wahrscheinlichkeiten pr = {p1 ,…,p|V|},
wobei die Wahrscheinlichkeiten sich zu 1
aufaddieren und pv die relative Bedeutung
am Knoten v angibt
Benutze pv=1/|R| für v ∈ R, pv=0 sonst
31.05.2005
Dominique Hong
21/37
PageRank with Priors


Definiere eine Rückwahrscheinlichkeit β, 0 ≤
β ≤ 1, die bestimmt, wie oft zu der
Wurzelknotenmenge in R zurückgegangen
wird
Integration beider Erweiterungen in die
ursprüngliche PageRank Formel:
31.05.2005
Dominique Hong
22/37
PageRank with Priors



I(v|R)=π(v) nach der Konvergenz
Dies entspricht einer Markov Kette für Random
Surfer, der zur Wurzelknotenmenge R bei einer
Wahrscheinlichkeit β für jeden Schritt zurückkommt
Bestimmt die relative Wahrscheinlichkeit dafür, auf
einem bestimmten Knoten beim Durchlauf zu
landen
31.05.2005
Dominique Hong
23/37
HITS with Priors

Benutzt die gleichen Vektoren und
Wahrscheinlichkeiten wie PageRank with
Priors
31.05.2005
Dominique Hong
24/37
HITS with Priors


Zufälliger Surfer startet an irgendeiner Seite in G
und besucht eine neue Seite bei jedem Zeitpunkt
Vor dem Besuchen, wirft er eine Münze
– Kopf und gerade Zeit – gehe zu in-link
– Kopf und ungerade Zeit – gehe zu out-link
– Zahl – gehe zu einer Seite in R ausgewählt nach pr

Knoten, die näher an der Wurzelknotenmenge sind,
werden höher bewertet
31.05.2005
Dominique Hong
25/37
K-step Markov

Zufälliger Weg von R mit einer vorgegebenen Länge
k
Bestimmung der relativen Wahrscheinlichkeit, dass
das System an einem bestimmten Knoten Zeit
verbringt

I(t|R) = [ApR+ A2pR …A3pR]

– A ist die Übergangsmatrix n x n mit
Wahrscheinlichkeiten
– pR ist ein n x 1 Vektor mit den Wahrscheinlichkeiten der
Wurzelknotenmenge R
– I(t|R) ist der t-te Eintrag dieses Summenvektors
31.05.2005
Dominique Hong
26/37
Bewertung anhand von
Simulationsdaten


Interpretation der Ergebnisse hängt vom
Ziel der Analyse und der Wahl der
Parameter β und K
5 verschiedene Methoden evaluiert
– Gewichtete k-kurze knotendisjunkte Pfade
(WKpaths)
– Markov Zentralität (MarkovC)
– PageRank with Priors (PRankP)
– HITS with Priors (HITSP)
– K-step Markov (KSMarkov)

β = 0,3; K = 6
31.05.2005
Dominique Hong
27/37
Beispielgraphen
31.05.2005
Dominique Hong
28/37
Ungerichteter Graph



Bei PageRank with Priors,
HITS with Priors und k-step
Markov wird jeder Knoten
wegen des Grads gleich
bewertet
Markov Zentralität bewertet
J am höchsten, die anderen
Knoten werden gleich
bewertet
Gewichtete k-kurze Pfade
bewertet C,E,H am
höchsten, dann J und dann
den Rest
31.05.2005
Dominique Hong
29/37
Gerichteter Graph

A und F sind Wurzelknoten
31.05.2005
Dominique Hong
30/37
Netzwerk der Terroristen
des 11. September 2001


Khemais und Beghal sind Wurzelknoten
63 Knoten, 308 Kanten (bekannte Interaktionen)
31.05.2005
Dominique Hong
31/37
“9/11 Network”
31.05.2005
Dominique Hong
32/37
Biotech Collaboration
Network
31.05.2005
Dominique Hong
33/37
Biotech Collaboration
Network


2700 Knoten, 8690 Kanten
Cambridge und Oxford sind Wurzelknoten
31.05.2005
Dominique Hong
34/37
Citeseer Co-Autorschaft
Netzwerk



387.703 Papers
zwischen 1991 und
2002
Autoren sind Knoten,
Kanten sind CoAutorschaft zwischen
ihnen
Kante, wenn 2 Autoren
an einem oder mehr
Papers
zusammengearbeitet
haben
31.05.2005
Dominique Hong
35/37
Citeseer Co-Autorschaft
Netzwerk


Tom Mitchell ist Wurzelknoten
Die meisten waren zur gleichen Zeit an der
CMU zusammen
31.05.2005
Dominique Hong
36/37
Computation Times for Ranking
Algorithms (in seconds)
Data
Number of Number of
Nodes
Edges
Weighted
Paths
KStep
Markov
K=6
Prank
With
Priors
HITS
With
Priors
Terrorist
63
308
0.01
0.28
1.17
0.57
Biotech
3k
13k
0.02
0.39
3.45
3.64
Author1
30k
88k
0.05
1.11
10.80
11.30
Author2
30k
88k
0.04
1.55
17.06
17.99
31.05.2005
PRankP and HITS converged in 20-30 iterations
Dominique Hong
37/37
Pro & Contra

Pro:
– Algorithmen können die Bedeutung der Knoten
relativ zu einer Wurzelknotenmenge bestimmen
– Ergebnisse decken sich mit realen Daten

Contra
– Es wird eine Priori-Information über den Graph
benötigt

Offene Frage: Algorithmen ergeben nicht die
gleichen Ergebnisse??
31.05.2005
Dominique Hong
38/37
Herunterladen