Pagerank: der Google-Ranking-Algorithmus. Ordnung...

98
PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge verlinkter Dokumente auf der Basis der Verlinkungsstruktur Eine Einführung mit Erläuterungen der mathematischen Grundlagen Karin Haenelt 29.2.2016

Transcript of Pagerank: der Google-Ranking-Algorithmus. Ordnung...

Page 1: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank: Der Google-Ranking-Algorithmus

Ordnung einer Menge verlinkter Dokumente auf der Basis der

Verlinkungsstruktur

Eine Einführung mit Erläuterungen der mathematischen Grundlagen

Karin Haenelt

29.2.2016

Page 2: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

2© Karin Haenelt, PageRank, 6.11.2015

Page 3: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank

Entwicklung und Patente

� Algorithmus zur Bestimmung einer Rangordnung von verlinkten Dokumenten

� Grundlage der von Lawrence Page und Sergey Brin gegründeten Suchmaschine Google

� Erfinder und Namensgeber der Methode: Lawrence Page

� SW-Entwickler: Lawrence Page und Sergey Brin, Stanford University

� Patentanmeldung durch Stanford University 1998 (ff): (Page, 2001)

� 1998 Gründung von Google, Lawrence Page und Sergey Brin

3© Karin Haenelt, PageRank, 6.11.2015

Page 4: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank

Ziele und Ansatz

� PageRank: Berechnung der Relevanzgewichtung von Dokumenten

� unabhängig vom Inhalt der Dokumente oder einer Anfrage

� auf der Basis der Verlinkungsstruktur der Dokumente… und möglicherweise weiterer Kriterien http://www.google.com/intl/de/insidesearch/howsearchworks/thestory/

� zum Zeitpunkt der Indexierung

� Suchmaschine

� ermittelt Menge der zur Anfrage passenden Dokumente

� ordnet Elemente der Menge nach ihrem PageRank-Wert … und weiteren Kriterien

4© Karin Haenelt, PageRank, 6.11.2015

Page 5: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank-Grundidee

Gewichtung über Verlinkungsstruktur

� Eine Seite ist wichtig,wenn viele wichtige Seiten auf diese Seite verweisen

� Gewichtungsergebnis für eine Seite W beruht auf

� Anzahl der Seiten, die auf die Seite W verlinken

� Gewichtung der Seiten, die auf die Seite W verlinken

5

(Page, 2001)

© Karin Haenelt, PageRank, 6.11.2015

Page 6: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank-Grundidee

Gewichtung über Verlinkungsstruktur

� angenommen

� Seite A hat 2 ausgehende Links

� einer der Links weist auf Seite B

� einer der Links weist auf Seite C

� dann gibt Seite A

� ½ ihrer Gewichtung an Seite B weiter

� ½ ihrer Gewichtung an Seite C weiter

� Darstellung als Gleichungssystem

6

AB

