380 likes | 478 Views
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
E N D
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 Dominique Hong
Bestehende Ansätze • Soziologen, Statistiker, Informatiker • Unterschied: • Knoten wird relativ zu allen anderen Knoten bewertet • Wurzelknoten(menge) wird nicht gesondert behandelt Dominique Hong
Notation • gerichteter GraphG = (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) Dominique Hong
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 Dominique Hong
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. Dominique Hong
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: Dominique Hong
Problemformulierung 4. Schritt • Gegeben sei Graph G, bestimme eine Rangfolge für alle Knoten • Spezialfall von 3 mit R=T=V. Dominique Hong
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 • piist der i-te Pfad in P • Skalar λ ≥ 1, bestimmt die Bedeutung von r nach t (hier λ=2) Dominique Hong
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 Dominique Hong
Beispielgraphen Dominique Hong
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 Dominique Hong
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, R-D-F-T} • Problem: Knoten und Kanten können öfters gezählt werden auf unterschiedlichen Pfaden und können damit die Bedeutung beeinflussen Dominique Hong
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} Dominique Hong
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 Dominique Hong
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 Dominique Hong
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 Dominique Hong
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 Dominique Hong
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 Dominique Hong
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) Dominique Hong
PageRank with Priors • PageRank wird „personalisiert“ • Definiere einen Vektor pr mit Wahrscheinlichkeiten pr = {p1 ,…,p|V|}, wobei die Wahrscheinlichkeiten sich zu 1 aufaddieren und pvdie relative Bedeutung am Knoten v angibt • Benutze pv=1/|R| für v ∈ R, pv=0 sonst Dominique Hong
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: Dominique Hong
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 Dominique Hong
HITS with Priors • Benutzt die gleichen Vektoren und Wahrscheinlichkeiten wie PageRank with Priors Dominique Hong
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 Dominique Hong
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 Dominique Hong
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 Dominique Hong
Beispielgraphen Dominique Hong
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 Dominique Hong
Gerichteter Graph • A und F sind Wurzelknoten Dominique Hong
Netzwerk der Terroristen des 11. September 2001 • Khemais und Beghal sind Wurzelknoten • 63 Knoten, 308 Kanten (bekannte Interaktionen) Dominique Hong
“9/11 Network” Dominique Hong
Biotech Collaboration Network Dominique Hong
Biotech Collaboration Network • 2700 Knoten, 8690 Kanten • Cambridge und Oxford sind Wurzelknoten Dominique Hong
Citeseer Co-Autorschaft Netzwerk • 387.703 Papers zwischen 1991 und 2002 • Autoren sind Knoten, Kanten sind Co-Autorschaft zwischen ihnen • Kante, wenn 2 Autoren an einem oder mehr Papers zusammengearbeitet haben Dominique Hong
Citeseer Co-Autorschaft Netzwerk • Tom Mitchell ist Wurzelknoten • Die meisten waren zur gleichen Zeit an der CMU zusammen Dominique Hong
Computation Times for Ranking Algorithms (in seconds) PRankP and HITS converged in 20-30 iterations Dominique Hong
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?? Dominique Hong