Analyse des Google PageRank Algorithmus

Grundlagen

Im Folgenden betrachten wir den mathematischen Hintergrund zu Googles PageRank Algorithmus. Dazu sei das Internet mit nn Webseiten beschrieben durch einen gerichteten einfachen Graph mit Schleifen G=(V,E)G = (V,E), wobei

  1. VV die Menge aller Ecken (Webseiten) ist;

  2. E{(x,y) | (x,y)V2}E \subseteq \left\{(x,y) \ \middle|\ (x,y) \in V^2 \right\} die Menge aller gerichteter Kanten (Links) ist.

Beispiel 1.1. Der Graph G=(V,E)G = (V,E) mit

V={A,B,C,D}E={(A,B),(A,C),(B,C),(B,D),(C,A),(D,B),(D,C)}\begin{aligned} V &= \{A,B,C,D\} \\ E &= \{ (A,B), (A,C), (B,C), (B,D), \\ & \quad (C,A), (D,B), (D,C) \} \end{aligned}

ergibt das folgendes Internetmodell:

3rd-order Lagrangian basis function on simplex #8

Definition 1.2 (Adjazenzmatrix). Zum Internetgraph definieren wir A{0,1}n×n\boldsymbol{A} \in {\{0,1\}}^{n \times n} mit