C

)()( 2/1)(

)( 2/1)(

)()(

BprAprCpr

AprBpr

CprApr

+===

4.0)(

2.0)(

4.0)(

===

Cpr

Bpr

Apr1)(

1

=∑=

N

i

ipr

© Karin Haenelt, PageRank, 6.11.2015

Page 7: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

7© Karin Haenelt, PageRank, 6.11.2015

Page 8: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank – Modellierung

Basis: Darstellung des Webs als Graph

8

� Web als gerichteter Graph

� Knoten: Web-Dokument

� gerichtete Kanten: Links von einem Dokument zu einem anderen

� Beispiel

AB

C

Page, 2001

© Karin Haenelt, PageRank, 6.11.2015

Page 9: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank – Modellierungskomponenten

1. Darstellung des Graphen als Hyperlink-Matrix

9

AB

C

Wie werden die Gewichte derLinks bestimmt?eine Möglichkeit:

=sonst0

verlinkt auf falls/1 ijnh j

ij

012/1 zu

002/1 zu

100 zu

von von von

C

B

A

CBA

H =A

B

C

N x N Spaltenmatrix mit Gewichten für die Links

Hyperlinkmatrix H

© Karin Haenelt, PageRank, 6.11.2015

Page 10: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank – Modellierungskomponenten

2. PageRank-Vektor

� Der PageRank-Vektor

� enthält die PageRank-Werte der einzelnen Webseiten

� wird aus der Hyperlink-Matrix berechnet

10

=)(

)(

)(

Cpr

Bpr

Apr

pr

© Karin Haenelt, PageRank, 6.11.2015

Page 11: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank – Modellierungskomponenten

Anmerkung zum Beispiel

� Das gezeigte Beispiel eignet sich nicht zur approximativen Berechnung des PageRank-Vektors (die auf den späteren Folien eingeführt wird), da die Matrix dieses Beispiels nicht aperiodisch ist.

� Die Approximation konvergiert für eine aperiodische Matrix nicht.

11© Karin Haenelt, PageRank, 29.2.2016

Page 12: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

12© Karin Haenelt, PageRank, 6.11.2015

Page 13: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Notation

13

A, B, C Webseiten

i,j Repräsentation von Knoten im Web bzw. von Webseiten, und entsprechende

Matrixindizes

ni Grad von i, d.h. Anzahl der ausgehenden Kanten von i

N Gesamtzahl der betrachteten Webseiten

H Hyperlinkmatrix (gewichtet)

S stochastische ergodische Hyperlinkmatrix

r Vektor des Ranges aller Webseiten

pr(A) oder pr(i)

p[i]

PageRank von Seite A bzw. Knoten i

- algebraische Sicht

- stochastische Sicht

pn n-te Approximation an p

P Wahrscheinlichkeit

p0[i] Wahrscheinlichkeit, dass Zufallssurfende am Knoten i beginnen zu surfen

(Startwahrscheinlichkeit)

p∞ [i] Wahrscheinlichkeit, dass Zufallssurfende nach unendlich vielen Schritten am

Knoten i sind ;

stationäre Verteilung (steady state probability), stochastische Sicht des PageRanks

Konstante im Intervall [0,1]

© Karin Haenelt, PageRank, 6.11.2015

Page 14: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Wie berechnet man aus der Matrix den PageRank-Vektor?

Mathematische Betrachtungsvarianten

14

Matrix PageRank-Vektor Lineares Gleichungssystem Koeffizientenmatrix

eines linearen Gleichungssystems

Lösungsvektor

des linearen Gleichungssystems ∑→

=}|{

)()(

ijj jn

jpripr

Lineare Abbildung Abbildungsmatrix Fixvektor

der Abbildungsmatrix xAx =

Markov-Prozess Übergangsmatrix

eines Markov-Prozesses

Grenzvektor 0lim pSp n

n ∞→∞ =

© Karin Haenelt, PageRank, 6.11.2015

� → � j verlinkt nach i

Page 15: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Wie berechnet man aus der Matrix den PageRank-Vektor?

Mathematische Betrachtungsvarianten: Lineare Algebra

� Perspektive: Lineares Gleichungssystem (Lineare Algebra 1)

� Betrachtung der Matrix als Koeffizientenmatrix eines linearen Gleichungssystems

� PageRank-Vektor ist der Lösungsvektor des Gleichungssystems

� Perspektive: Lineare Abbildung (Lineare Algebra 2)

� Betrachtung der Matrix als Abbildungsmatrix eines Vektorraumes in einen anderen Vektorraum

� PageRank-Vektor ist der Fixvektor der Abbildungsmatrix

15

xAx =

∑→

=}|{

)()(

ijj jn

jpripr

© Karin Haenelt, PageRank, 6.11.2015

Page 16: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Wie berechnet man aus der Matrix den PageRank-Vektor?

Mathematische Betrachtungsvarianten: Stochastik

� Perspektive: Markov-Prozess (Stochastik)

� Betrachtung der Matrix als Beschreibung eines Markov-Prozesses

� PageRank-Vektor entspricht dem Grenzvektor(Grenzvektor der Wahrscheinlichkeiten der einzelnen Zustände, dem sich der durch die stochastische Matrix beschriebene Markov-Prozess nähert)

16

0lim pSp n

n ∞→∞ =

© Karin Haenelt, PageRank, 6.11.2015

Page 17: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Mathematische Betrachtungsvariante:

Lineares Gleichungssystem

� Betrachtungsvariante: Lineares Gleichungssystem (Lineare Algebra 1)

� Matrix als Koeffizientenmatrix

� PageRank-Vektor als Lösungsvektor

eines linearen Gleichungssystems

17© Karin Haenelt, PageRank, 6.11.2015

Page 18: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineares Gleichungssystem

Definition: Lineare Gleichung

18

M

� Definition: Eine lineare Kombination von x1, …, xn hat die Forma1x1 + a2x2 + a3x3 + … + anxn

wobei a1, …, an ∊ ℝ die Koeffizienten der Kombination sind.

� Definition: Eine lineare Gleichung mit x1, …, xn hat die Forma1x1 + a2x2 + a3x3 + … + anxn = d

wobei d ∊ ℝ eine Konstante ist.

� Definition: Ein n-Tupel (s1, s2, …, sn) ist eine Lösung einer linearen Gleichung, oder erfüllt eine lineare Gleichung, wenn die Einsetzung der Zahlen s1, s2, …, sn für die Variablen eine wahre Aussage ergibt:

a1s1 + a2s2 + a3s3 + … + ansn = d Hefferon, 2012, 2

© Karin Haenelt, PageRank, 6.11.2015

Page 19: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineares Gleichungssystem

Definition: Lineares Gleichungssystem

19

M

Hefferon, 2012, 2

� Definition: Ein lineares Gleichungssystem ist eine Menge von linearen Gleichungen, die gleichzeitig erfüllt sein müssen.

� Definition: Ein lineares Gleichungssystem a1,1x1 + a1,2x2 + a1,3x3 + … + a1,nxn = d1

a2,1x1 + a2,2x2 + a2,3x3 + … + a2,nxn = d2

.

.am,1x1 + am,2x2 + am,3x3 + … + am,nxn = dm

hat die Lösung (s1, s2, …, sn), wenn dieses n-Tupel eine Lösung aller Gleichungen des Systems ist.

© Karin Haenelt, PageRank, 6.11.2015

Page 20: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Matrixnotation des Gleichungssystems

� Direkte Notation des Gleichungssystems

Perspektive: Lineares Gleichungssystem

Matrix als Koeffizientenmatrix, Page Rank als Lösungsvektor

20

213

12

31

21

21

prprpr

prpr

prpr

+===

021

021

0

321

21

31

=−+=−=−

prprpr

prpr

prpr

entsprechendes homogenesGleichungssystem

=

3

2

1

3

2

1

012/1

002/1

100

pr

pr

pr

pr

pr

pr

H bx⋅ = → die Verlinkungsmatrix entspricht einerKoeffizientenmatrix (hier: H)

→ der PageRank-Vektor entspricht demLösungsvektor (hier: b)

eines linearen Gleichungssystems

3213

3212

3211

0121

0021

100

prprprpr

prprprpr

prprprpr

⋅+⋅+=⋅+⋅+=

⋅+⋅+⋅=b xH ⋅

© Karin Haenelt, PageRank, 6.11.2015

Page 21: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineares Gleichungssystem

Lösungsverfahren für lineare Gleichungssysteme

� „Direkte Verfahren sind solche, die nach endlich vielen Rechenschritten die (bis auf Rundungsfehler) exakte Lösung des Gleichungssystems liefern.“

� bekannte Methode: Gaußsches Eliminationsverfahren

� „Bei der iterativen Lösung berechnet man ausgehend von einem beliebigen Startvektor x0 eine Folge von Iterierten xm für m = 1, 2, . . .:

Im Folgenden ist xm+1 nur von xmabhängig, so dass die Abbildungdas Iterationsverfahren bestimmt. Die Wahl des

Startwertes x0 ist nicht Teil des Verfahrens.“

� bekannte Methode: Gauß-Seidel-Verfahren

21

...... 1210aaaaaa

+mm xxxxx

1+mm xx a

Hackbusch, 2004: 8/9

© Karin Haenelt, PageRank, 6.11.2015

Page 22: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineares Gleichungssystem

Lösung des Gleichungssystems mit Gauß-Elimination

22

021

021

0

321

21

31

=−+=−=−

prprpr

prpr

prpr

systemsGleichungs des Reiheρ

021

021

0

32

32

31

=−=+−=−

prpr

prpr

prpr

:21

:21

:

31

21

1

ρρρρ

ρ

+−+−

32

31

21 prpr

prpr

==

� Gleichungssystem

� Umformung 1

� Umformung 2

© Karin Haenelt, PageRank, 6.11.2015

Page 23: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineares Gleichungssystem

Lösung des Gleichungssystems mit Gauß-Elimination

23

Lösungsmenge

32

31

21 prpr

prpr

==

2,1,2 321 === prprpr

ℜ∈

=

33

3

2

1

|

1

21

1

prpr

pr

pr

pr

11

=∑=

N

iipr

� nicht-triviale (d.h. Nicht-Null) Lösung z.B.:

� jedes Vielfache dieser Lösung ist ebenfalls eine Lösung

� Normierung aus Anwendungssicht1)

ergibt eindeutige Lösung

1) Die PageRank-Werte bilden eine Wahrscheinlichkeitsverteilung über die Webseiten, so dass die Summe der PageRank-Werte über alle Webseiten gleich 1 ist (Page, 2001: 4)

=

4.0

2.0

4.0

3

2

1

pr

pr

prPageRank-Vektor pr

© Karin Haenelt, PageRank, 6.11.2015

Page 24: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineares Gleichungssystem

Lösung des Gleichungssystems mit Gauß-Elimination

� Komplexität des Eliminationsverfahrens nach Gauß

� „Im allgemeinen Fall benötigt die Gauß-Elimination für die Lösung eines Gleichungssystems Ax = b mit n Unbekannten 2n3/3 + �(n2) Operationen.Der Speicherbedarf beträgt n2 + n.“ (Hackbusch, 2004: 8)

� dabei wurden folgende Operationen gezählt:Addition, Subtraktion, Multiplikation, Division

� → nur für sehr kleine Matrizen möglich

24© Karin Haenelt, PageRank, 6.11.2015

Page 25: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Betrachtungsvariante: Lineare Abbildung (Lineare Algebra 2)

� Matrix als Abbildungsmatrix

� PageRank-Vektor als Fixvektor der Abbildungsmatrix

25

Mathematische Betrachtungsvariante:

Lineare Abbildung

© Karin Haenelt, PageRank, 6.11.2015

Page 26: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Algebra

vorausgesetzte Definition: Vektorraum

26

M

� Definition: ein Vektorraum V über einem Körper K ist eine Menge Vmit zwei Verknüpfungen der Form

und

die man Addition (+) und Skalarmultiplikation (⋅) nennt, und für die folgende Axiome gelten:

wvwv

VVV

+→× +

