Der PageRank-Algorithmus:
Der ursprüngliche PageRank-Algorithmus
wurde von Lawrence Page und Sergey Brin mehrfach beschrieben. Er
hat die folgende Form:
PR(A) = (1-d) + d (PR(T1)/C(T1) + ...
+ PR(Tn)/C(Tn))
Hierbei ist:
- PR(A) der PageRank einer Seite A,
- PR(Ti) der PageRank der Seiten Ti, von denen ein Link
auf die Seite A zeigt,
- C(Ti) die Gesamtanzahl der Links auf Seite Ti und
- d ein Dämpfungsfaktor (Damping Factor), wobei 0 <= d <=
1 ist.
Das PageRank-Verfahren bewertet damit grundsätzlich
nicht Websites in ihrer Gesamtheit, sondern basiert ausschließlich
auf der Beziehung einzelner Webseiten zueinander. Der PageRank
einer Seite A bestimmt sich dabei rekursiv aus dem PageRank
derjenigen Seiten, von denen ein Link auf die Seite A zeigt.
Der PageRank der Seiten Ti, die auf eine
Seite A verlinken, fließt nicht gleichmäßig in
den PageRank von Seite A ein. Der PageRank einer Seiten
T wird stets anhand der Anzahl C(T) der von Seite T ausgehenden
Links gewichtet. Das bedeutet, dass je mehr ausgehende Links eine
Seite T hat, umso weniger PageRank gibt sie an Seite A weiter.
Der anhand der Anzahl an ausgehenden Links gewichtete
PageRank der Seiten Ti wird nun addiert. Dies hat zur Folge,
dass jeder zusätzliche eingehende Link für eine Seite
A stets den PageRank dieser Seite A erhöht.
Schließlich wird die Summe der gewichteten
PageRanks der Seiten Ti mit dem Dämpfungsfaktor d, der stets
zwischen 0 und 1 liegt multipliziert. Hierdurch wird das Ausmaß
der Weitergabe des PageRanks von einer Seite auf einer andere verringert.
Das Random Surfer Modell:
Lawrence Page und Sergey Brin bieten in ihren Veröffentlichungen
eine sehr einfache, intuitive Rechtfertigung des PageRank-Algorithmus
an. Sie betrachten PageRank-Verfahren als ein Modell zur Abbildung
von Benutzer-Verhalten. Hierzu führen sie einen Zufalls-Surfer
an, der von einer Webseite zur nächsten jeweils beliebige Links
verfolgt, ohne dabei auf Inhalte zu achten.
Der Zufalls-Surfer befindet sich mit einer bestimmten
Wahrscheinlichkeit auf einer Website, die sich aus deren PageRank
herleiten lässt. Die Wahrscheinlichkeit, dass der Zufalls-Surfer
nun einen bestimmten Link verfolgt, ergibt sich dann einzig und
allein daraus, aus wievielen Links er die Auswahl hat. Aus diesem
Grunde fließt der PageRank einer verlinkenden Seite
stets nach der Anzahl Ihrer ausgehenden Links gewichtet in die PageRank
Berechnung einer verlinkten Seite ein.
Die Wahrscheinlichkeit, dass der Zufalls-Surfer
auf eine Seite gelangt, ist also die Summe der Wahrscheinlichkeiten,
mit der er von einer verlinkenden Seite den entsprechenden Link
verfolgt. Nun wird allerdings die Wahrscheinlichkeit, mit der der
Zufalls-Surfer auf eine Seite gelangt, um den Faktor d gedämpft.
Dies hat im Rahmen des Random Surfer Modells den Hintergrund, dass
der Zufalls-Surfer nicht unendlich viele Links verfolgt. Nach einer
bestimmten Zeit wird er gelangweilt und ruft eine beliebige andere
Webseite auf.
Die Wahrscheinlichkeit, mit der der Zufalls-Surfer
die Verfolgung von Links nicht abbricht und somit weiterklickt,
wird durch den Dämpfungsfaktor d angegeben, der abhängig
von der Höhe der Wahrscheinlichkeit einen Wert von 0 bis 1
annimmt. Je höher d ist, um so wahrscheinlicher ist es, dass
der Zufalls-Surfer Links verfolgt. Da der Zufalls-Surfer nach dem
Abbruch der Link-Verfolgung eine beliebige Seite aufruft, geht die
Wahrscheinlichkeit mit er er dies tut, mit dem Wert (1-d) als Konstante
in die Berechnung des PageRanks einer jeden Seite ein.
Abweichende Formulierung des PageRank-Algorithmus:
Lawrence Page und Sergey Brin bieten in ihren Veröffentlichungen
zwei unterschiedliche Versionen des PageRank-Algorithmus an.
In dieser zweiten Version bestimmt sich der PageRank einer
Seite A wie folgt:
PR(A) = (1-d) / N + d (PR(T1)/C(T1)
+ ... + PR(Tn)/C(Tn))
Hierbei ist N die Anzahl aller Seiten des Webs.
Diese zweite Version des PageRank-Algorithmus unterscheidet
sich allerdings nicht grundlegend von der ersten. In der zweiten
Version beschreibt der PageRank einer Seite im Sinne des Random
Surfer Modells lediglich die tatsächliche Wahrscheinlichkeit,
mit der der Zufalls-Surfer nach dem Verfolgen vieler Links eine
Seite erreichen wird. Dieser Algorithmus bildet damit eine Wahrscheinlichkeitsverteilung
über alle Seiten des Webs ab. Die Summe aller PageRank-Werte
des Webs ist damit bei dieser Version des Algorithmus gleich 1.
In der oben genannten, ersten Version erfolgt eine
Gewichtung der Wahrscheinlichkeit des Besuchs einer Seite nach der
Anzahl der Seiten des Webs. Demnach ist der PageRank in dieser
Version im Grunde der Erwartungswert für den Besuch des Zufalls-Surfers
auf einer Seite, wenn er hierfür Anläufe in genau der
Höhe der Anzahl der Seiten des Webs nimmt. Bestünde das
Web also aus 100 Seiten, und eine Seite hat einen PageRank
von 2, so würde der Zufalls-Surfer sie bei 100 "Surfgängen"
im Mittel zweimal erreichen.
Wie bereits erwähnt, unterscheiden sich die
beiden Versionen des Algorithmus sich nicht grundlegend. Letztlich
muss der PageRank einer Seite aus der Algorithmus-Version
2 lediglich mit der Anzahl der Webseiten multipliziert werden, um
zum PageRank der Algorithmus-Version 1 zu gelangen. Selbst
Page und Brin ist in Ihrer wohl bekanntesten Veröffentlichung
"The Anatomy of a Large-Scale Hypertextual Web Search Engine" der
Fehler unterlaufen, die erste Version des PageRank-Algorithmus
als Wahrscheinlichkeitsverteilung zu charakterisieren, bei der die
Summe der PageRank-Werte aller Seiten gleich eins sei.
Im Folgenden wird für die weiteren Betrachtungen
der oben zuerst genannte Algorithmus verwandt. Dies hat den einfachen
Hintergrund, dass Berechnungen hiermit wesentlich einfacher sind,
da die Größe des Webs vollkommen außer Acht gelassen
werden kann.
Die Eigenschaften des PageRank:
Die Eigenschaften des PageRank sollen jetzt
anhand eines Beispieles veranschaulicht werden.
Hierzu
wird ein kleines 3-Seiten-Web aus den Seiten A, B und C betrachtet,
wobei Seite A sowohl auf Seite B als auch auf Seite C verlinkt.
Seite B verlinkt lediglich auf Seite C und Seite C wiederum verlinkt
auf Seite A. Der Dämfungsfaktor d wird Angaben von Lawrence
Page und Sergey Brin zufolge für tatsächliche Berechnungen
üblicherweise auf 0.85 gesetzt. Der Einfachheit halber wird
d an dieser Stelle ein Wert von 0.5 zugewiesen, wobei die Höhe
von d zwar Auswirkungen auf den PageRank hat, das hier zu
erläuternde Prinzip jedoch nicht beeinflusst. Es ergeben sich
die folgenden Gleichungen für den PageRank der einzelnen
Seiten:
- PR(A) = 0.5 + 0.5 PR(C)
- PR(B) = 0.5 + 0.5 (PR(A) / 2)
- PR(C) = 0.5 + 0.5 (PR(A) / 2 + PR(B))
Dieses Gleichungssystem lässt sich sehr einfach
für den PageRank der einzelnen Seiten lösen. Es
ergeben sich die folgenden Werte:
- PR(A) = 14/13 = 1.07692308
- PR(B) = 10/13 = 0.76923077
- PR(C) = 15/13 = 1.15384615
Es zeigt sich, dass die Summe der PageRanks aller
Seiten gleich drei und somit gleich der Anzahl der Seiten ist. Dies
ist keine spezifisches Ergebnis für unser Beispiel, da der
PageRank Algorithmus einen Erwartungswert für den Besuch
von Seiten bei Anläufen in Höhe der Anzahl der Seiten
darstellt.
Für ein kleines 3-Seiten-Beispiel lässt
sich ein Gleichungssystem unproblematisch lösen. Das tatsächliche
WWW besteht jedoch mittlerweile aus mehreren Milliarden Webseiten,
so dass die Lösung eines entsprechenden Gleichungssystems nicht
mehr möglich ist.
Die iterative Berechnung des PageRank:
Aufgrund der Größe des Webs erfolgt
in der Praxis der Suchmaschine Google eine näherungsweise,
iterative Berechnung des PageRank. Dies bedeutet, dass zunächst
jeder Seite ein PageRank zugewiesen wird, und anschließend
der PageRank aller Seiten in mehreren Berechnungsrunden ermittelt
wird. Diese näherungsweise Berechung soll wiederum anhand unseres
kleinen Beispiels demonstriert werden, wobei als Ausganswert für
den PageRank einer jeden Seite zunächst 1 angenommen
wird.
| Iteration |
PR(A) |
PR(B) |
PR(C) |
| 0 |
1 |
1 |
1 |
| 1 |
1 |
0.75 |
1.125 |
| 2 |
1.0625 |
0.765625 |
1.1484375 |
| 3 |
1.07421875 |
0.76855469 |
1.15283203 |
| 4 |
1.07641602 |
0.76910400 |
1.15365601 |
| 5 |
1.07682800 |
0.76920700 |
1.15381050 |
| 6 |
1.07690525 |
0.76922631 |
1.15383947 |
| 7 |
1.07691973 |
0.76922993 |
1.15384490 |
| 8 |
1.07692245 |
0.76923061 |
1.15384592 |
| 9 |
1.07692296 |
0.76923074 |
1.15384611 |
| 10 |
1.07692305 |
0.76923076 |
1.15384615 |
| 11 |
1.07692307 |
0.76923077 |
1.15384615 |
| 12 |
1.07692308 |
0.76923077 |
1.15384615 |
Es zeigt sich, dass sich in unserem Beispiel bereits
nach sehr wenigen Iterationen eine sehr gute Näherung an die
tatsächlichen Werte ergibt. Für die Berechnung des PageRanks
für das komplette WWW werden von Lawrence Page und Sergey Brin
ca. 100 Iterationen als hinreichend genannt.
Entscheidend ist, dass die Summe der PageRanks
aller Seiten nach der Durchführung der iterativen Berechnung
gegen die Anzahl aller Seiten konvergiert. Der durchschnittliche
PageRank aller Seiten geht mithin gegen 1. Jede Seite hat
einen minimalen PageRank von (1-d). Der theoretisch maximale
PageRank einer Seite beträgt dN+(1-d), wobei N die Anzahl
aller Webseiten ist. Dieser theoretische Wert käme zustande,
wenn sämtliche Webseiten ausschließlich auf eine Seite
verlinken, und auch diese wiederum ausschließlich auf sich
selbst verlinkt.
|