Aij:={1es existiert Kante j nach i0sonst.A_{ij} := \begin{cases} 1 & \textnormal{es existiert Kante } j \textnormal{ nach } i \\ 0 & \textnormal{sonst} \end{cases} .

Beispiel 1.3. Zum Graph von 1.1 ergibt sich

A=(0010100111010100).\boldsymbol{A} = \begin{pmatrix} 0 & 0 & 1 & 0 \\ 1 & 0 & 0 & 1 \\ 1 & 1 & 0 & 1 \\ 0 & 1 & 0 & 0 \\ \end{pmatrix} .

Definition 1.4 (Linkmatrix). Die Linkmatrix U[0,1]n×n\boldsymbol{U} \in {[0,1]}^{n \times n} enthält die Wahrscheinlichkeiten, dass ein Internetbenuzter von Webseite jj einen Link zur Webseite ii aufruft unter der “random surfer” Annahme. Daher sei

Uij:={Aijsjsj0Aijsj=0U_{ij} := \begin{cases} \frac{A_{ij}}{s_j} & s_j \neq 0 \\ A_{ij} & s_j = 0 \\ \end{cases}

mit der

j-ten Spaltensumme sj:=i=1nAijj\textnormal{-ten Spaltensumme } s_j := \sum_{i=1}^n A_{ij}

Beispiel 1.5. Zum Graph von 1.1 ergibt sich

U=(0010120012121201201200).\boldsymbol{U} = \begin{pmatrix} 0 & 0 & 1 & 0 \\ \tfrac12 & 0 & 0 & \tfrac12 \\ \tfrac12 & \tfrac12 & 0 & \tfrac12 \\ 0 & \tfrac12 & 0 & 0 \\ \end{pmatrix} .

Sofern jede Webseite mindestens einen Link enthält (d.h. keine Nullspalte in U\boldsymbol{U}), haben die Linkmatrizen aus 1.4 eine besondere Eigenschaft.

Definition 1.6 (Spaltenstochastische Matrix). Eine quadratische Matrix heißt spaltenstochastisch wenn alle ihre Einträge nichtnegativ sind und alle Spaltensummen 11 sind.

Bemerkung 1.7. Man kann “dangling nodes” (Nullspalten in U\boldsymbol{U}) beheben indem man die entsprechende Spalte der Matrix U\boldsymbol{U} mit dem Vektor s=(1/n,,1/n)T\boldsymbol{s} = {(1/n,\dots,1/n)}^T ersetzt. Diese Modifikation nehmen wir ab jetzt an un bezeichnen die modifizierte Linkmatrix mit U~\boldsymbol{\tilde{U}}. Die Matrix U~\boldsymbol{\tilde{U}} ist dann immer spalten-stochastisch ist.

Definition 1.8. Ein Vektor xRn\boldsymbol{x} \in \mathbb{R}^n heißt Wahrscheinlichkeitsvektor wenn xi0x_i \ge 0 für alle i{1,,n}i \in \{1,\dots,n\} gilt und x1:=i=1nxi=1{\|\boldsymbol{x}\|}_1 := \sum_{i=1}^n |x_i| = 1.

Die Idee von Google war nun die Sortierung von Webseiten anhand der Wahrscheinlichkeiten, dass ein zufälliger User die Webseite besucht. Daher wird die folgende Dynamik simuliert.

Definition 1.9 (PageRank Algorithmus). Ausgehend von einem Startwahrscheinlichkeitsvektor x0Rn,x01=1\boldsymbol{x}_0 \in \mathbb{R}^n, {\|\boldsymbol{x}_0\|}_1 = 1, simuliere die Verteilung nach kk Schritten anhand des folgenden (Markov) Prozesses

xk+1=U~xk. \boldsymbol{x}_{k+1} = \boldsymbol{\tilde{U}} \boldsymbol{x}_k .

Die Wichtigkeit von Webseiten wird dann mit dem entsprechenden Eintrag vom im PageRank Vektor gemessen, der als stationäre Verteilung des Prozesses [eq:markov] definiert ist.

Definition 1.10. Wir nennen x:=limkxk\boldsymbol{x}^* := \lim_{k \to \infty} \boldsymbol{x}_k unter dem Prozess [eq:markov] den PageRank Vektor.

Bemerkung 1.11. Sofern ein PageRank Vektor exisitert, gilt

U~x=U~(limkU~kx0)=limkU~k+1x0=x\boldsymbol{\tilde{U}} \boldsymbol{x}^* = \boldsymbol{\tilde{U}} \left( \lim_{k \to \infty} \boldsymbol{\tilde{U}}^k \boldsymbol{x}_0 \right) = \lim_{k \to \infty} \boldsymbol{\tilde{U}}^{k+1} \boldsymbol{x}_0 = \boldsymbol{x}^*

sodass x\boldsymbol{x}^* ein Eigenvektor zum Eigenwert 11 ist.

Es stellen sich nun folgende Fragen:

  1. Existiert ein x\boldsymbol{x}^* überhaupt?

  2. Ist x\boldsymbol{x}^* ein Wahrscheinlichkeitsvektor?

  3. Ist x\boldsymbol{x}^* eindeutig?

  4. Konvergiert der Prozess immer zu einem x\boldsymbol{x}^*?

Zur Existenz eines PageRank Vektor haben wir folgendes Lemma.

Lemma 1.12. Jede spaltenstochastische Matrix U~\tilde{\boldsymbol{U}} hat den Eigenwert 11.

Beweis: Da U~\tilde{\boldsymbol{U}} spaltenstochastisch ist, ist die transponierte Matrix U~T\tilde{\boldsymbol{U}}^T zeilenstochastisch. Mit dem Vektor e=(1,,1)TR\boldsymbol{e} = {(1,\dots,1)}^T \in \mathbb{R} gilt daher

U~Te=e=1e,\tilde{\boldsymbol{U}}^T \boldsymbol{e} = \boldsymbol{e} = 1 \boldsymbol{e} ,

und somit ist 11 ein Eigenwert für U~T\tilde{\boldsymbol{U}}^T und somit auch für U~\tilde{\boldsymbol{U}}. \square

Sei nun V1(U~):={xRn | Mx=x}V_1(\tilde{\boldsymbol{U}}) := \left\{ \boldsymbol{x} \in \mathbb{R}^n \ \middle|\ \boldsymbol{M} \boldsymbol{x} = \boldsymbol{x} \right\} der Eigenraum zum Eigenwert 11. Für die Eindeutigkeit des Rankings, möchten wir dimV1(U~)=1\dim V_1(\tilde{U}) = 1. Wir betrachten aber folgende Beispiele:

Beispiel 1.13.

U=(010001000000011200101200000)\boldsymbol{U} = \begin{pmatrix} 0 & 1 & 0 & 0 & 0 \\ 1 & 0 & 0 & 0 & 0 \\ 0 & 0 & 0 & 1 & \frac{1}{2} \\ 0 & 0 & 1 & 0 & \frac{1}{2} \\ 0 & 0 & 0 & 0 & 0 \end{pmatrix}

Hier ist V1(U)V_1(\boldsymbol{U}) zweidimensional und eine möglichen Basis von V1(U)V_1(\boldsymbol{U}) (d.h. Eigenvektoren zum Eigenwert 11) ist gegeben durch b1=(1/2,1/2,0,0,0)T\boldsymbol{b}_1={(1/2,1/2,0,0,0)}^T und b2=(0,0,1/2,1/2,0)T\boldsymbol{b}_2={(0,0,1/2,1/2,0)}^T denn Ub1=b1\boldsymbol{U} \boldsymbol{b}_1 = \boldsymbol{b}_1 und U2b2=b2\boldsymbol{U}_2 \boldsymbol{b}_2 = \boldsymbol{b}_2. Aber auch jede Linearkombination, z.B., 34b1+14b2V1(U)\tfrac34 \boldsymbol{b}_1 + \tfrac14 \boldsymbol{b}_2 \in V_1(\boldsymbol{U}). Dies ist nicht gut für ein eindeutiges Ranking. Außerdem konvergiert der PageRank Algorithmus nicht für alle x0\boldsymbol{x}_0, denn mit z.B. x0=(1,0,0,0,0)T\boldsymbol{x}_0 = {(1,0,0,0,0)}^T gilt

x1=Ux0=(0,1,0,0,0)T,x2=Ux1=(1,0,0,0,0)T=x0,x3=x1,usw.\begin{aligned} \boldsymbol{x}_1 = \boldsymbol{U} \boldsymbol{x}_0 = {(0,1,0,0,0)}^T ,\\ \boldsymbol{x}_2 = \boldsymbol{U} \boldsymbol{x}_1 = {(1,0,0,0,0)}^T = \boldsymbol{x}_0 ,\\ \boldsymbol{x}_3 = \boldsymbol{x}_1 ,\\ \textnormal{usw.} \end{aligned}

Um all diese Probleme zu verhindern und alle vorherigen Fragen mit “ja” zu beantworten, erfordert es noch eine Modifikation der Linkmatrix.

Analyse der Google Matrix

Definition 1.14 (Google Matrix). Sei m[0,1]m \in [0,1] und SRn×n\boldsymbol{S} \in \mathbb{R}^{n \times n} die Matrix mit Einträgen Sij=1nS_{ij} =\tfrac{1}{n} für alle 1i,jn1 \le i,j \le n. Wir nennen die Matrix M[0,1]n×n\boldsymbol{M} \in {[0,1]}^{n \times n} mit

M:=(1m)U~+mS\boldsymbol{M} := (1-m) \tilde{\boldsymbol{U}} + m \boldsymbol{S}

die Googlematrix.

Bemerkung 1.15.

  1. Im ursprünglichen Artikel wurde m=0.15m=0.15 benutzt.

  2. Für m>0m > 0 ist die Matrix M\boldsymbol{M} positiv im folgenden Sinne.

Definition 1.16 (Positivität von Matrizen). Eine Matrix ist M\boldsymbol{M} ist positiv wenn Mij>0M_{ij} > 0 für alle ii und jj.

Für m>0m > 0 wollen wir den nachfolgenden Satz für M\boldsymbol{M} beweisen, der die Grundlage des PageRank Algorithmus für M\boldsymbol{M} bildet.

Satz 1.17. Sei MRn×n\boldsymbol{M} \in \mathbb{R}^{n \times n} eine positive, spaltenstochastische (PSS) Matrix. Dann ist V1(M)V_1(\boldsymbol{M}) eindimensional mit einem Eigenvektor xV1(M)\boldsymbol{x}^* \in V_1(\boldsymbol{M}). Der Vektor x\boldsymbol{x}^* ist stochastisch mit positiven Einträgen und lässt sich berechnen durch

x=limkMkx0\boldsymbol{x}^* = \lim_{k \to \infty} \boldsymbol{M}^k \boldsymbol{x}_0

für beliebige positive x0Rn\boldsymbol{x}_0 \in \mathbb{R}^n mit x01=1{\|\boldsymbol{x}_0\|}_1 = 1.

Da M\boldsymbol{M} spaltenstochastisch ist, folgt mit 1.12, dass ein Eigenwert 11 ist. Um zu zeigen, dass dimV1(M)=1\dim V_1(\boldsymbol{M}) = 1 gilt, brauchen wir:

Lemma 1.18. Sei MRn×n\boldsymbol{M} \in \mathbb{R}^{n \times n} eine positive, spaltenstochastische (PSS) Matrix. Dann hat jeder Eigenvektor vV1(M)\boldsymbol{v} \in V_1(\boldsymbol{M}) nur positive oder nur negative Eigenträge.

Beweis: Wir konstruieren einen Widerspruch. Angenommen es existiert ein wV1(M)\boldsymbol{w} \in V_1(\boldsymbol{M}) mit Einträgen unterschiedlichen Vorzeichens. Dann folgt aus w=Mw\boldsymbol{w} = \boldsymbol{M} \boldsymbol{w} dass

wi=j=1nMijwj.w_i = \sum_{j=1}^n M_{ij} w_j .

Mit der Dreiecksungleichung gilt also:

wi=j=1nMijwj<Mijj=1nwj,|w_i| = \left| \sum_{j=1}^n M_{ij} w_j \right| < M_{ij} \sum_{j=1}^n \left| w_j \right| ,

wobei diese Ungleichung strikt ist, da M\boldsymbol{M} positiv ist, w\boldsymbol{w} unterschiedliche Vorzeichen hat und somit mindestens ein Summand MijwjM_{ij} w_j negativ ist. Summation über ii und Vertauschen der Summen liefert:

i=1nwi<i=1nj=1nMijwj=j=1nwji=1nMij=1=j=1nwj,\begin{aligned} \sum_{i=1}^n |w_i| &< \sum_{i=1}^n \sum_{j=1}^n M_{ij} \left| w_j \right| = \sum_{j=1}^n \left| w_j \right| \underbrace{\sum_{i=1}^n M_{ij}}_{=1} \\ &= \sum_{j=1}^n \left| w_j \right| , \end{aligned}

was einen Widerspruch darstellt. \square

Für die Eindimensionalität von V1(M)V_1(\boldsymbol{M}) brauchen wir noch:

Lemma 1.19. Seien v,wRm\boldsymbol{v},\boldsymbol{w} \in \mathbb{R}^m für m2m \ge 2 linear unabhängig. Dann existieren zwei Zahlen, s,tRs,t \in \mathbb{R}, sodass x=sv+tw\boldsymbol{x} = s \boldsymbol{v} + t \boldsymbol{w} sowohl positive als auch negative Einträge hat.

Beweis: Die lineare Unabhängigkeit impliziert dass v0\boldsymbol{v} \neq \boldsymbol{0} und w0\boldsymbol{w} \neq \boldsymbol{0}. Sei d=i=1nvid = \sum_{i=1}^n v_i die Summe der Einträge von v\boldsymbol{v}. Fall 1: d=0d =0. Dann hat v\boldsymbol{v} Einträge mit unterschiedlichem Vorzeichen und s=1,t=0s=1,t=0 liefert die Behauptung. Fall 2: d0d \neq 0. Dann definieren wir

s=j=1nwjd,t=1,s = - \frac{\sum_{j=1}^n w_j}{d} ,\quad t = 1 ,

und es folgt für x=sv+tw\boldsymbol{x} = s \boldsymbol{v} + t \boldsymbol{w} dass

i=1nxi=i=1n[(j=1nwjd)vi]+i=1nwi=(j=1nwjd)i=1nvi+i=1nwi=(j=1nwj)(i=1nvid=1)+i=1nwi=0.\begin{aligned} \sum_{i=1}^n x_i &= \sum_{i=1}^n \left[ \left( - \frac{\sum_{j=1}^n w_j}{d} \right) v_i \right] + \sum_{i=1}^n w_i \\ &= \left( - \frac{\sum_{j=1}^n w_j}{d} \right) \sum_{i=1}^n v_i + \sum_{i=1}^n w_i \\ &= \left( - \sum_{j=1}^n w_j \right) \left( \underbrace{\frac{\sum_{i=1}^n v_i}{d}}_{=1} \right) + \sum_{i=1}^n w_i = 0 . \end{aligned}

Da v,w\boldsymbol{v},\boldsymbol{w} aber linear unahnängig sind, ist x0\boldsymbol{x} \neq \boldsymbol{0}. Die Tatsache dass i=1nxi=0\sum_{i=1}^n x_i = 0 impliziert somit dass x\boldsymbol{x} Einträge mit unterschiedlichen Vorzeichen haben muss. \square

Dieses Lemma nutzen wir für:

Lemma 1.20. Sei MRn×n\boldsymbol{M} \in \mathbb{R}^{n \times n} eine PSS Matrix. Dann ist V1(M)V_1(\boldsymbol{M}) eindimensional.

Beweis: Wir konstruieren wieder einen Widerspruch. Angenommen, es existieren zwei linear unabhängige v,wV1(M)\boldsymbol{v},\boldsymbol{w} \in V_1(\boldsymbol{M}). Für jede Linearkombination mit s,ts,t beliebig gilt dann x=sv+twV1(M)\boldsymbol{x} = s \boldsymbol{v} + t \boldsymbol{w} \in V_1(\boldsymbol{M}) und x\boldsymbol{x} hat nach 1.18 nur positive oder nur negative Einträge. Durch 1.19 wissen wir aber, dass es eine Wahl von s,tRs,t \in \mathbb{R} gibt, sodass x\boldsymbol{x} sowohl positive als auch negative Einträge besitzt. Dies ist ein Widerspruch und V1(M)V_1(\boldsymbol{M}) muss daher eindimensional sein. \square

Analyse des PageRank Algorithmus

Wir haben also bereits gezeigt, dass für eine PSS Matrix der Eigenraum zum Eigenwert 11 eindimensional ist und der Eigenvektor nur Einträge mit demselben Vorzeichen hat. Nun wollen wir zeigen, dass der PageRank Algorithmus genau zu diesem Eigenvektor konvergiert. Dazu brauchen wir:

Lemma 1.21. Sei MRn×n\boldsymbol{M} \in \mathbb{R}^{n \times n} eine PSS Matrix und VRnV \subset \mathbb{R}^n der Unterraum mit Vektoren v\boldsymbol{v}, die i=1n=0\sum_{i=1}^n = 0 erfüllen. Dann gilt für alle vV\boldsymbol{v} \in V:

MvV,Mv1cv1,\begin{aligned} \boldsymbol{M} \boldsymbol{v} &\in V , \\ {\|\boldsymbol{M} \boldsymbol{v}\|}_1 &\le c {\|\boldsymbol{v}\|}_1 , \end{aligned}

wobei c=max1jn12min1inMij<1c = \max_{1 \le j \le n} | 1 - 2 \min_{1 \le i \le n} M_{ij} | < 1 ist.

Beweis: Sei vV\boldsymbol{v} \in V beliebig. Dann gilt für w=Mv\boldsymbol{w} = \boldsymbol{M} \boldsymbol{v}, dass wi=j=1nMijvjw_i = \sum_{j=1}^n M_{ij} v_j und daher:

i=1nwi=i=1nj=1nMijvj=j=1nvji=1nMij=1=j=1nvj=0.\begin{aligned} \sum_{i=1}^n w_i &= \sum_{i=1}^n \sum_{j=1}^n M_{ij} v_j = \sum_{j=1}^n v_j \underbrace{\sum_{i=1}^n M_{ij}}_{=1} \\ &= \sum_{j=1}^n v_j = 0 . \end{aligned}

Somit ist wV\boldsymbol{w} \in V. Für die Normabschätzung betrachten wir

w1=i=1neiwi=i=1nei(j=1nMijvj),{\|\boldsymbol{w}\|}_1 = \sum_{i=1}^n e_i w_i = \sum_{i=1}^n e_i \left( \sum_{j=1}^n M_{ij} v_j \right) ,

wobei ei=sgn(wi)e_i = \mathop{\mathrm{sgn}}(w_i). Hier bemerken wir, dass nicht alle eie_i dasselbe Vorzeichen haben können da i=1wj=0\sum_{i=1} w_j = 0 (außer für w=0\boldsymbol{w} = \boldsymbol{0}, was die Ungleichung direkt implizieren würde). Wir vertauschen die Summen und erhalten

w1=j=1nvj(i=1neiMij)=j=1nvjaj{\|\boldsymbol{w}\|}_1 = \sum_{j=1}^n v_j \left( \sum_{i=1}^n e_i M_{ij} \right) = \sum_{j=1}^n v_j a_j

wobei aj:=i=1neiMija_j := \sum_{i=1}^n e_i M_{ij}. Da die eie_i gemischte Vorzeichen haben und i=1nMij=1\sum_{i=1}^n M_{ij} = 1 mit 0<Mij<10 < M_{ij} < 1 gilt folgende Abchätzung:

1<1+2min1inMijaj12min1inMij<1-1 < -1 + 2 \min_{1 \le i \le n} M_{ij} \le a_j \le 1 - 2 \min_{1 \le i \le n} M_{ij} < 1

Die Abschätzung ist scharf denn im Extremfall hat eje_j nur beim kleinsten Eintrag der jj-ten Spalte ein anderes Vorzeichen (vergleiche mit (1,1,1)T(0.7,0.2,0.1)T=0.7+0.20.1120.1{(1,1,-1)}^T \cdot {(0.7,0.2,0.1)}^T = 0.7 + 0.2 - 0.1 \le 1 - 2 \cdot 0.1). Damit ergibt sich

aj12min1inMij<1.|a_j| \le |1 - 2 \min_{1 \le i \le n} M_{ij}| < 1 .

Eine obere Schranke für aj|a_j| ist somit durch das Maximum über alle jj gegeben durch

c:=max1jn12min1inMij,c := \max_{1 \le j \le n} |\le 1 - 2 \min_{1 \le i \le n} M_{ij}| ,

sodass ajc<1|a_j| \le c < 1 gilt für alle jj. Letztlich folgt dann

w1=j=1nvjaj=j=1nvjajj=1nvjajcj=1nvj=cj=1nv1.\begin{aligned} {\|\boldsymbol{w}\|}_1 &= \sum_{j=1}^n v_j a_j = \left| \sum_{j=1}^n v_j a_j \right| \le \sum_{j=1}^n |v_j| |a_j| \\ &\le c \sum_{j=1}^n |v_j| = c \sum_{j=1}^n {\|\boldsymbol{v}\|}_1 . \end{aligned}

\square

Damit haben wir alles für:

Beweis: [von 1.17] Nach 1.12 hat M\boldsymbol{M} einen Eigenwert 11, mit 1.20 dass V1(M)V_1(\boldsymbol{M}) eindimensional ist und mit 1.18 dass für alle vV1(M)\boldsymbol{v} \in V_1(\boldsymbol{M}) kein Vorzeichenwechsel in den Einträgen auftritt. Daher gibt es einen eindeutigen Vektor xV1(M)\boldsymbol{x}^* \in V_1(\boldsymbol{M}) mit

i=1nxi=1.\sum_{i=1}^n x^*_i = 1 .

Sei nun ein beliebiger positiver stochastischer Vektor x0\boldsymbol{x}_0 mit x0=1{\|\boldsymbol{x}_0\|} = 1 gegeben. Diesen schreiben wir (mit Quadrantenargument: Differenz von x0\boldsymbol{x}_0 und x\boldsymbol{x}^* muss auf der Hyperebene x,(1,,1)T=0\langle \boldsymbol{x},{(1,\dots,1)}^T \rangle = 0 liegen da beide Vektoren positiv sind und somit im ersten Orthanten sind. Diese Hyperebene ist parallel zur (1=1{\|\boldsymbol{\cdot}\|}_1 =1)-Isolinie durch alle Basisvektoren ei\boldsymbol{e}_i. Somit ist die Differenz in VV) als x0=x+v\boldsymbol{x}_0 = \boldsymbol{x}^* + \boldsymbol{v} mit vV\boldsymbol{v} \in V (mit VV aus 1.21). Wir berechnen dann Mkx0=Mkx+Mkv=x+Mkv\boldsymbol{M}^k \boldsymbol{x}_0 = \boldsymbol{M}^k \boldsymbol{x}^* + \boldsymbol{M}^k \boldsymbol{v} = \boldsymbol{x}^* + \boldsymbol{M}^k \boldsymbol{v}. Daher gilt (die Fehlergleichung)

Mkx0x=Mkv. \boldsymbol{M}^k \boldsymbol{x}_0 - \boldsymbol{x}^* = \boldsymbol{M}^k \boldsymbol{v} .

Unter Ausnutzung von 1.21 kann mit vollständige Induktion folgende Aussage gezeigt werden:

Fu¨r alle k gilt MkvV sowie Mkv1ckv1 mit 0c<1.\begin{aligned} \textnormal{Für alle } k \textnormal{ gilt } \boldsymbol{M}^k \boldsymbol{v} \in V \\ \textnormal{ sowie } {\|\boldsymbol{M}^k \boldsymbol{v}\|}_1 \le c^k {\|\boldsymbol{v}\|}_1 \textnormal{ mit } 0 \le c < 1 . \end{aligned}

Somit erhalten wir limkckv1=0\lim_{k \to \infty} c^k {\|\boldsymbol{v}\|}_1 = 0 und mit dem Einschnürungssatz folgt limkMkv1=0\lim_{k \to \infty} {\|\boldsymbol{M}^k \boldsymbol{v}\|}_1 = 0. Aus [eq:fehlergleichung] erhalten wir dann letztlich die Konvergenz

limkMkx0=x.\lim_{k \to \infty} \boldsymbol{M}^k \boldsymbol{x}_0 = \boldsymbol{x}^* .

\square

Weiterführende Diskussionen finden sich, unter anderem, in (Bryan and Leise 2006; Schönbrod 2015).

Vektoriteration

Der PageRank Algorithmus ist eine spezielle Form der Vektoriteration (en: power iteration), die durch wiederholtes Anwenden der Matrix und Normierung des resultierenden Vektors irgendwann gegen den Eigenvektor zum betragsmäßig größten Eigenwerts konvergiert.

Referenzen

Bryan, Kurt, and Tanya Leise. 2006. “The $25,000,000,000 Eigenvector: The Linear Algebra Behind Google.” SIAM Review 48 (3): 569–81.

Schönbrod, Sarah. 2015. “Didaktisch-Methodische Ausarbeitung Eines Lernmoduls Zum Thema Google Im Rahmen Eines Mathematischen Modellierungstages Für Schülerinnen Und Schüler Der Sekundarstufe II.” Bachelorarbeit, Aachen: RWTH Aachen University; RWTH Aachen University.

2023-05-09