a),( cvvc

VVK

a),(

→×

Artin 1998, 95/96

© Karin Haenelt, PageRank, 6.11.2015

Page 27: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Algebra

vorausgesetzte Definition: Vektorraum

27

M

� Definition (Fortsetzung)

1. Bezüglich der Addition bildet V eine Abelsche Gruppe

1. Abgeschlossenheit v + w ∊ V, für alle v,w ∊ V

2. Assoziativität (v+w)+u = v+(w+u) , für alle u,v,w ∊ V

3. Neutrales Element e es gibt ein neutrales Element e:v+e = v, für e ∊ V und alle v ∊ V(hier: e ist der Nullvektor )

4. Inverses Element i es gibt ein inverses Element i:v + i = i + v = e, für alle v ∊ V

5. Kommutativität v+w = w+v , für alle v,w ∊ V

Artin 1998, 95/96

© Karin Haenelt, PageRank, 6.11.2015

Page 28: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Algebra

vorausgesetzte Definition: Vektorraum

28

M

� Definition (Fortsetzung):

2. Die Skalarmultiplikation ist assoziativ mit der Multiplikation in K:(ab)v = a(bv) für alle a, b ∊ K, v ∊ V

3. Die Skalarmultiplikation mit der reellen Zahl 1 wirkt als identische Abbildung auf V:

1v = v, für alle v ∊ V

4. Es gelten zwei Distributivgesetze(a+b)v = av+bva(v+w) = av + aw für alle a, b ∊ K, v,w ∊ V und

Artin 1998, 95/96

© Karin Haenelt, PageRank, 6.11.2015

Page 29: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

vorausgesetzte Definition: Lineare Abbildung

� Definition: Es sei K ein Körper. Eine Abbildung f eines Vektorraumes Vin einen Vektorraum W heißt lineare Abbildung von V nach W, wenn die folgenden Gleichungen für alle v1, v2 ∊ V und alle a ∊ K gelten:

� f(v1 + v2) = f(v1) + f(v2)

� f(av) = af(v)

29

M

© Karin Haenelt, PageRank, 6.11.2015

Page 30: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Geometrisches Beispiel einer linearen Abbildung und

Abbildungsmatrix

� Beispiel: Dehnung: Kreis → Ellipse (mit Erhaltung des Mittelpunkts)

� Multiplikation der Komponenten der Vektoren X = (x,y) (Punkte des Kreises) mit den Skalaren μ bzw.ν, also μx und νy

� Beschreibung der Abbildung durch eine Matrix (Abbildungsmatrix)

Die Matrix erfasst die Art der „Dehnung“ beider Dimensionen

30

M

XX ⋅

→ν

µ0

0

Kunze, 2013: 1/2

XAX →

© Karin Haenelt, PageRank, 6.11.2015

Page 31: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Eigenwert und Eigenvektor

� Da es sich um lineare Operationen handelt, kann man bei der Matrix einen Faktor ausklammern, indem man alle Elemente der Matrix durch dividiert.

� Dasselbe ist mit Vektoren möglich. Damit entsteht eine Variationsmöglichkeit für die Abbildung

� so kann es einen Fall geben � → ��

31

M

XAX → Kunze, 2013: 1/2

�� = = λ�

�� = λ�

© Karin Haenelt, PageRank, 6.11.2015

Page 32: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Eigenwert und Eigenvektor

� eine Zahl heißt Eigenwert einer Matrix A, genau dann, wenn die Gleichung

nichttriviale (d.h. vom Nullvektor verschiedene) Lösungen besitzt

� Diese Lösungen heißen die zu gehörigen Eigenvektoren von A.

32

M

XXA λ=

Kunze, 2013: 1/2

© Karin Haenelt, PageRank, 6.11.2015

Page 33: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Definition: Eigenwert und Eigenvektor

� Definition: Es sei f: V → V ein Endomorphismus eines K-Vektorraumes V. Eine Konstante ∊ K heißt Eigenwert zu f, wenn es einen Vektor a∊ V – {0} mit f(a) = a gibt. Man nennt in diesem Falle a einen Eigenvektor von f zum Eigenwert . Für eine Matrix A ∊ Knxn seien Eigenwerte und Eigenvektoren erklärt als Eigenwerte und Eigenvektoren der zugehörigen linearen Abbildung Kn → Kn, x ↦ Ax

33

Bosch, 2006:194

M

© Karin Haenelt, PageRank, 6.11.2015

Page 34: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Beispiel: Eigenwert und Eigenvektor

34

M

⋅=

5/2

5/1

5/2

1

5/2

5/1

5/2

012/1

002/1

100

A xx =

Abbildungs-matrix A

Eigenvektor von A zum Eigenwert = 1

ein Eigenwertder Matrix A = 1

Vektor x ≠ 0, der durch f: V → V auf ein Vielfaches x von sich selbst abgebildet wird(d.h. nur gestreckt, nicht gedreht wird)

© Karin Haenelt, PageRank, 6.11.2015

=

=

4.0

2.0

4.0

10/4

10/2

10/4

5/2

5/1

5/2

Dies ist das Beispielvon vorne:

Page 35: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Fixvektor

35

M

⋅=

5/2

5/1

5/2

1

5/2

5/1

5/2

012/1

002/1

100

A xx =

� wählt man = 1,

� so sind die Eigenvektoren gerade die Fixelemente der durch

definierten Funktion f: Es sind diejenigen Vektoren, die durch fin sich selbst überführt werden

� Diese Eigenvektoren heißen auch Fixvektoren von A.

Axx →

Kunze, 2013

© Karin Haenelt, PageRank, 6.11.2015

Page 36: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

36

� Homogene Gleichungen der Gestalt

lassen sich auch in der für Eigenvektoren charakteristischen Form schreiben:

� das gilt aber nur für = 1; wäre variabel, so könnte man die Gleichungsform mit konstanten Koeffizienten ai nicht erreichen

0...2211 =+++ nn xaxaxa

xAx λ=

Kunze, 2013

Perspektive: Lineare Abbildung

Darstellung des homogenen linearen Gleichungssystems in

der für Fixvektoren charakteristischen Form Ax = λx mit λ=1

M

© Karin Haenelt, PageRank, 6.11.2015

Page 37: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Lineare Abbildung

Darstellung des homogenen linearen Gleichungssystems in

der für Fixvektoren charakteristischen Form Ax = x mit

=1

37

=

5/2

5/1

5/2

5/2

5/1

5/2

012/1

002/1

100

A xx =

→ der PageRank-Vektor entspricht dem Fixvektor der Verlinkungsmatrix

=

3

2

1

3

2

1

012/1

002/1

100

pr

pr

pr

pr

pr

pr

A xx =

© Karin Haenelt, PageRank, 6.11.2015

Page 38: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Betrachtungsvariante: Markov-Modell (Stochastik)

� Matrix als probabilistische Übergangsmatrix eines Markov-Prozesses

� PageRank-Vektor als stationäre Verteilung des Markov-Prozesses (Vektor gegen den der Markov-Prozess nach sehr vielen Schritten konvergiert)

38

Mathematische Betrachtungsvariante:

Stochastik

© Karin Haenelt, PageRank, 6.11.2015

Page 39: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Stochastik

Definition: Markov-Kette

� Einführung

� Eine Markov-Kette ist eine Folge von Zufallsvariablen mit kurzem Gedächtnis; das Verhalten zum jeweils nächsten Zeitpunkt hängt nur vom jeweils aktuellen Wert ab und nicht davon, welche Werte vorher angenommen wurden.

� Von besonderem Interesse ist das Langzeit-Verhalten solch einer Folge – z.B.

� Absorption in einer „Falle“ oder

� Konvergenz ins Gleichgewicht

39

Georgii, 2009:153

M

© Karin Haenelt, PageRank, 6.11.2015

Page 40: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� im Folgenden wird Ω als eine höchstens abzählbare Menge vorausgesetzt.

� P(Ω) ist die Potenzmenge von Ω, also die Menge aller Teilmengen von

Ω

� Definition: Sei Ω≠ ∅. Ein System F⊂P(Ω) mit den Eigenschaften

a) Ω ∊ F

