7. Vorlesung - Martin-Luther-Universität Halle
Transcription
7. Vorlesung - Martin-Luther-Universität Halle
7. Vorlesung • • • • Bipartite Kerne Das kopierende Modell Bow-tie Struktur des Web Random Sampling von Web Seiten WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 179 Web als ein Soziales Netzwerk Small-world Netzwerk: • Niedriger (Durchschnitts) Durchmesser • Hoher Clustering Koeffizient v Viele Nachbarn von v sind auch selbst Nachbarn. Grund: Web besteht aus Communities. WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 180 Cyber Communities • Cyber Community: – Eine Gruppe von Menschen, die ein gemeinsames Interesse teilen. – Web-Seiten, die von diesen Menschen erzeugt/zitiert werden. • Beispiele – Große Autohersteller – Ölverschmutzung an Japans Küste – Britney Spears Fans WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 181 Struktur von Cyber Communities [Kumar et al, 1999] • Hubs: Resourcen für das von der Community geteiltem Interesse – Beispiele: • Yahoo! Autos • Ölverschmutzung in der Nähe von Japan: bookmarks • Donna’s Britney Spears Links • Authorities: Zentrale Seiten für das von der Community geteiltem Interesse – Beispiele: • Mazda.com • Britney Spears: The official site WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 182 Dichte Bipartite Subgraphen • Hubs – Zitieren viele Autoritäten – Haben überlappende Zitate Hubs Autoritäten • Autoritäten – Werden von vielen Hubs zitiert – Oft zusammen zitiert • Deshalb: eine Cyber Community wird durch einen dichten gerichteten bipartiten Subgraphen charakterisiert. WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 183 Bipartite Kerne • (i,j)-Bipartiter Kern: (H’,A’) – H’: Teilmenge von H der Größe i – A’: Teilmenge von A der Größe j – Subgraph induziert auf (H’,A’) ist ein vollständiger bipartiter Graph H A • Hypothese: Die “meisten” dichten bipartiten Teilgraphen des Webs haben Kerne. • Deshalb: bipartite Kerne sind Fingerabdrücke von Cyber Communities. WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 184 Finden von Cyber Communities • Bipartite Kerne können effizient durch einen Crawl gefunden werden • Das Web hat eine Vielfalt von Cyber Communities – Etwa 200k disjunkte (3,*)-Kerne in einem 1996 crawl – Crawl hatte ~200M Seiten – Für einen zufälligen Graphen dieser Größe ist es unwahrscheinliche auch nur einen (3,3) Kern zu enthalten! WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 185 Das kopierende Modell [Kleinberg et al 1999] [Kumar et al 2000] • Initialisierung: Ein Knoten • Entwicklung: In jedem Schritt wird ein neuer Knoten v hinzugefügt. v verbindet sich zu d Nachbarn mit ausgehenden Kanten. • Prototyp Auswahl: v wählt einen zufälligen Knoten u aus dem Graph. • Bernoulli Kopieren: Für alle i = 1,…,d, – v wirft Münze mit Wahrscheinlichkeit α für Kopf – Falls Kopf, v verbindet sich zu zufälligem Knoten – Falls Zahl, v verbindet sich zum i-ten Nachbarn von u WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 186 Das kopierende Modell : Motivation • Wenn eine neue Seite erstellt wird, hat der Autor ein “Thema” im Kopf • Autor wählt Links von einem “Prototyp” u über das Thema • Autor fügt durch das Einfügen von zufälligen Links eigene Ideen hinzu. WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 187 Das kopierende Modell: Gradverteilung • Falls α = 0, dann ist der i-te Nachbar von v der Knoten u’ mit Wahrscheinlichkeit indeg(u’)/Σw indeg(w) – Identisch zum Modell der bevorzugten Verbindung – Im Grenzwert ist der Anteil der Seiten mit Eingangsgrad k die Wahrscheinlichkeit 1/k2. • Für beliebige α – Anteil der Seiten mit Eingangsgrad k ist 1/k(2-α)/(1 - α) WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 188 Erdős-Rényi Zufallsgraphen: Bipartite Kerne • Gn,p mit p = d/n – Für feste A,B ⊆ Gn,p, |A| = i, |B| =j – Wahrscheinlichkeit daß A,B einen kompleten bipartite graph bilden: – # solcher Paare A,B: – Erwartete # (i,j)-bipartiter Kerne ist höchstens WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 189 Bow Tie Struktur des Web [Broder et al 2000] WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 193 Random Sampling von Web Seiten WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 194 Überblick • Problem Definition • Random sampling von Web Seiten bezüglich ihres PageRank • Uniform Sampling von Web Seiten (Henzinger et al) • Uniform Sampling von web Seiten (Bar-Yossef et al) WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 195 Random Sampling von Web Seiten • W = ein Schnappschuss des “indizierbaren Webs” Indexable web – Betrachte nur “statische” HTML web Seiten π = Wahrscheinlichkeitsverteilung von W • Ziel: effiziente Algorithmus für das Generieren von Stichproben von W bezüglich der Verteilung π. • Fokus: – π = PageRank – π = Uniform WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 196 Random Sampling von Web Seiten Motivation • Berechne Statistiken über das Web – Wie hoch ist der Anteil der Web Seiten von .de? – Wie hoch ist der Anteil der Web Seiten in Chinesisch? – Wie hoch ist der Anteil der Werbelinks? • Vergleich der Abdeckung von Suchmaschinen – Ist Google größer als MSN? – Wie hoch ist der Schnitt zwischen Google and Yahoo? • Data mining im Web – Wie oft referenzieren Informatikseiten Biologieseiten? – Wie hoch ist der Anteil der Seiten für ein Thema? WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 197 Random Sampling von Web Seiten Herausforderungen • Einfache Lösung: Crawl, Index, Sample – Crawls können nie vollständig sein – Web ändert sich ständig – Crawling ist langsam und teuer • Ziele: – Genauigkeit: Erzeuge eine Stichprobe von einem Schnappschuss des gesamten indizierbaren Webs – Geschwindigkeit: Stichprobe soll schnell erzeugt werden – Geringe Kosten: Verfahren soll auf einem Standard PC laufen können WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 198 Random Walk Ansatz • Erzeuge Random Walk auf W mit stationärer Verteilung π – P = Übergangsmatrix des Random Walk πP = π • Iteriere Random Walk hinreichend viele Schritte – Für jede initiale Verteilung q, – Mixing time: # der Schritte um dem Grenzwert nahe zu kommen • Nutze erreichten Knoten als Element der Stichprobe • Wiederhole, bis Stichprobe hinreichend groß ist WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 199 Random Walk Ansatz : Vorteile & Probleme • Vorteile: – Genauigkeit: Random Walk kann im Prinzip jede Seite im Web erreichen – Geschwindigkeit: Gesamtes Web braucht nicht geladen werden – Geringe Kosten: geringe Speicher und CPU Kosten • Probleme: – Wie soll der Random Walk entworfen werden, dass er zu π konvergiert? – Wie kann die Mixing Time des Random Walks bestimmt werden? WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 200 PageRank Sampling [Henzinger et al 1999] • Nutze den “Random Surfer” Random Walk: – Starte an einen initiale Knoten v0 – Wenn eine Seite v besucht wird • Wirf eine Münze mit Wahrscheinlichkeit α für Kopf • Fall Kopf, gehe zu einer gleichverteilt gewählten Seite • Falls Zahl, gehe zu einem zufälligen Nachbarn von v • Grenzwert Verteilung: PageRank • Mixing Time: schnell WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 201 PageRank Sampling: Realität • Problem: Wie wird eine Seite zufällig gleichverteilt gewählt? • Lösungen: – Springe zu einer frühren Seite aus dem Walk • Erzeugt Bias zu dichten Webdomäns – Wähle einen zufälligen Server aus den Servern auf dem bisherigen Walk und springe zu einer zufälligen Seite dieses Servers • Konvergiert nicht mehr zu PageRank • Experimente zeigen, dass es trotzdem funktioniert WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 202 Uniform Sampling via PageRank Sampling [Henzinger et al 2000] • Algorithmus: 1. Nutze vorherigen Random Walk um ein Element w bezüglich PageRank Verteilung zu erzeugen 2. Wirf eine Münze mit Wahrscheinlkeit für Kopf 3. Falls Kopf, gib w als ein Element aus 4. Falls Zahl, gehe zu Schritt 1 Analyse: – – Braucht C/|W| Iterationen um ein Element zu bekommen WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 203 Uniform Sampling via PageRank Sampling: Reality • Wie wird PR(w) bestimmt? – Nutze den Random Walk selbst: • VR(w) = Visit Ratio von w (# der Besuche von w auf dem Walk geteilt durch die Länge des Walk) • Approximation ist sehr ungenau – Nutze den durch die besuchten Knoten aufgespannten Teilgraph um PageRank zu berechnen • Bias zu der Nachbarschaft der Startseite – Nutze Google WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 204 Uniform Sampling mittels RW auf regulären Graphen [Bar-Yossef et al 2000] • Fakt: Ein Random Walk auf einem ungerichteten, zusammenhängendem, nicht-bipartiten Graphen konvergiert gegen eine Gleichverteilung. • Beweis: – P: Random Walk Übergangsmatrix • P ist stochastisch • 1 ist ein rechter Eigenvektor mit Eigenwert 1: P1 = 1 – Graph ist zusammenhängend Æ RW ist nicht reduzierbar – Graph ist nicht-bipartit Æ RW ist aperiodisch – Somit ist RW ergodisch und hat deshalb eine stationäre Verteilung π: • π ist ein linker Eigenvektor von P mit Eigenwert 1: πP = π WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 205 Random Walks auf Regulären Graphen • Beweis Fortsetzung: – d: der Grad des Graphen, – A: Adjazenzmatrix des Graphen • Symmetrisch, da derGraph ungerichtet ist – P = (1/d) A • P ist auch symmetrisch • Linke und rechte Eigenvektoren sind gleich • π = (1/n) 1 WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 206 Web als Regulärer Graph • Probleme – Web ist nicht zusammenhängend – Web ist gerichtet – Web ist nicht regulär • Lösungen – Betrachte nur das indizierbare Web, das zusammenhängend ist – Ignoriere Richtung derLinks – Füge eine gewichtete Schleife zu jedem Knoten hinzu • weight(w) = degmax – deg(w) • Alle Seiten haben dann den Grad degmax • Überschätzen von degmax macht nichts WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 207 Beispiel Random Walk auf dem Web amazon.com netscape.com Folgene einem zufälligen Out-link in1 jedem Schritt 4 7 3 9 6 5 8 2 www.cs.berkeley.edu/~zivi • Kann in Senken oder dichten Web Communities feststecken • Bevorzugt populäre Seiten • Konvergiert nur langsam, wenn überhaupt WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 208 Ungerichteter regulärer Random Walk auf dem Web 3 5 Folge einem zufälligem In oder OutLink in jedem Schritt Nutze gewichtete Schleifen um den Grad den Seite zu kompensieren w(v) = degmax - deg(v) WS 2006/07 amazon.com 3 1 2 netscape.com 4 0 3 3 1 3 1 3 0 4 2 2 2 2 4 www.cs.berkeley.edu/~zivi Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 209 Mixing Time Analyse • Satz Mixing time eines Random Walk ist log(|W|) / (1 - λ2) – 1 - λ2: spektrale Lücke von P • Experiment (mit großem Web Crawl): – 1 – λ2 ~ 1/100,000 – log(|W|) ~ 34 • Deshalb: mixing time ~ 3.4 Millionen Schritte – Schleifenschritte sind frei – Etwa 1 bis 30,000 Schritte sind keine Schleifen (degmax ~ 300,000, degavg ~ 10) – Tatsächliche mixing time: ~ 115 steps! WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 210 Random Walks auf Regulären Graphen: Realität • Wie bekommt man die eingehenden Links? – Suchmaschinen • Beeinflußt durch den Index der Suchmaschine • Ergibt keine vollständige Liste der eingehenden Links • Teure Kommunikation – Geschichte des Random Walk • Wichtig zum Vermeiden von Sackgassen • Erfordert Speicherplatz • Wie kann deg(w) geschätzt werden? • Lösung: Random Walk auf dem Teilgraphen von W, der durch die verfügbaren Links aufgespannt wird – Teilgraph muß nicht mehr gute mixing time Eigenschaften haben WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg Seite 211 Top 20 Internet Domains (Summer 2003) 60% 51.15% 50% 40% 30% 20% 10.36% 10% 9.19% 5.57% 4.15% 3.01% 0.61% WS 2006/07 Alexander Hinneburg, Martin-Luther-Universität Halle/Wittenberg x .m fo .in ov .g z .n .il l .p .c h .it l .n .c a .jp s .e s .u u .a k .u e .d du .e et .n rg .o .c om 0% Seite 212 Search Engine Coverage (Summer 2000) 80% 70% 60% 50% 68% 54% 50% 50% 48% 38% 40% 30% 20% 10% 0% WS 2006/07 Google AltaVista Alexander Fast Hinneburg, Lycos HotBot Martin-Luther-Universität Halle/Wittenberg Go Seite 213