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