b) A ∊F⟹ Ac := Ω \ A ∊F (“logische Verneinung“)

c) A1, A2, … ∊F⟹ ∪i≧1 Ai ∊F (“logisches Oder“)

heißt eine σ-Algebra in Ω. Das Paar (Ω,F) heißt dann ein

Ereignisraum oder ein messbarer Raum.

� Ist Ω als höchstens abzählbar, dann setzt man F = P(Ω)

40

vgl. Georgii, 2009:10, 13

Perspektive: Stochastik

Definition: Markov-Kette - vorausgesetzte Definitionen

M

© Karin Haenelt, PageRank, 6.11.2015

Page 41: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Definition: Sei (Ω,F) ein Ereignisraum. Eine Funktion P: F→ [0,1] mit

den Eigenschaften

� Normierung: P(Ω) = 1

� σ-Addititvität: Für paarweise disjunkte Ereignisse A1, A2, … ∊F

(i.e. ) gilt

heißt Wahrscheinlichkeitsmaß oder auch Wahrscheinlichkeitsverteilung, kurz Verteilung auf (Ω,F) . Das Tripel (Ω,F,P) heißt dann Wahrscheinlichkeitsraum.

41

Georgii, 2009:13

Perspektive: Stochastik

Definition: Markov-Kette - vorausgesetzte Definitionen

M

∑ ≥≥=

11)()(

i ii i APAP U für jiAA ji ≠∅=I

© Karin Haenelt, PageRank, 6.11.2015

Page 42: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Definition: Ist Ω eine abzählbare Menge, so heißt eine Folge ρ=(ρ(ω))ω∊Ω in [0,1] mit Σω∊Ω ρ(ω) = 1 eine Zähldichte auf Ω.

� Erläuterung: ρ ist ein Vektor mit Wahrscheinlichkeitswerten ρ(ω) für die Variable ω∊Ω

� Definition: Ist E≠ ∅ eine höchstens abzählbare Menge, und П = (П(x,y))x,y∊Ω eine Matrix, in der jede Zeile П(x,·) eine Zähldichte (2009) / Wahrscheinlichkeitsdichte (2015) auf E ist, dann heißt П eine stochastische Matrix

42

vgl. Georgii, 2009:18 und 153vgl. Georgii, 2015

Perspektive: Stochastik

Definition: Markov-Kette - vorausgesetzte Definitionen

M

© Karin Haenelt, PageRank, 6.11.2015

Page 43: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Sei E ≠ ∅ eine höchstens abzählbare Menge und П eine stochastische Matrix.

� Definition: Eine Folge X0, X1, … von Zufallsvariablen auf einem Wahrscheinlichkeitsraum (Ω, F,P) mit Werten in E heißt (nach A.A.

Markov, 1856-1922) eine Markov-Kette mit Zustandsraum E und Übergangsmatrix П, wenn für alle n ≧ 0 und alle x0, …, xn+1 ∊ E gilt:

� P(Xn+1 = xn+1 | X0=x0, …, Xn = xn) = П(xn, xn+1)

sofern P(X0=x0, …, Xn = xn) > 0.

Die Verteilung von X0 heißt die Startverteilung der Markov-Kette

43

vgl. Georgii, 2009:153

Perspektive: Stochastik

Definition: Markov-Kette

M

© Karin Haenelt, PageRank, 6.11.2015

Page 44: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Gleichung

� P(Xn+1 = xn+1 | X0=x0, …, Xn = xn) = П(xn, xn+1)

� besteht aus zwei Teilaussagen:

� Die bedingte Verteilung von Xn+1 bei bekannter Vorgeschichte x0,…,xn hängt nur von der Gegenwart xn ab und nicht von der Vergangenheit; diese so genannte Markov-Eigenschaft ist die entscheidende Annahme

� Diese bedingten Verteilungen hängen nicht vom Zeitpunkt n ab.

� Eine Markov-Kette (Xn)n≧0 ist ein stochastischer Prozess mit kurzem Gedächtnis von genau einer Zeiteinheit und ohne innere Uhr.

44

Georgii, 2009:153/154

Perspektive: Stochastik

Definition: Markov-Kette

M

© Karin Haenelt, PageRank, 6.11.2015

Page 45: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Für eine „kommunikative“ Markov-Kette pendelt sich die Verteilung nach langer Zeit bei einer invarianten Gleichgewichtsverteilung ein. Dies ist die Aussage des folgenden Ergodensatzes:

� Ergodensatz für Markov-Ketten. Sei E endlich, und es gebe ein k ≥ 1mit Пk(x,y) > 0 für alle x,y ∊ E. Dann existiert für alle y ∊ E der Limes

unabhängig von der Wahl des Startpunkts x ∊ E, und der Limes α ist die einzige Zähldichte/Wahrscheinlichkeitsdichte auf E mit

45

Georgii 2009:261/262, Georgii, 2015

Perspektive: Stochastik

Definition: Ergodensatz für Markov-Kette

M

0)(),(lim >=Π∞→

yyxn

EyyyxxEx

∈=Π∑∈

allefür )(),()( αα

Anm.: "äußerst kommunikative" Markov-Kette: kann von jedem Zustand in jeden anderen gelangen, und zwar in einer festgelegten Anzahl von Schritten

© Karin Haenelt, PageRank, 6.11.2015

Page 46: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Bemerkung und Definition: Stationäre Verteilungen. Fasst man α als Zeilenvektor auf, so kann man die Gleichung

in der Form schreiben;die Limesverteilungist also ein linker Eigenvektor von П zum Eigenwert 1 1). Verwendet man solch ein α als Startverteilung, so ist die zugehörige Markov-Kette zeitlich invariant („stationär“) in dem Sinn, dass

für alle A ∊ ℱ = P (E)⊗ℤ+ und n ≧ 0. Eine Wahrscheinlichkeitsdichte α

mit αП = α heißt deshalb eine stationäre (Start-)Verteilung.

46

Georgii, 2009:162

Perspektive: Stochastik

Definition: Stationäre Verteilung

M

EyyyxxEx

∈=Π∑∈

allefür )(),()( αα

αα =Π0)(),(lim >=Π

∞→yyxn

)(),...)1,(( APAXnXnP αα =∈+

1) Perron-Frobenius-Theorem

© Karin Haenelt, PageRank, 6.11.2015

Page 47: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Definition: Eine Übergangsmatrix П heißt irreduzibel, wenn zu beliebigen x,y ∊ E ein k = k(x,y) ≧ 0 existiert mit Пk(x,y) > 0

� jeder Zustand kann von jedem anderen mit positiver Wahrscheinlichkeit in einer endlichen Anzahl von Schritten erreicht werden kann

� Definition: Eine Übergangsmatrix П heißt aperiodisch, wenn für ein (und daher alle) x ∊ E gilt: die Menge {k ≧ 1: Пk(x,x) > 0} hat den größten gemeinsamen Teiler 1.

� die Längen der Wege, auf denen ein Knoten x wieder erreicht werden kann, sind teilerfremd

� Prozess springt nicht systematisch von einem bestimmten Zustand zu einem Zustand zurück

� Eine stochastische Matrix П erfüllt genau dann die Voraussetzungen des Ergodensatzes, wenn П irreduzibel und aperiodisch ist.

47

Georgii, 2009:171 (irreduzibel) und 185

Perspektive: Stochastik

Matrix irreduzibel und aperiodisch (ergodisch)

M

© Karin Haenelt, PageRank, 6.11.2015

Page 48: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Stochastik

Annahme: Surfmodell ist ein Markov-Modell

� Annahme des PageRank-Modells: Markov-Modell

� Zufallssurfende wählen zufällig Links einer Webseite, um zur nächsten Webseite zu gelangen

� Die Auswahl einer nachfolgenden Seite ist unabhängig von den vorher besuchten Seiten (Markov-Eigenschaft)

48© Karin Haenelt, PageRank, 6.11.2015

Page 49: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Stochastik

PageRank als stationäre Verteilung eines Markov-Prozesses

� PageRank-Wert einer Seite i : modelliert die Wahrscheinlichkeit, mit der Zufalls-Surfende nach der Verfolgung einer großen Anzahl von Links auf Seite i landen

� nach sehr vielen Schritten entlang der Verlinkungen hat die Wahrscheinlichkeit, auf einer bestimmten Seite zu sein, für jede Seite einen bestimmten Wert

� dieser Wert ist der PageRank einer Seite

49

Page, 2001: 5

© Karin Haenelt, PageRank, 6.11.2015

Page 50: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Stochastik

PageRank als stationäre Verteilung eines Markov-Prozesses

� Iterationsprozess

� Vektor p0: eine N-dimensionale Wahrscheinlichkeitsverteilung, bei der jede Komponente p0[i] die Wahrscheinlichkeit angibt, dass Zufallssurfende auf Seite i beginnen

� Matrix S: probabilistische NxN-Übergangsmatrix, modelliert die Wahrscheinlichkeit des Zufalls-Übergangs von Seite j zu Seite i

� Die Wahrscheinlichkeitsverteilung ist

� nach einem Zustandsübergang p1 = S⋅p0

� nach zwei Zustandsübergängen p2 = S⋅p1 = S2 ⋅ p0

50

Page, 2001: 5

© Karin Haenelt, PageRank, 6.11.2015

Page 51: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Perspektive: Stochastik

PageRank als stationäre Verteilung eines Markov-Prozesses

� vorausgesetzt, die Iteration konvergiert, dann konvergiert sie zu

� p∝

heißt in diesem Kontext stationäre Verteilung (steady stateprobability)

� „Die Iteration zirkuliert die Wahrscheinlichkeiten durch die verlinkten Knoten wie ein Energiefluss im Stromkreis und akkumuliert sie an wichtigen Stellen“

51

Page, 2001: 5

0lim pSp n

n ∞→∞ =

Page, 2001: 5

→der PageRank-Vektor entspricht der stationären Verteilungdes Markov-Prozesses

© Karin Haenelt, PageRank, 6.11.2015

Page 52: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

52© Karin Haenelt, PageRank, 6.11.2015

Page 53: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

PageRank

Plan des Algorithmus

53

Start

Select an initial n-dimensional vector p0

Compute an approximation pn to a steady-state probability p∞ in accordance with the

equation pn = Anp0

Determine a rank r[k] for node k from a kth

component of pn

Done Page, 2001: Fig. 3

© Karin Haenelt, PageRank, 6.11.2015

Page 54: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Berechnung des PageRanks – Grundprinzip

3. Approximative Berechnung des PageRanks

54

31

31

310pbeliebig gewählter Startvektor p0

hier: 1/N

1. Select an initial n-dimensional vector p0

Interpretation:Wahrscheinlichkeit für Knoten 1 bis N,Startknoten eines zufälligenSurf-Ereignisses zu sein

Initialisierung des PageRank-Vektors: Startzustand

© Karin Haenelt, PageRank, 6.11.2015

Page 55: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

2. Compute an approximation pn to a steady-state probability p∞ in accordance with the equation pn = Anp0

Berechnung des PageRanks – Grundprinzip

3. Approximative Berechnung des PageRanks

55

=

=

++++++

=

5000.0

1666.0

3333.0

21

61

31

03161

0061

3100

3/1

31

31

012/1

002/1

100

=

=

++++++

=

3333.0

166.0

5000.0

31

61

21

06161

0061

2100

2/1

61

31

012/1

002/1

100

01 pHp ⋅=

02

2

12

pHp

pHp

⋅=

⋅=

für irreduzible primitive stochastische Matrizen (dazu: nachfolgende Folien) gilt:PageRank-Vektor ≙ Grenzvektor p∞ (stochastisch) ≙ Fixvektor PR (algebraisch)

© Karin Haenelt, PageRank, 6.11.2015

Page 56: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

56

=

=

++++++

=

4166.0

2500.0

3333.0

125

41

31

06141

0041

3100

3/1

61

21

012/1

002/1

100

=

=

++++++

=

4010.0

2031.0

3958.0

19277

19239

9638

0961919239

0019239

963800

96/38

9619

9639

012/1

002/1

100910 pHp ⋅= ...

2. Compute an approximation pn to a steady-state probability p∞ in accordance with the equation pn = Anp0

Berechnung des PageRanks – Grundprinzip

3. Approximative Berechnung des PageRanks

23 pHp ⋅=

© Karin Haenelt, PageRank, 6.11.2015

Anm. zu diesem Beispiel: Wenn man weiterrechnet, stellt man fest, dass die Approximation nicht konvergiert. Das liegt daran, dass die Matrix dieses Beispiels nicht aperiodisch ist.

Page 57: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

57

3. Determine a rank r[k] for node k from a kth component of pn

Berechnung des PageRanks – Grundprinzip

3. Approximative Berechnung des PageRanks

=4010.0

2031.0

3958.0

10p

=1

3

2

rRang

© Karin Haenelt, PageRank, 6.11.2015

Page 58: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Berechnung des PageRanks – Grundprinzip

Logarithmische Definition des PageRanks

� Ränge von Dokumenten können um Größenordnungen differieren

� daher logarithmische Definition zweckmäßig

� ordnet dem niedrigsten Rang den Wert 0 zu und erhöht sich für jede Größenordnung um 1

58

]}[{],1[

min][

log][kp

Nk

ipir

=

Page, 2001:6

© Karin Haenelt, PageRank, 6.11.2015

Page 59: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

59© Karin Haenelt, PageRank, 6.11.2015

Page 60: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Konvergenzbedingung für Markov-Ketten

� Theorie für Markov-Ketten:

� für beliebige Startvektoren konvergiert die iterative Berechnung des Grenzvektors gegen

� einen eindeutigen und positiven stationären Vektor (stationäre Verteilung)

� und dieser Vektor ist der Fixvektor, der durch die Matrix gegebenen linearen Abbildung

� wenn die Matrix stochastisch, irreduzibel und aperiodisch ist

� Basis: Sätze von Perron (1907) und Frobenius (1912)

60

0lim pSp n

n ∞→∞ = pSp ==

(vgl. Law, 2008)

© Karin Haenelt, PageRank, 6.11.2015

Page 61: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Konvergenzbedingungen für Markov-Ketten

Wirkung der Bedingungen

� stochastisch

� irreduzibel (zerfällt nicht in unabhängige Teile)

� aperiodisch (Längen der Zyklen sind teilerfremd)

61

→ Prozess konvergiert

→ Grenzvektor bekommt für alleEinträge positive Werte

11

=∑=

N

iijs0: ≥∀ ijij ss → Grenzvektor ist eindeutig

© Karin Haenelt, PageRank, 6.11.2015

Page 62: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Sei E eine höchstens abzählbare Menge und E ≠ ∅

� Definition: Eine Übergangsmatrix П heißt irreduzibel, wenn zu beliebigen x,y ∊ E ein k = k(x,y) ≧ 0 existiert mit Пk(x,y) > 0

� Erläuterung: Irreduzibilität bedeutet: jeder Zustand kann von jedem anderen mit positiver Wahrscheinlichkeit in einer endlichen Anzahl von Schritten erreicht werden kann

62

Georgii, 2009:171

Stochastische Matrix

Definition: irreduzibel

M

© Karin Haenelt, PageRank, 6.11.2015

Page 63: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� reduzible Matrix: unabhängiger Teil:Knoten ohne ausgehende Kanten (dangling node)

� Formal: Prozess konvergiert gegen 0

� es gibt nach einer gewissen Anzahl von Schritten keine Möglichkeit mehr in bestimmte Zustände zurückzukehren

� Problem: PageRank sagt nichts über die relative Bedeutung der Webseiten aus

AB

C

31

31

31

=

3/2

0

0

3/1

31

31

011

000

000

0pr 01 prSpr ⋅=

=

0

0

0

3/2

0

0

011

000

00012 prHpr ⋅=

Verletzung der Konvergenzbedingungen

Reduzible Matrix - Beispiel 1

63

nach Austin, 2006

© Karin Haenelt, PageRank, 6.11.2015

Page 64: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� reduzible Matrix: unabhängiger Teil: unabhängiger Teilgraph

� Prozess konvergiertfür den unabhängigenTeilgraphen gegen 0

Verletzung der Konvergenzbedingungen

Reduzible Matrix - Beispiel 2

64

Austin, 2006

1

2 4

3 5

6 8

7

02/113/10000

2/1003/10000

2/1003/13/1000

02/1003/12/100

00000010

00000002/1

00003/12/102/1

00000000

H

12.0

24.0

24.0

12.0

0

0

0

0

p

© Karin Haenelt, PageRank, 6.11.2015

Page 65: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Sei E eine höchstens abzählbare Menge und E ≠ ∅

� Definition: Eine Übergangsmatrix П heißt aperiodisch, wenn für ein (und daher alle) x ∊ E gilt: die Menge {k ≧ 1: Пk(x,x) > 0} hat den größten gemeinsamen Teiler 1.

� die Längen der Wege, auf denen ein Knoten x wieder erreicht werden kann, sind teilerfremd

� Prozess springt nicht systematisch von einem bestimmten Zustand zu einem Zustand zurück

65

Georgii, 2009:185

Stochastische Matrix

Definition: aperiodisch

M

© Karin Haenelt, PageRank, 6.11.2015

Page 66: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

� Es ist Пk(x,x) > 0, wenn es in der Matrix einen Weg von x nach x der Länge k gibt

� ein Zustand x ist dann aperiodisch, wenn

� k = 1: П1(x,x) > 0: es gibt eine Schleife oder

� k ≧ 1: Пk(x,x) > 0: es gibt mindestens zwei Wege der Länge k1 und k2, und es gilt ggT(k1,k2) = 1

� Matrix des ersten Beispiels ist NICHT aperiodisch:

� pAA1 Schritt = 0 (es gibt keine Schleife)

� pAA2 Schritte > 0

� pAA3 Schritte > 0

� ggT {2,3} = 1

66

Stochastische Matrix

Beispiel: aperiodisch

M

AB

C

© Karin Haenelt, PageRank, 6.11.2015

pBB1 Schritt = 0 (es gibt keine Schleife)

pBB2 Schritte = 0

pBB3 Schritte > 0

es gibt keine zwei Wege der Länge k1 und k2

Page 67: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Verletzung der Konvergenzbedingungen

Periodische Matrix – Beispiel 1

� Periodische Matrix

� Prozess konvergiert nicht

� bzw. Konvergenz ist abhängig vom Startvektor

67

A

B

01

10

H

0

10p

1

01p

0

12p

21

210p

21

211pKonvergenz

abhängig vomStartvektor p0

Fixvektorexistiert

=

21

21

21

21

01

10

H

konvergiertnicht

konvergiert

© Karin Haenelt, PageRank, 6.11.2015

Page 68: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Verletzung der Konvergenzbedingungen

Periodische Matrix – Beispiel 2

� Periodische Matrix

� Prozess konvergiert nicht

� bzw. Konvergenz ist abhängig vom Startvektor

68

01000

00100

00010

00001

10000

H

0

0

0

0

10p

0

0

0

1

01p

0

0

1

0

02p

Prozess konvergiert nicht – obwohl ein Fixvektor existiert

A

B

C D

E

0

1

0

0

03p

1

0

0

0

04p

0

0

0

0

15p

Austin, 2006

© Karin Haenelt, PageRank, 6.11.2015

Page 69: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

69© Karin Haenelt, PageRank, 6.11.2015

Page 70: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

� Um zu garantieren, dass der Markov-Prozess gegen einen eindeutigen Vektor mit ausschließlich positiven Werten konvergiert,muss man dafür sorgen, dass die Matrix folgende Eigenschaften hat:

� stochastisch (entspricht Markov-Prozess gemäß Definition) und

� irreduzibel und

� aperiodisch

� hierfür gibt es mehrere Möglichkeiten

� eine Variante ist die folgende Modifikation der Beispiel-Matrix H:

� S = H + A (stochastisch nach Einführung des Korrekturwertes für dangling nodes)

� G = αS + (1-α) 1/N 1 (irreduzibel und aperiodisch)

70© Karin Haenelt, PageRank, 6.11.2015

Page 71: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

1. Die Matrix H: Hyperlinks mit Gewichtungen

� H:

� H ist nicht stochastisch:

71

=sonst0

verlinkt auf falls/1 ijnh j

ij

=011

000

000

HA

B

C

ist nicht erfüllt11

=∑=

N

iijh

© Karin Haenelt, PageRank, 6.11.2015

Page 72: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

2. Die stochastische Matrix S

� S = H + A

72

=sonst0

Kantenausgehende ohne für Knoten/1 jij

na

=

+

=3/111

3/100

3/100

3/100

3/100

3/100

011

000

000

S

H A

AB

C

© Karin Haenelt, PageRank, 6.11.2015

Page 73: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

3. Die stochastische, irreduzible und aperiodische Matrix G

� G = αS + (1-α) 1/N 1

� α Konstante 0 ≤ α < 1

� 1 N x N Matrix, alle Einträge sind 1(dient der korrekten Formulierung der Addition von(1-α) 1/N zur Matrix S)

� Beispiel: sei α = 1/2

73

=

=

⋅+

⋅=3/13/23/2

3/16/16/1

3/16/16/1

6/26/46/4

6/26/16/1

6/26/16/1

111

111

111

3

1

2

1

3/111

3/100

3/100

2

1G

α S (1-α)⋅1/N 1

AB

C

© Karin Haenelt, PageRank, 6.11.2015

Page 74: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

Interpretation: ist die Modellierung G anwendungsadäquat?

� G S H

� zufällig Surfende

� folgen den Links (H)

� oder springen zufällig auf eine andere Seite weiter (z.B. durch Eingabe einer Adresse in den Browser) (G)

74

AB

C

AB

C

AB

C

© Karin Haenelt, PageRank, 6.11.2015

Page 75: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

Wahl des Parameters α: Modellierungsaspekt

� aus der Sicht der Modellierung des Objektbereichs

� wenn α = 1, dann ist G = S

� entspricht der gegebenen Hyperlinksstuktur + Korrektur für Knoten ohne ausgehende Kanten

� Achtung: Matrix kann reduzibel und periodisch sein (positive PageRank-Werte und Konvergenz nicht gesichert)

� wenn α = 0, dann ist G = 1/N 1

� alle Knoten gleichgewichtig mit allen verbunden,gegebene Hyperlinkstruktur völlig verloren

� → wünschenswert: ein Wert nahe 1

75

Austin, 2006

© Karin Haenelt, PageRank, 6.11.2015

Page 76: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

Wahl des Parameters α: Konvergenzaspekt

� aus der Sicht der Konvergenzgeschwindigkeit

� Konvergenzgeschwindigkeit der Iteration wird beeinflusst durch die Größe des zweiten Eigenwertes |λ2|

� für die Google-Matrix G = αS + (1-α) 1/N 1 wurde bewiesen, dass die Größe des zweiten Eigenwertes | λ2| = α

� je kleiner | λ2|, desto schneller die Konvergenz

� d.h. bei einem Wert nahe 1 ist die Konvergenzgeschwindigkeit sehr gering

� Brin und Page geben als einen guten Kompromisswert α = 0.85 an

76

Austin, 2006

© Karin Haenelt, PageRank, 6.11.2015

Page 77: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

Wahl des Parameters α

� Konstante α mit 0 ≤ α < 1

� Wert von α:

� typisch: 0.85

� muss aber nicht notwendigerweise gleichverteilt werden

� Wirkung: α wirkt als Dämpfungsfaktor:

� limitiert das Ausmaß in dem ein PageRank-Wertvon Kind-Knoten geerbt werden kann

� Interpretation von 1-α: Wahrscheinlichkeit, mit der Zufallssurfende zu einer beliebigen Seite springen statt einem Link zu folgen

77© Karin Haenelt, PageRank, 6.11.2015

Page 78: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Die Google-Matrix G

Ein Beispiel

78

AB

C

=

=

⋅+

⋅=3/13/23/2

3/16/16/1

3/16/16/1

6/26/46/4

6/26/16/1

6/26/16/1

111

111

111

3

1

2

1

3/111

3/100

3/100

2

1G

=⋅+⋅+⋅=⋅+⋅+⋅=⋅+⋅+⋅

=

9/53/13/13/13/23/13/2

9/23/13/13/16/13/16/1

9/23/13/13/16/13/16/1

3/1

3/1

3/1

3/13/23/2

3/16/16/1

3/16/16/1

p1

p1

3/13/23/2

3/16/16/1

3/16/16/1

81/41

81/20

81/20

27/13

27/7

27/7

9/2

9/2

9/2

3/1

3/1

3/1p0

p0

p2 p3

© Karin Haenelt, PageRank, 6.11.2015

Page 79: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

79© Karin Haenelt, PageRank, 6.11.2015

Page 80: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Komplexität

Anforderungen

� G hat ungefähr 25 Milliarden Spalten und Zeilen

� ungefähr 10 Einträge in jeder Spalte sind nicht 0

80

Austin, 2006

© Karin Haenelt, PageRank, 6.11.2015

Page 81: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Komplexität

Lösung des Gleichungssystems mit Iteration

� Komplexität: Speicherplatz

� Speicherplatz: Matrix G, Vektor prm, Vektor prm+1

� Komplexität: Berechnung

� Berechnung des PageRanks nicht mit hoher Präzision erforderlich

� hinreichende Konvergenz bei Millionen von Webseiten bei einer Größenordnung von 100 Iterationen (Page 2001:5)

81© Karin Haenelt, PageRank, 6.11.2015

Page 82: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Anwendung des PageRank-Algorithmus

� Web-Crawler kundschaftet das Web aus und erstellt

� Volltext-Index

� PageRank-Vektor

� PageRank-Berechnung viel weniger aufwändig als die Erstellung eines Volltext-Indexes

� Konvergenz für das gesamte Web sehr schnell: wenige Stunden

� Anreicherung des Index um Vokabular aus den verlinkenden Dokumenten

� Linktexte, Titel der verlinkenden Dokumente

� (Wills 2006): PageRank-Wert für mehr als 25 Milliarden Webseiten

82

Stand: Page, 2001:7

© Karin Haenelt, PageRank, 6.11.2015

Page 83: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

83© Karin Haenelt, PageRank, 6.11.2015

Page 84: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Themenspezifischer PageRank-Wert

� in der bisherigen Betrachtung wurde α als gleichverteilt angenommen

� das ist aber nicht erforderlich

� Möglichkeit 1:

� Bildung thematischer Subnetze (z.B. Sport) (wie erkennt man Themen?)

� Seiten im betrachteten Subnetz erhalten α > 0, andere α = 0

� → Einschränkung der weiteren Betrachtung auf das betretene Subnetz

� Möglichkeit 2: System arbeitet mit einer Hierarchie von Matrizen

� Matrix der Übergänge innerhalb eines Themas (z.B. Sport)

� Matrix der Übergänge zwischen Themen (z.B. Sport -> Politik)

84

Manning/Raghavan/Schütze, 2007:317-323

© Karin Haenelt, PageRank, 6.11.2015

Page 85: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Themenspezifischer PageRank-Wert

� Möglichkeit 3:

� System lernt aus dem Klickverhalten

85

Manning/Raghavan/Schütze, 2007:317-323

© Karin Haenelt, PageRank, 6.11.2015

Page 86: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Mögliche Modifikationen

Zusätzliche Parameter zur Berechnung des PageRanks

� Folgende Eigenschaften können berücksichtigt werden:

� eingehende Links

� Anzahl unterschiedlicher Institutionen, Autoren, Orte, Hauptseiten einer Domäne, …

� Eigenschaften der Links in einem verlinkenden Dokument

� Anfang des Dokuments

� Hervorhebung durch Fettdruck o.ä., ..

� Änderungsdatum der verlinkenden Seite (Aktualität)

� Klickverhalten

� Anzahl der Klicks auf die Seiten

86

Page, 2001:7-9

© Karin Haenelt, PageRank, 6.11.2015

Page 87: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Mögliche Modifikationen

Zusätzliche Parameter zur Berechnung des PageRanks

� Personalisierung

� Vergabe hoher initialer Page-Rank-Werte für die Webseite und die Lesezeichen von Nutzenden, hohe Wahrscheinlichkeit des Ansurfens dieser Seiten

� trainiert das System Seiten zu erkennen, die in Relation zur Webseite von Nutzenden stehen

87

Page, 2001:7

© Karin Haenelt, PageRank, 6.11.2015

Page 88: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Inhalt

� Entwicklung, Ziele, Grundidee

� Hyperlink-Matrix und PageRank-Vektor

� Wie berechnet man aus der Hyperlink-Matrix den PageRank-Vektor? Mathematische Betrachtungsvarianten

� Der Page-Algorithmus

� Konvergenzbedingungen und Modifikation der Matrix

� stochastisch, irreduzibel, aperiodisch

� die Google-Matrix

� Komplexität der Berechnung

� Personalisierung und Adaption an Nutzungsverhalten

� Zusammenfassung

88© Karin Haenelt, PageRank, 6.11.2015

Page 89: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Zusammenfassung

PageRank-Verfahren

� PageRank-Verfahren gewichtet Webseiten nicht nach ihrem Inhalt sondern nach der Verlinkungsstrukur

� Verlinkungsstruktur wird als Graph repräsentiert

� Graph wird als Matrix repräsentiert

� PageRank-Vektor wird aus Matrix berechnet

� Matrix und PageRank-Vektor lassen sich betrachten als:

89

Matrix PageRank-Vektor Koeffizientenmatrix eines linearen

Gleichungssystems

Lösungsvektor des linearen Gleichungssystems ∑

=}|{

)()(

ijj jn

jpripr

Abbildungsmatrix Fixvektor der Abbildungsmatrix xAx =

Übergangsmatrix eines Markov-Prozesses

Grenzvektor; stationäre Verteilung, bei der sich ein Markov-Prozess nach längerer Zeit invariant einpendelt

0lim pSp n

n ∞→∞ =

© Karin Haenelt, PageRank, 6.11.2015

Page 90: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Zusammenfassung

PageRank-Verfahren

� eine direkte Berechnung des PageRank-Vektors ist im Falle vieler Variablen zu komplex

� eine iterative Berechnung ist sehr schnell möglich

� eine approximative Berechnung mit wenigen Iterationen ist ausreichend

� Um die Berechnung partiell und iterativ durchführen zu können, muss die Matrix die Eigenschaften einer ergodischen Markov-Kette haben (stochastisch, irreduzibel, aperiodisch)

� Hierzu wird die Hyperlink-Matrix (H) erweitert um

� zusätzliche Links für Knoten ohne ausgehende Kanten (Matrix S) (stochastisch)

� und eine Konstante α (Matrix G) (irreduzibel und aperiodisch)

90© Karin Haenelt, PageRank, 6.11.2015

Page 91: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Zusammenfassung

PageRank-Verfahren: Konstante α

� Die Konstante ist formal erforderlich, um die Konvergenz des approximativen Berechnungsverfahrens zu sichern: sie stellt sicher, dass die Matrix irreduzibel und aperiodisch ist (bei 0 ≤ α < 1).

� Die Werte der Konstanten beeinflussen die Konvergenzgeschwindigkeit: je kleiner α, desto schneller die Konvergenz

91© Karin Haenelt,, 29.2.2016

Page 92: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Zusammenfassung

PageRank-Verfahren: Konstante α

� Die Werte der Konstanten beeinflussen die Ergebnisse:1-α kann als Modell des zufälligen Springens von einer Webseite zur nächsten ohne einem Link zu folgen aufgefasst werden.α wirkt als Dämpfungsfaktor, d.h. der Wert limitiert das Ausmaß, in dem ein PageRank-Wert von Kind-Knoten geerbt werden kann

� α = 1 (entspricht G = S): gegebene Hyperlinksstuktur + Korrektur für Knoten ohne ausgehende KantenAchtung: Matrix kann reduzibel und periodisch sein (positive PageRank-Werte und Konvergenz nicht gesichert)

� α = 0 (entspricht G = 1/N 1): alle Knoten gleichgewichtig mit allen verbunden, gegebene Hyperlinkstruktur völlig verloren

92© Karin Haenelt,, 29.2.2016

Page 93: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Zusammenfassung

Suchergebnisse

� Unabhängigkeit von Queries hat das Ranking wesentlich beschleunigt

� PageRank lässt sich beim Indizieren berechnen

� in bestimmten Zeitabständen aktualisieren

� Verfahren kann aus Nutzungsverhalten lernen

� Ergebnis reflektiert nicht unbedingt die Relevanz einer Seite für die Anfragen der Nutzenden

� unpopuläre, aber für eine bestimmte Aufgabenlösungen höchst relevante Seiten werden möglicherweise nicht oder sehr spät präsentiert

� Neue Information ist erst nach einer gewissen Zeit gut verlinkt

� Die neue Qualität der Suchergebnisse gegenüber anderen Suchmaschinen hat Google zum Marktführer gemacht

93

Vgl. Berry/Browne, 2005

© Karin Haenelt, PageRank, 6.11.2015

Page 94: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Literatur

Patente

� Lawrence Page (2001), Method for node ranking in a linked database—Patent number 6,285,999—September 4, 2001 (Original PageRank U.S. Patent), http://patft.uspto.gov/netacgi/nph-Parser?patentnumber=6,285,999 und http://www.google.com/patents/US6285999

� Lawrence Page (2004), PageRank U.S. Patent—Method for scoring documents in a linked database—Patent number 6,799,176—September 28, 2004

� Lawrence Page (2006), PageRank U.S. Patent—Method for node ranking in a linked database—Patent number 7,058,628—June 6, 2006

� Lawrence Page (2007), PageRank U.S. Patent—Scoring documents in a linked database—Patent number 7,269,587—September 11, 2007

94© Karin Haenelt, PageRank, 6.11.2015

Page 95: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Literatur

PageRank

� David Austin (2006), How Google Finds Your Needle in the Web’s Haystack. American Mathematical Society. Feature Column: Monthly Essays on Mathematical Topics. December, 2006. http://www.ams.org/samplings/feature-column/fcarc-pagerank(besucht: August 2013)

� Michael W. Berry und Murray Browne (2005). Understanding Search Engines. Mathematical Modelling and Text Retrieval. Philadelphia: Society for Industrial and Applied Mathematics (SIAM).

� Amy N. Langville & Carl D. Meyer (2006). Google’s PageRank and Beyond: The Science of Search Engine Rankings, Princeton University Press

� Edith Law (2008). Page Rank. Lecture. 9.10.2008. http://www.cs.cmu.edu/~elaw/pagerank.pdf

95© Karin Haenelt, PageRank, 6.11.2015

Page 96: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Literatur

PageRank

� Christopher Manning, Prabhakar Raghavan, Hinrich Schütze (2007) . Introduction toInformation Retrieval. Kap. 21. Cambridge University Press.

� Rebecca S. Wills (2008). Google's PageRank for Beginners: A Directed Graph Example for Liberal Arts Math Courses. https://sites.google.com/site/rebeccawillswebsite/Home/papers_and_presentations/RSW_Mathfest_08_PageRank_2.pdf (besucht: August 2013)

� Rebecca S. Wills (2006). Google's PageRank: The Math Behind the Search Engine. http://www.cems.uvm.edu/~tlakoba/AppliedUGMath/other_Google/Wills.pdf(besucht: August 2013)

96© Karin Haenelt, PageRank, 6.11.2015

Page 97: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Literatur

Mathematische Grundlagen

� Michael Artin (1998). Algebra. Aus dem Englischen übersetzt von Annette A‘Campo. Basel, Boston, Berlin: Birkhäuser Verlag.

� Siegfried Bosch (2006). Lineare Algebra. Heidelberg: Springer Verlag.

� Ferdinand Georg Frobenius (1912). Über Matrizen aus nicht negativen Elementen, Berl. Ber. 1912, 456-477. elektronisches Faksimile: http://dx.doi.org/10.3931/e-rara-18865

� Hans Otto Georgii (2015). Stochastik. Einführung in die Wahrscheinlichkeitstheorie und Statistik. 5. Aufl. Berlin: Walter de Gruyter.

� Hans Otto Georgii (2009). Stochastik. Einführung in die Wahrscheinlichkeitstheorie und Statistik. 4. Aufl. Berlin: Walter de Gruyter.

� Wolfgang Hackbusch (2004). Iterative Lösung großer Gleichungssysteme. www.mis.mpg.de/scicomp/Fulltext/ggl.ps (besucht: August 2013)

� Jim Hefferon (2012). Linear Algebra. 29.2.2012. http://joshua.smcvt.edu/linearalgebra

97© Karin Haenelt, PageRank, 6.11.2015

Page 98: Pagerank: der Google-Ranking-Algorithmus. Ordnung …kontext.fraunhofer.de/haenelt/kurs/folien/Haenelt_PageRank.pdf · PageRank: Der Google-Ranking-Algorithmus Ordnung einer Menge

Literatur

Mathematische Grundlagen

� Jürgen Kunze (2013). Notizen zum PageRank-Verfahren. Internes Papier. Humboldt-Universität zu Berlin. 21.6.2013

� Oskar Perron (1907). Zur Theorie der Matrices, Math. Ann. 64, 248-263. elektronisches Faksimile: http://gdz.sub.uni-goettingen.de/dms/load/img/?PPN=GDZPPN002261693&IDDOC=36725

98© Karin Haenelt, PageRank, 6.11.2015

Folienversionen

� 1.2.1 29.2.2016

� 1.1.1 6.11.2015

� 1.1.0 9.11.2014

� 1.0.0 13.10.2013