Mathematik hinter Google

Der folgende Satz, der auch auf Oskar Perron zurückgeht, stellt eine elegante Anwendung von Satz 2.1.6 dar und wird später eine wichtige Rolle spielen.
478KB Größe 19 Downloads 706 Ansichten
Mathematik hinter Google Zulassungsarbeit Eberhard-Karls-Universit¨at T¨ ubingen Mathematisches Institut Arbeitsbereich Funktionalanalyis Prof. Dr. Rainer Nagel Prof. Dr. Ulf Schlotterbeck

Eingereicht von Matthias Frick

T¨ ubingen, im Juni 2007

Erkl¨ arung Ich erkl¨are, dass ich die Arbeit selbst¨andig angefertigt und nur die angegebenen Hilfsmittel benutzt habe. Alle Stellen, die dem Wortlaut oder dem Sinn nach anderen Werken, gegebenenfalls auch elektronischen Medien, entnommen sind, sind von mir durch Angabe der Quelle als Entlehnung kenntlich gemacht. Entlehnungen aus dem Internet sind durch Ausdruck belegt. T¨ ubingen, den 27. Juni 2007

Danksagung Mein herzlicher Dank gilt in erster Linie Prof. Dr. Rainer Nagel und Prof. Dr. Ulf Schlotterbeck, die mich in die Arbeitsgruppe Funktionalanalysis aufnahmen und mich dazu ermutigten, meine Zulassungsarbeit im Fach Mathematik anzufertigen. Ich danke ihnen f¨ ur die sehr engagierte Betreuung, die vielen Anregungen beim Entwickeln der Gedanken und nicht zuletzt f¨ ur die tolle Atmosph¨are, die sie durch ihre verst¨andnisvolle und freundliche Art in der Arbeitsgruppe stifteten. Dar¨ uber hinaus gilt mein Dank auch allen anderen Mitgliedern der Arbeitsgruppe, die nicht weniger f¨ ur das angenehme Arbeitsklima verantwortlich sind und mir bei allen mathematischen Fragen hilfsbereit und mit großer Geduld zur Seite standen. Einen ganz besonderen Dank aussprechen m¨ochte ich auch dem ehemaligen F¨ uhrungsduo der Fußball-Hobbymannschaft Real Analysis, Thomas Stumpp und Tobias Jahnke, die mir ein gl¨ uhendes Beispiel daf¨ ur waren, dass man auch als begeisterter Fußballer ein erfolgreiches Mathestudium absolvieren kann, und mich in Zeiten des Zweifelns und des Frustes w¨ahrend des Grundstudiums immer wieder neu motivierten. Last but not least danke ich meinen Freunden und allen voran meinen Eltern, die mich w¨ahrend meines gesamten Studiums und beim Erstellen dieser Arbeit tatkr¨aftig unterst¨ utzt haben.

Inhaltsverzeichnis 1 Einleitung 1.1 Generation Google . . . . . . . . . . 1.2 Wie funktioniert eine Suchmaschine? 1.3 Warum Google? . . . . . . . . . . . . 1.4 Die Entwicklung der PageRank-Idee .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

4 4 6 8 10

2 Endlich-dimensionale Spektraltheorie 16 2.1 Positive Matrizen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 2.2 Potenzen von Matrizen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3 Die Google-Matrix 3.1 Problematische Webstrukturen . . . . . . . . . . . . . . . . 3.1.1 Dangling Nodes (Webseiten ohne Outlinks) . . . . . 3.1.2 Nicht stark zusammenh¨angender Webgraph . . . . 3.2 Modifizierung der Linkmatrix A . . . . . . . . . . . . . . . 3.2.1 Behebung des Dangling Node-Problems . . . . . . . 3.2.2 Behebung des Problems des Nicht-Zusammenhangs 3.3 Berechnung des PageRank-Vektors . . . . . . . . . . . . . 3.4 Die Parameter der Google-Matrix . . . . . . . . . . . . . . 3.4.1 Die Linkmatrix A . . . . . . . . . . . . . . . . . . . 3.4.2 Der Einfluss von α . . . . . . . . . . . . . . . . . . 3.4.3 Die Zufalls-Transformationsmatrix T . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

. . . . . . . . . . .

30 30 30 31 32 32 33 34 36 36 37 40

4 PageRank ohne Spektraltheorie? 43 4.1 Banachscher Fixpunktsatz . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.2 Perron-Frobenius vs. Banach . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Literaturverzeichnis

45

3

Matthias Frick: Mathematik hinter Google

1

Einleitung

1.1

Generation Google

Das Informationsbeschaffungs-Verhalten in unserer Gesellschaft hat sich in den letzten Jahren dramatisch ver¨andert. Informationen, die man fr¨ uher u ucher, Zeitschriften, ¨ber B¨ Fernsehen, Radio oder gar pers¨onliche Gespr¨ache einholte, sind heute – dank Internetsuchmaschinen – nur einen Mausklick“ entfernt. Beeindruckend ist nicht nur der so einfache ” Zugang zu beliebigen Informationen, sondern auch die rasante Geschwindigkeit, mit der sich diese mediale Ver¨anderung vollzogen hat. Vergleicht man den Zeitraum, in dem sich Internet und Online-Suche seit ihren Geburtsstunden ausgebreitet haben, mit der Zeit, die es einst dauerte, bis die ersten gedruckten B¨ ucher f¨ ur die breite Masse erh¨altlich waren, so wirkt die Nutzung von Suchmaschinen fast wie ein gr¨oßerer Durchbruch als Gutenbergs Buchdruck. Heute, nur knapp 9 Jahre nach Googles Online-Gang im September 1998, scheint es f¨ ur uns selbstverst¨andlich, dass die Unmengen an Informationen, die das World Wide Web bietet, fast uneingeschr¨ankt zug¨anglich sind. Doch dies ist keineswegs selbstverst¨andlich und ausschließlich den Suchmaschinen-Entwicklern zu verdanken. Das Internet allein ist eigentlich nichts weiter als eine ungeordnete Ansammlung an unz¨ahligen Daten, die einem st¨andigen, dynamischen Wachstum und Wandel unterliegt. Eine gezielte Suche nach Informationen zu beliebigen Stichw¨ortern w¨are ohne Suchmaschine nicht m¨oglich. Suchmaschinen bringen Ordnung ins Chaos des World Wide Web und machen das Internet zu dem, was es f¨ ur den Nutzer heutzutage ist: Eine schier unersch¨opfliche Quelle an Informationen. Die erfolgreichste aller Suchmaschinen ist zweifellos Google: Knapp 40 Prozent Marktanteil bei Suchmaschinenanfragen weltweit ([LaMey], Seite 4) und sogar u ¨ber 90 Prozent bei deutschen Internet-Suchen [FN07] sprechen eine deutliche Sprache: Wer im Internet surft, kommt an Google kaum noch vorbei. Diese Einsicht hatte wohl auch die DudenRedaktion, als sie 2005 das popul¨are Verb googeln als Synonym f¨ ur das allgemeine Suchen 1 im Internet (also auch mit anderen Suchmaschinen) aufnahm . Kein Wunder also, dass oft von der Generation Google die Rede ist, wenn man die heutige Gesellschaft des InternetZeitalters beschreibt. Schon heute ist Google mit einem B¨orsenwert von u ¨ber 120 Milliarden Euro unter den drei erfolgreichsten IT-Unternehmen der Welt. Das Handelsblatt bezeichnete Google-Chef Eric Schmidt 2006 als Mann des Jahres [HB06], die Google-Gr¨ under Larry Page und Sergey Brin sind l¨angst Multimillion¨are und dennoch ist noch kein Ende der Erfolgsstory in Sicht. 1

Mittlerweile wurde der Eintrag – interessanterweise aus Markenschutzgr¨ unden auf Veranlassung der Google-Betreiber selbst – in mit Google im Internet suchen“ ge¨andert. ”

Universit¨at T¨ ubingen

4

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Google w¨achst und expandiert im Eiltempo. Immer mehr Dienstleistungen wie Google Maps, Google Mail oder Google Video werden im World Wide Web angeboten (siehe Abb. 1.1). Erst im Oktober 2006 wurde das Internet-Videoportal YouTube kurzerhand f¨ ur 1,65 Milliarden Dollar u ur ¨bernommen [Goog2] und im April 2007 machte Google gar f¨ ¨ stolze 3,1 Milliarden das Rennen um die Ubernahme der umworbenen Online-Werbefirma Doubleclick und stach dabei den Konkurrenten Microsoft aus. • Suchmaschine • Google Mail

http://www.google.de http://mail.google.com/

• Google Groups

http://groups.google.de/

• Google News

http://news.google.de/

• Google Maps

http://maps.google.de/

• Google Earth

http://earth.google.de/

• Google Video

http://video.google.de/

• Google Translate • Google Scholar • Google Books • Froogle

http://www.google.de/language tools http://scholar.google.de/

http://www.google.de/books

http://www.google.de/froogle

• ...

Abbildung 1.1: Internet-Dienstleistungen von Google

Trotz dieses mittlerweile breitgef¨acherten Dienstleistungsangebots der Marke Google (siehe auch [Goog1]) basiert ihr heute fast unglaublicher B¨orsenwert auf dem urspr¨ unglichen Erfolg und der nach wie vor marktf¨ uhrenden Position der Suchmaschine. Google zeigt mich, also bin ich“ [Kaim]. So lautet nicht nur der Titel eines 45min¨ utigen ” franz¨osischen Kurzfilms u ¨ber die Abh¨angigkeit Jugendlicher vom Internet und deren Lebensgef¨ uhl, sondern auch die Einsicht, der sich weltweit immer mehr Unternehmen stellen. Jeder buhlt um die vordersten Pl¨atze bei den Google-Suchergebnissen. In einer Welt, in der sich auch das Gesch¨aftsleben mehr und mehr online vollzieht, ist es f¨ ur Firmen und Dienstleister immer wichtiger, von potentiellen Kunden im Internet gefunden zu werden. Angesichts der Monopolstellung Googles und des Wettkampfs um die vorderen Pl¨atze der Suchergebnis-Listen scheinen Aussagen wie eine Firma, die man bei Google nicht findet, ” existiert nicht“ [FN07] nicht vermessen. Google ist also in aller Munde, und – noch viel wichtiger – immer h¨aufiger in fast allen unseren Browserfenstern. Es ist also von aktueller Relevanz, sich zu fragen, worauf dieser unglaubliche Erfolg beruht. Welches Erfolgsgeheimnis steckt hinter Googles Monopolstellung? Eine m¨ogliche Antwort lautet: Jede Menge Mathematik! Im Hauptteil dieser Arbeit soll diese Mathematik hinter Google beleuchtet werden. Zuvor jedoch werden einige grunds¨atzliche Dinge u ¨ber die Funktionsweise von Suchmaschinen erl¨autert, um verst¨andlich zu machen, wo die Mathematik ansetzt und warum sie hier so wichtig ist.

Universit¨at T¨ ubingen

5

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

1.2

Wie funktioniert eine Suchmaschine?

Suchmaschinen machen uns die unfassbaren Mengen an Internet-Informationen erst zug¨anglich. Suchmaschinen o¨ffnen uns – bildlich gesprochen – die T¨ uren zur Internet-Bibliothek und den Informations-Lagern zu bestimmten Suchbegriffen, sie sortieren die Informationen zus¨atzlich nach Relevanz und lassen uns so ohne Zeitverlust gleich beim Eintritt auf die (angeblich) relevantesten Informationen stoßen. Das ist eine beachtliche Leistung, denn es gibt mehrere Milliarden Webseiten im World Wide Web und dazu fast ebenso viele Suchanfragen pro Tag. Wie k¨onnen sich die Suchmaschinen in diesem inhomogenen und immer noch rasant wachsenden und sich st¨andig ver¨andernden Netz auskennen und der unglaublichen Nachfrage gerecht werden? Alle Suchmaschinenbetreiber benutzen hierzu zun¨achst eine automatische Surfsoftware (Spider, Crawler, Webrobots oder kurz Bots), die permanent und immer wieder aufs Neue das sich st¨andig ver¨andernde und wachsende Internet durchforstet. Das Surf-Programm nutzt hierbei die Hyperlinks zwischen den Webseiten und hangelt sich von Seite zu Seite und von Hyperlink zu Hyperlink, um so viele Seiten mit ¨offentlichem Zugang wie m¨oglich zu orten. Mit den angesteuerten Seiten geschieht zun¨achst einmal Dreierlei: 1. Jede Seite bekommt eine Nummer. 2. Eine Kopie der Seite wird im firmeneigenen Rechenzentrum gespeichert. 3. Der Inhalt des gesamten Quelltextes der Seite (d.h. sowohl der Fließtext als auch Titel, Meta-Tags, Keywords, Anchortext...) wird analysiert und in ein riesiges SchlagwortVerzeichnis – den sogenannten Index – abgelegt und sortiert. Der Index ist vergleichbar mit einem Stichwortverzeichnis am Ende eines Buches. Neben jedem Begriff sind die Nummern all derjenigen Seiten aufgelistet, auf denen der Begriff zu finden ist. • Begriff 1 (Algebra) – 3 [1,0,7], 117 [1,1,5], 3961 [1,0,17] ... .. . • Begriff 323 (Funktionalanalysis) – 3 [1,0,11], 15 [0,0,3], 673 [1,1,25], 12958 [1,1,1] ... .. . • Begriff 4321 (Schlotterbeck) – 3 [0,1,4], 673 [1,0,13], 3533 [0,0,1], 24978 [1,1,2], 300560 [0,0,10] ... .. . • Begriff 50301 (Zahlentheorie) – 2 [1,1,3], 15 [1,0,2], 35 [0,0,5], 673 [1,0,8], 12958 [1,1,3] ... .. .

Abbildung 1.2: Vereinfachtes Modell-Beispiel f¨ ur einen Suchmaschinen-Index (vgl. [LaMey], Kapitel 2.2)

In Abbildung 1.2 stehen die fettgedruckten Zahlen f¨ ur die Seiten, auf denen der jeweilige Begriff zu finden ist. Die Vektoren in eckigen Klammern dahinter geben quantitative Universit¨at T¨ ubingen

6

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

und qualitative Ausk¨ unfte u ¨ber die Art und Weise der Verwendung des Begriffs auf der Seite, also z.B. den genauen Ort (Titelzeile, Keywords, Fließtext...) oder die H¨aufigkeit des Vorkommens. Ferner kann hier beispielsweise vermerkt werden, ob der Begriff durch besonderes Layout hervorgehoben wird (unterstrichen, fettgedruckt, gr¨oßere Schriftart...). In diesem Beispiel steht die erste Vektorkomponente f¨ ur ein etwaiges Vorkommen des Begriffs im Titel der Webseite. Hier ist eine 1 eingetragen, falls die Titelzeile den Begriff enth¨alt, andernfalls eine 0. Die zweite Stelle gibt an, ob der Begriff in den vom Webautor angegebenen Keywords der Seite erw¨ahnt ist (falls ja: 1, sonst: 0). Die letzte Vektorstelle steht f¨ ur die Anzahl der Verwendungen des Begriffs auf der gesamten Seite. Bei Suchanfragen wird nun gepr¨ uft, ob die eingegebenen Suchbegriffe im Index vorhanden sind. In den meisten F¨allen findet die Suchmaschine hierbei mehrere tausend Treffer, weshalb eine Sortierung der Trefferliste n¨otig ist, um den Nutzern auf der Suche nach tats¨achlich relevanten Treffern ein allzu langes Durchforsten sogenannten Info-M¨ ulls zu ersparen. Die hierf¨ ur zust¨andigen Ranking-Algorithmen sind also entscheidend f¨ ur den tats¨achlichen Nutzen und damit den Erfolg einer Suchmaschine. Eine M¨oglichkeit f¨ ur die Sortierung der Treffer bietet die Ber¨ ucksichtigung zus¨atzlicher Informationen u ¨ber die unterschiedliche Verwendung der Suchbegriffe auf den verschiedenen Seiten der Trefferliste. Hierbei wird versucht, die Relevanz der Seiten zum jeweiligen Suchbegriff zu beurteilen. Im gew¨ahlten Beispiel kann also der dreistellige Vektor herangezogen werden, um jeder Seite abh¨angig von ihrem Inhalt bzw. dem jeweiligen Suchbegriff einen sogenannten Content-Score“[LaMey] zuzuordnen, z.B. durch einfache Addition der Vektorstellen. ” Eine Suche nach dem Begriff Funktionalanalysis“w¨ urde hier also zun¨achst die Seiten 3, ” 15, 673 und 12958 als Treffer liefern, wobei 673 aufgrund des h¨ochsten Content-Scores (1+1+25=27) an erster Stelle stehen w¨ urde. Oft beinhaltet eine Suchanfrage zwei oder mehrere Begriffe, z.B. Funktionalanalysis Schlotterbeck“. Eine solche Anfrage w¨ urde in ” diesem Fall die Seiten 3 und 673 als relevante Treffer liefern, da auf beiden Seiten beide Begriffe vorkommen. Die von beiden Suchbegriffen abh¨angigen Content-Scores der beiden Seiten ergeben sich dann beispielsweise durch Multiplikation der entsprechenden Vektoren: Content-Score Seite 3 = (1 + 0 + 11) × (0 + 1 + 4) = 60 | {z } | {z } F unktionalanalysis

Schlotterbeck

Content-Score Seite 673 = (1 + 1 + 25) × (1 + 0 + 13) = 378 {z } | {z } | F unktionalanalysis

Schlotterbeck

Nat¨ urlich werden in der Realit¨at noch weit mehr Informationen als in unserem dreistelligen Vektor ber¨ ucksichtigt und auch die Gewichtung der einzelnen Komponenten und die numerische Berechnung sind viel komplizierter. So m¨ ussen z.B. auch Faktoren wie die r¨aumliche N¨ahe zweier oder gegebenenfalls mehrerer Suchterme zueinander und deren Eingabereihenfolge auf den jeweiligen Seiten ber¨ ucksichtigt und mit in die Berechnung einbezogen werden. Das gew¨ahlte Modell-Beispiel soll also lediglich zur Veranschaulichung des Prinzips der Inhaltsindizierung von Webseiten dienen.

Universit¨at T¨ ubingen

7

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Bis zum Durchbruch von Google nutzten Suchmaschinen zur Erstellung eines SuchergebnisRankings jedoch fast ausschließlich derartige Suchanfragen-abh¨angige Content-Scores. Dies bot eine breite Angriffsfl¨ache f¨ ur einfache Manipulationen sogenannter Spammer (zum Beispiel durch Mehrfachnennung eines popul¨aren Suchbegriffs in weißer Schriftfarbe auf weißem Hintergrund) und resultierte in oft hohen Rankingwerten f¨ ur qualitativ schlechte Webseiten.

1.3

Warum Google?

Google ist derzeit mit weit u ¨ber 250 Millionen Suchanfragen pro Tag die mit Abstand erfolgreichste Internet-Suchmaschine. Grund genug, sich zu fragen, worin sich Google von anderen Suchmaschinen unterscheidet und was Googles Vorz¨ uge sind. Einige m¨ogliche Gr¨ unde f¨ ur Googles Erfolg sind beispielsweise: ¨ • Ubersichtliches Layout und einfache Bedienung Im Vergleich zu konkurrierenden Suchmaschinen hob sich Google von Anfang an durch seine einfache und u ¨bersichtliche Benutzeroberfl¨ache mit dem intuitiv bedienbaren Sucheingabe-Feld im Zentrum ab. Dies erm¨oglicht einerseits Such-Anf¨angern eine erfolgreiche Suche, bietet andererseits aber auch K¨onnern u ¨ber zus¨atzliche Eingabe-Codes die M¨oglichkeit einer detaillierten Fortgeschrittenen-Suche. Auch die u ¨bersichtliche Pr¨asentation der Suchergebnisse, bei der unter der Angabe des Titels als kleine Seitenvorschau das direkte Umfeld des Suchbegriffs auf der Seite angezeigt wird, ist sicherlich zu den Vorz¨ ugen Googles zu z¨ahlen (vgl. [Sch¨o]). • Schnelle Beantwortung der Suchanfrage Googles Richtwert f¨ ur die Antwortzeit ist eine halbe Sekunde. • Gr¨oßter Index Seit September 2005 wird die Gr¨oße des Index nicht mehr auf der Hauptseite angezeigt, bis dahin waren schon u ¨ber 8 Milliarden Internetseiten indiziert. Google bietet Webautoren, die eine neue Seite ins Netz stellen und die automatische Index-Erfassung durch den Google-Bot nicht abwarten wollen, die M¨oglichkeit, unter http://www.google.com/addurl.html ihre Seite zur Google-Liste der to-be-crawled ” URLs“hinzuzuf¨ ugen, um so die Erfassung der Seite zu beschleunigen. • Plausibles Ranking der Suchergebnisse Das Google-Ranking ist das eigentliche Erfolgsgeheimnis des Unternehmens. Denn schon in den Anfangszeiten des aufbl¨ uhenden Suchmaschinenmarktes war Googles entscheidender Vorteil gegen¨ uber der Konkurrenz die offensichtlich gute Informationsfilterung, also die plausible Relevanz-Bewertung der Webseiten zur Suchanfrage: Google always seemed to deliver the good stuff upfront“[BrLei]. ” Wie schon erw¨ahnt sind letztendlich die Ranking-Algorithmen entscheidend f¨ ur den Erfolg einer Suchmaschine. Dementsprechend musste der Google-Algorithmus von Beginn an besonders innovativ und gut sein.

Universit¨at T¨ ubingen

8

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Eine von vielen Innovationen der Google-Technologie war die Miteinbeziehung der Anchor Text Indizierung in die Berechnung des Content-Scores. D.h. Google indiziert auch die Anchor-Texte der Inlinks (Hyperlink-Descriptions) einer Seite – also eine externe Seitenbeschreibung durch andere Webautoren – um den Einfluss eigenen Inhalts-Spammings (wie oben beschrieben) zu minimieren. Dies f¨ uhrte zwischenzeitlich wiederum zum Problem sogenannter Google-Bomben, als beispielsweise zahlreiche Gegner von George W. Bush einen Link mit der Beschreibung Miserable Failure auf die offizielle Homepage des Weißen Hauses setzten und somit die Bush Biographie auf Rang 1 der Google-Ergebnisliste zur Suche nach Miserable Failure katapultierten. Die entscheidende Neuerung, die Googles Algorithmus 1998 von der Konkurrenz unterschied, war allerdings, dass zur Relevanzbewertung einer Seite f¨ ur eine bestimmte Suchanfrage nicht nur ein Suchanfragen-abh¨angiger Content-Score (wie in 1.2 beschrieben), sondern auch ein Suchanfragen-unabh¨angiger Wichtigkeitswert einer Seite ( Popularity Sco” re“[LaMey] oder Importance Score“[BrLei]) nach einem von den Google-Gr¨ undern Larry ” Page und Sergey Brin entwickelten Verfahren (das sogenannte PageRank-Verfahren) berechnet wurde und mit ersterem zu einem Gesamt-Rankingwert ( Overall Score“[LaMey]) ” kombiniert wurde. Man k¨onnte vermuten, dass dieser Mehraufwand zu einer deutlich langsameren Beantwortung der Suchanfrage f¨ uhrt. Doch dies ist nicht der Fall. Da der PageRank-Wert in regelm¨aßgien Abst¨anden offline und damit insbesondere unabh¨angig von der Suchanfrage berechnet wird, muss er im Moment der Suchanfrage lediglich abgerufen werden. In den Bruchteilen einer Sekunde von der Suchanfrage bis zur Pr¨asentation der Suchergebnisse pr¨ uft die Suchmaschine im Index, welche Seiten die Suchbegriffe enthalten, berechnet u ¨ber die jeweiligen Begriffs-Vektoren den Content-Score dieser Seiten, kombiniert diesen mit ihrem PageRank-Wert und ordnet die Seiten nach der Reihenfolge ihrer GesamtRankingwerte. Die genaue Gewichtung der einzelnen Faktoren, also der komplette Google-Algorithmus mit seinen weit u urlich das bestgeh¨ utete Firmengeheimnis ¨ber 100 Parametern, ist nat¨ Googles. Auf dem Weg zur perfekten Suchmaschine“[Goog3] mit m¨oglichst optima” ” len Parametern“[Sch¨o] nutzen die dauerhaft um Innovation bem¨ uhten“[Goog3] Google” Entwickler allerdings auch heute noch gezieltes User-Feedback, um durch weitere Ver¨anderungen der Parameter das Verhalten des Ranking-Algorithmus’ immer mehr an die menschlichen Einsch¨atzungen anzun¨ahern. Trotz aller Entwicklung und Geheimniskr¨amerei gibt Google auf seiner Homepage ganz offen preis, dass die Berechnung des Suchanfragen-unabh¨angigen Wichtigkeitswerts durch das revolution¨are PageRank-Verfahren nach wie vor den wichtigsten Baustein des GoogleAlgorithmus darstellt: Das Herz unserer Software ist PageRank“[Goog4]. Obwohl auch ” hinter den anderen beteiligten Verfahren des Gesamtalgorithmus jede Menge interessante Informatik und numerische Mathematik steckt, wird sich diese Arbeit daher im Folgenden auf die Berechnung des PageRank-Wertes konzentrieren. Der Titel dieser Arbeit – Mathematik hinter Google – meint also genauer Mathematik hinter PageRank.

Universit¨at T¨ ubingen

9

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

1.4

Die Entwicklung der PageRank-Idee

Die z¨ undende Idee hinter PageRank war, das Internet selbst bzw. seine Linkstruktur u ¨ber die Bewertung seiner Webseiten entscheiden zu lassen. Hierbei macht man sich die demokratische Natur des World Wide Web zu Nutze und interpretiert die Links, die ein Webautor – also ein W¨ahler in einer demokratischen Wahl – auf andere Seiten setzt, als Stimmabgabe f¨ ur die verlinkten Seiten. Denn indem ein Autor auf andere Seiten verweist, dr¨ uckt er gewissermaßen seine subjektive hohe Wertsch¨atzung dieser Seiten aus. Die Gesamtheit dieser subjektiven Stimmabgaben – also die gesamte Linkstruktur – kann man als demokratische Wahl und damit als Mittel zur Bestimmung eines globalen Bedeut” samkeitswertes“[Sch¨o] auffassen. Um diese Idee in Mathematik zu u ¨bersetzen und damit arbeiten zu k¨onnen, sind zun¨achst einige Notationen und Definitionen n¨otig. Notationen und Definitionen • Sei n ∈ N die Anzahl aller Webseiten, W = {Wk | 1 ≤ k ≤ n, k ∈ N} die Menge aller Webseiten. • Ik := {i | ∃ ein Link von der Webseite Wi zur Webseite Wk } = Menge der auf Wk verweisenden Links (Inlinks). • Ok := {j | ∃ ein Link von der Webseite Wk zur Webseite Wj } = Menge der von Wk ausgehenden Links (Outlinks). • Im Folgenden bezeichne 0 ≤ xk den Wichtigkeitswert der Seite Wk , so dass xi > xj ⇔ Wi ist wichtiger als Wj . ¨ Erste Uberlegungen Mit dem Ansatz, die Links als Stimmabgaben zu sehen, ist klar, dass eine Webseite mit jedem Inlink – also jeder Stimme – an Wichtigkeit gewinnt. Ohne weitere Vor¨ uberlegungen macht die Idee, die Wichtigkeit einer Seite einfach mit der Anzahl seiner Inlinks gleichzusetzen, zun¨achst also Sinn. Mit der eingef¨ uhrten Notation hieße das also xk = |Ik |. Hierbei w¨ urde jedoch die Herkunft der Links ignoriert werden: Ein Inlink von einer unbedeutenden, privaten Homepage k¨onnte die eigene Seite in gleichem Maße aufwerten wie ein Inlink z.B. von www.yahoo.com. Nicht nur die Anzahl, sondern auch die Qualit¨at der Inlinks – impliziert durch die Wichtigkeit des Link-Setzers – muss also u ¨ber die Wichtigkeit einer Seite entscheiden. So k¨onnte man etwa die Wichtigkeit einer Seite Wk rekursiv durch die Summe der Wichtigkeitswerte derjenigen Seiten bestimmen, die mit einem Link auf Wk verweisen: X xk = xi i∈Ik

Universit¨at T¨ ubingen

10

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Dieser Ansatz stellt zwar gegen¨ uber ersterem rein logisch eine Verbesserung dar, weil nun tats¨achlich die Herkunft und damit die vermeintliche Qualit¨at der Inlinks in die Berech¨ nung des Wichtigkeitswertes einginge, bedarf jedoch immer noch weiterer Uberlegungen und einer kleinen Modifikation. Zun¨achst beißt sich hier sozusagen die Katze selbst in den Schwanz, denn der Wichtigkeitswert von Wk soll u ¨ber die ihrerseits unbestimmten Wichtigkeitswerte der auf Wk verweisenden Wi bestimmt werden. Wie sollen die xk also konkret berechnet werden? Dieses Berechnungsproblem soll jedoch erst einmal hintangestellt werden. Viel wichtiger ist die Tatsache, dass die bisherige Formel noch nicht – wie gew¨ unscht – demokratischen Grunds¨atzen entspricht: Durch Setzung eines Links k¨onnte ein Webautor seine komplette Wichtigkeit auf den Wichtigkeitswert der verlinkten Seite u ¨bertragen. Da jeder Webautor beliebig viele Links im World Wide Web setzen kann, k¨onnten besonders fleißige Autoren also unbegrenzten Einfluss in unserer Web-Popularit¨atswahl aus¨ uben. Anders ausgedr¨ uckt: Die W¨ahler h¨atten beliebig viele Stimmen in diesem Wahlverfahren! Eine demokratische Formel m¨ usste diesen unbeschr¨ankten Einfluss also irgendwie limitieren. Lawrence Page und Sergey Brin setzten daher die folgende Interpretation in ihrer Formel um. Der PageRank-Ansatz Die PageRank-Formel gew¨ahrleistet, dass die gesamte Linksetzung eines Webautors als nur eine Stimme interpretiert werden kann, die durch die verschiedenen Links zu gleichen Teilen aufgesplittet wird. X xi (1.1) xk = |Oi | i∈I k

Jeder Summand xi (Wichtigkeitswert von Wi ) wird also geteilt durch die Anzahl der Outlinks von Wi . Da mindestens k ∈ Oi , also f¨ ur jeden Summanden immer |Oi | > 0 gilt, ist dieser Wert wohldefiniert. Der PageRank-Wert basiert damit auf folgenden plausiblen Prinzipien (vgl.[Sch¨o]): • Je mehr Links auf eine Seite verweisen, desto bedeutender wird diese Seite. (Je mehr Inlinks, desto mehr Summanden) • Je weniger ausgehende Links eine Seite enth¨alt, desto bedeutender wird jeder einzelne Link. (Je weniger Outlinks (je kleiner |Oi |), desto kleiner der jeweilige Summand ) • Je bedeutender eine Seite ist, desto bedeutender sind die von ihr ausgehenden Links. (Je gr¨oßer xi , desto gr¨oßer der jeweilige Summand ) • Je bedeutender die Links, die auf eine Seite verweisen, desto bedeutender die Seite. (Je gr¨oßer die einzelnen Summanden, desto gr¨oßer die Summe)

Universit¨at T¨ ubingen

11

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Beispiel: Wir betrachten ein aus vier Seiten bestehendes Web mit der in Abbildung 1.3 graphisch veranschaulichten Link-Struktur: W1

W3

W2

W4

Abbildung 1.3: Beispiel-Webgraph f¨ ur ein Web mit 4 Seiten Nach der Formel (1.1) erhalten wir f¨ ur diesen Webgraphen folgendes lineare Gleichungssystem: x1 x2 x3 x4

= = = =

x1 |O1 | x1 |O1 | x1 |O1 |

x3 |O3 |

+ +

x2 |O2 | x2 |O2 |

+ +

x4 |O4 | x4 |O4 |

= = = =

x3 1 x1 3 x1 3 x1 3

x2 2 x2 2

+ +

+

x4 2

+

x4 2

Dieses Gleichungssystem kann mit Hilfe der Matrix-Schreibweise geschrieben werden als:     |

x1 x2 x3 x4 {z x

 0 0 1 12   1 0 0 0   =  31 1    0 12   3 2 1 1 0 0 } | 3 2 {z }| 



Linkmatrix A

x1 x2 x3 x4 {z x

   

(1.2)

}

Hier stellt sich nun wieder die anfangs zur¨ uckgestellte Frage der Berechnung. Ist die Gleichung l¨osbar? Wenn ja, ist der L¨osungsvektor eindeutig (bis auf Normierung) oder gibt es mehrere linear unabh¨angige L¨osungsvektoren (und welchen sollte man dann als Rankingvektor verwenden)? Ausgestattet mit den Grundkenntnissen aus der Linearen Algebra stellt man schnell fest, dass man es hier mit einem Eigenwertproblem zu tun hat. Erinnerung: Sei A ∈ Mn (C) . Der Skalar λ  C heißt Eigenwert von A :⇐⇒ ∃ 0 6= x ∈ Cn mit

λx = Ax .

Der Vektor x heißt dann Eigenvektor von A zum Eigenwert λ.

Universit¨at T¨ ubingen

12

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Mit anderen Worten: Die Gleichung (1.2) ist genau dann l¨osbar, wenn 1 ein Eigenwert der Linkmatrix A ist, d.h. ein Eigenvektor x zum Eigenwert 1 (= ein Fixvektor) existiert. Der hier gew¨ahlte Webgraph und die dadurch bestimmte Linkmatrix ist unproblematisch: Aufgrund der Stochastizit¨at der Linkmatrix A (siehe Kapitel 2) ist klar, dass 1 ein Eigenwert ist. Der zugeh¨orige normierte Fixvektor x ist in diesem Beispiel eindeutig und l¨asst sich z.B. mit Programmen wie MatLab oder Octave schnell am Computer berechnen (gerundet auf 5 Dezimalen): 

  x1 0, 38710  x2   0, 12903     x3  ≈  0, 29032 x4 0, 19355

   

Die Seite W1 h¨atte im Beispiel-Web aus Abbildung 1.3 also den h¨ochsten PageRank-Wert. Bei einer standardm¨aßigen Eigenvektor-Berechnung einer Linkmatrix von der Gr¨oße, wie sie das WWW liefert, w¨ urden Programme wie Matlab oder Octave an dem zu bew¨altigenden Rechenaufwand scheitern. Google nutzt die sogenannte Potenzen-Methode. Hierbei macht auch die folgende Interpretation der Eintr¨age der Linkmatrix Sinn: Man stelle sich einen Internetuser vor, der nach dem Zufallsprinzip im Web surft. Wann immer er auf eine Seite st¨oßt, folgt er zuf¨allig einem der auf dieser Seite gesetzten Outlinks, um auf die n¨achste Seite zu gelangen, wo er nach dem gleichen Prinzip verf¨ahrt. Gelangt er also im Web von Abbildung 1.3 auf Seite W1 , so wird er mit einer Wahrscheinlichkeit von je 13 als n¨achstes auf eine der Seiten W2 , W3 oder W4 klicken. Die Eintr¨age aij der Linkmatrix A (siehe Gleichung (1.2)) geben also an, mit welcher Wahrscheinlichkeit der zuf¨allige Surfer durch Anklicken eines Links von Seite Wj nach Seite Wi gelangt. Nehmen wir an, der zuf¨allige Surfer landet also nach dem ersten Link-Klick auf Seite W2 . Dort hat er zwei M¨oglichkeiten weiterzusurfen: Mit einem Link auf W3 oder W4 – bei jeweils 50%iger Wahrscheinlichkeit. Startet man also auf Seite W1 , so gelangt man mit uber Seite W2 ) zu Seite W4 . Wahrscheinlichkeit 31 · 12 = 16 mit zwei Link-Schritten“ (¨ ” Will man in zwei Schritten von Seite W1 auf Seite W3 gelangen, so hat man zwei m¨ogliche Wege: Entweder u ¨ber die Seite W2 oder u ¨ber W4 – jeweils mit Wahrscheinlichkeit 13 · 12 . Die Wahrscheinlichkeit, dass der auf Seite W1 startende zuf¨allige Surfer nach zwei Schritten auf Seite W3 landet, ist also 61 + 16 = 13 . Genau diese Transformations-Wahrscheinlichkeiten stehen in den Eintr¨agen der Potenzen der Linkmatrix: 

1 2

3 4

 0 0 A2 =   1 1 3 4 1 0 6

Universit¨at T¨ ubingen

13

0 1 3 1 3 1 3

1 2 1 6 1 6 1 6

   

Mathematisches Institut

Matthias Frick: Mathematik hinter Google (2)

Die Eintr¨age aij geben hier die Wahrscheinlichkeit an, mit welcher ein auf Wj startender zuf¨alliger Surfer nach zwei Schritten auf Seite Wi landet. (k)

Durch Induktion zeigt man leicht, dass auch f¨ ur alle k die Matrixeintr¨age aij von Ak die Wahrscheinlichkeit des zuf¨alligen Surfens von Wj nach Wi in k-Schritten angeben (siehe z.B. [RobFo], Theorem 8.1). In diesem wie schon erw¨ahnt besonders g¨ unstig gew¨ahlten Beispiel kann man feststellen, dass die Potenzen bzw. die Eintr¨age der Matrix-Potenzen nach einigen Iterationen konvergieren (Eintr¨age gerundet auf 5 Dezimalen): 

0.41667  0.11111 · · · , A5 =   0.29167 0.18056  0.38725  0.12887 · · · , A13 =   0.29038 0.19350  0.38710  0.12903 · · · , A21 =   0.29032 0.19355  0.38710  0.12903 · · · , A22 =   0.29032 0.19355

0.43750 0.12500 0.27083 0.16667

0.33333 0.13889 0.30556 0.22222

0.38759 0.12886 0.29024 0.19331

0.38662 0.12924 0.29036 0.19377

0.38710 0.12903 0.29032 0.19355

0.38709 0.12903 0.29032 0.19355

0.38710 0.12903 0.29032 0.19355

0.38710 0.12903 0.29032 0.19355

 0.37500 0.15278  , 0.27778  0.19444  0.38718 0.12915  , 0.29020  0.19348  0.38710 0.12903  , 0.29032  0.19355  0.38710 0.12903   = A23 = · · · = A∞ 0.29032  0.19355

Die Konvergenz gestaltet sich also hier so, dass in allen Spalten der Matrix A∞ genau der oben berechnete Fixvektor von A steht. Dies l¨asst folgende Interpretation der Fixvektor-Eintr¨age xi zu: xi ist die Wahrscheinlichkeit, dass man nach ausreichend langem“ zuf¨alligen Surfen auf der Seite Wi landet – ” egal von welcher Seite man gestartet ist. Problem: Von der unproblematischen L¨osbarkeit in diesem besonders g¨ unstig gew¨ahlten WebgraphBeispiel ist allerdings nicht auf eine grunds¨atzliche L¨osbarkeit im Allgemeinen – d.h. f¨ ur andere Webgraphen mit ung¨ unstigeren Linkmatrizen – zu schließen. Der Wunsch nach Konvergenz f¨ ur die Potenzen der Linkmatrix im Allgemeinen ist vielmehr utopisch. F¨ ur ein Web mit n Seiten (WWW: n = mehrere Milliarden) ergeben sich mit der PageRankFormel (1.1) die folgende Gleichung und zwangsl¨aufig die anschließenden Fragen:

Universit¨at T¨ ubingen

14

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Linkmatrix A

      

x1 x2 x3 .. . xn



z

a11 a12  a21 a22       =  a31  .   ..  an1 · · · |   aij = wobei  aij =

}| {  a13 · · · a1n x1   x2   ...   x3     .. ...   . xn · · · · · · ann {z } 1 f alls j ∈ Ii |Oj | 0 sonst.

      

(1.3)

Fragen: 1. Ist dieses Eigenwertproblem f¨ ur die Linkmatrix A des riesengroßen World Wide Web l¨osbar? Wenn ja, ist der Fixvektor x bis auf Normierung eindeutig (d.h. es gibt keinen anderen linear unabh¨angigen Fixvektor)? 2. Konvergiert die Potenzen-Methode f¨ ur die Linkmatrix, so dass der Fixvektor im Sinne der Wahrscheinlichkeits-Transformationen auch tats¨achlich sinnvolle Rankingwerte enth¨alt? Ausblick: In Kapitel 2 geht es nun darum, welche mathematischen Eigenschaften die Linkmatrix A und damit der zugh¨orige Webgraph haben muss, damit die an Gleichung (1.3) anschließenden Fragen mit ja beantwortet werden k¨onnen. In Kapitel 3 wird sich dann zeigen, dass das WWW den Anspr¨ uchen nicht gen¨ ugt, und es wird dargestellt, wie Larry Page und Sergey Brin die Linkmatrix A sozusagen nach dem Was-nicht-passt-wird-passend-gemacht-Prinzip modifizieren, um letztendlich den PageRank-Fixvektor berechnen zu k¨onnen. Dar¨ uber hinaus werden der Einfluss der entscheidenden Parameter und m¨ogliche Ver¨anderungen untersucht. Kapitel 4 stellt eine alternative und weniger aufwendige mathematische Argumentation f¨ ur das PageRank-Verfahren vor, um dann abschließend den Vorteil der in Kapitel 2 verwendeten spektraltheoretischen Argumentation herauszustellen und den Aufwand zu rechtfertigen.

Universit¨at T¨ ubingen

15

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

2

Endlich-dimensionale Spektraltheorie

Wie schon am Ende von Kapitel 1 erw¨ahnt, wird sich zeigen, dass die Linkmatrix A aus Gleichung (1.3), auf der das PageRank-Verfahren aufbaut, gewisse Anforderungen nicht erf¨ ullt. Diese gew¨ unschten aber nicht gegebenen (siehe Kapitel 3) mathematischen Eigenschaften werden zum H¨ohepunkt dieses Kapitels mit zwei Theoremen exakt formuliert.

2.1

Positive Matrizen

In diesem Abschnitt sollen Bedingungen gefunden werden, die hinreichend sind, um die erste der beiden an Gleichung (1.3) anschließenden Fragen mit ja zu beantworten. Notation 2.1.1: Sei x = (x1 , . . . , xn )T ∈ Cn (a) Wir schreiben x ≥ 0, falls xi ∈ R und ≥ 0 ∀i, und nennen x dann positiv. (b) Wir schreiben x  0, falls xi ∈ R und > 0 ∀i, und nennen x dann strikt positiv. (c) Mit Betrag von x ist der Vektor |x| := (|x1 |, . . . , |xn |) gemeint. Notation 2.1.2: Sei A = (aij )i,j=1,...,n ∈ Mn (C) (a) Wir schreiben A ≥ 0, falls aij ∈ R und ≥ 0 ∀i, j, und nennen A dann positiv. (b) Wir schreiben A  0, falls aij ∈ R und > 0 ∀i, j, und nennen A dann strikt positiv. (c) Mit Betrag von A ist die Matrix |A| := (|aij |)i,j=1,...,n gemeint. Definition 2.1.3: (a) Sei x = (x1 , . . . , xn ) ∈ Cn , dann heißt kxk1 :=

n X

die 1-Norm auf Cn .

|xi |

i=1

(b) Sei A = (aij )i,j=1,...,n ∈ Mn (C), dann heißt kAk1 := maxkxk1 =1 kAxk1 = max1≤j≤n

n X

|aij | = maximale Spaltensumme von A

i=1

die Matrixnorm auf Mn (C). Aufgrund der Norm¨aquivalenz in endlich dimensionalen R¨aumen reicht es, sich hier auf diese Normen zu beschr¨anken, die sich f¨ ur die PageRank-Anwendung als passend erweisen. Der Nachweis der drei Normeigenschaften ist trivial.

Universit¨at T¨ ubingen

16

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Definition 2.1.4: Sei λ ∈ C Eigenwert von A ∈ Mn (C), so ist Eλ (A) := {x| x ∈ Cn mit Ax = λx} der Eigenraum von A zum Eigenwert λ, und dim Eλ (A) ist die geometrische Vielfachheit von λ. Wenn 1 ein Eigenwert von A ist, so heißt E1 (A) = F ix(A) der Fixraum von A. Anmerkung: Wenn bisher die Rede war von der Suche nach einem eindeutigen L¨osungsvektor der Gleichung (1.3), der sinnvolle Rankingwerte enthalten soll, dann ist also ein positiver (f¨ ur die Rankingwerte xi soll xi ≥ 0 ∀ i gelten), auf 1 normierter Fixvektor gesucht, wobei dim E1 (A) = dim F ix(A) = 1 gilt (eindeutig). Definition 2.1.5: Sei A ∈ Mn (C). Dann ist (a) die Menge aller Eigenwerte σ(A) := {λ ∈ C ; λ Eigenwert von A} = {λ ∈ C ; ∃ 0 6= x ∈ Cn mit Ax = λx} das Spektrum von A, (b) der Betrag des betragsm¨aßig gr¨oßten Eigenwerts r(A) := sup{|λ| : λ ∈ σ(A)} der Spektralradius von A. Der folgende Satz ist von zentraler Bedeutung f¨ ur die weitere Argumentation. Satz 2.1.6 (Perron)2 : Sei A eine positive Matrix, dann ist r(A) ein Eigenwert von A mit zugeh¨origem positiven Eigenvektor. Beweis: Siehe z.B. [MacC], Perron’s Theorem, oder [BNS], Theorem 1.6.4. Korollar 2.1.7: Sei A ∈ Mn (C) und λ ∈ σ(A), dann gilt |λ| ≤ kAk Beweis: Nach Voraussetzung ist λ Eigenwert von A, d.h. ∃ 0 6= x ∈ Cn mit Ax = λx, also auch kAxk = kλxk. Mit kAxk ≤ kAk kxk und kλxk = |λ| kxk (Normeigenschaft) folgt kAxk = kλxk = |λ| kxk ≤ kAk kxk. Definition 2.1.8: Eine Matrix A ∈ Mn (C) nennt man zeilen- bzw. spaltensubstochastisch, wenn die Matrix positiv ist und die Summe der Eintr¨age in jeder Zeile bzw. Spalte jeweils ≤ 1 ist. Man nennt solch eine positive Matrix A zeilen- bzw. spaltenstochastisch, wenn die Zeilen- bzw. Spaltensumme sogar =1 ist f¨ ur alle Zeilen bzw. Spalten. Satz 2.1.9: Sei A ∈ Mn (C) spaltenstochastisch, dann gilt: (i) 1 ist Eigenwert von A, d.h. ∃ 0 6= x ∈ Cn mit λx = Ax f¨ ur λ = 1. (ii) Es gibt keine betragsm¨aßig gr¨oßeren Eigenwerte als 1, d.h. Spektralradius = r(A) := sup{|λ| : λ Eigenwert} = 1. 2

Oskar Perron (1880-1975)

Universit¨at T¨ ubingen

17

Mathematisches Institut

Matthias Frick: Mathematik hinter Google Beweis: (i) Sei 1l = (1, . . . , 1) ∈ Cn . Es gilt A1l = 1l f¨ ur A zeilenstochastisch, also 1 EigenT wert. Wegen σ(A) = σ(A ) folgt die Behauptung. (2.1.3)(b)

(2.1.7)

(2.1.5)(b)

(ii) A spaltenstochastisch =⇒ kAk1 = 1 =⇒ |λ| ≤ 1 ∀λ ∈ σ(A) =⇒ r(A) := sup{|λ| : λ ∈ σ(A)} = 1. Definition 2.1.10: falls

Sei A ∈ Mn (C). Ein Unterraum Y ⊂ Cn heiße invariant unter A, Ay ∈ Y ∀ y ∈ Y.

Definition 2.1.11: Eine Matrix A ∈ Mn (C) heiße reduzibel, falls ein Unterraum JM := {(ξ1 , . . . , ξn ) ; ξi = 0 f¨ ur i ∈ M } ⊂ Cn f¨ ur ein ∅ = 6 M ( {1, . . . , n} existiert, welcher invariant unter A ist. Falls A nicht reduzibel ist, so heiße A irreduzibel. Oder: Die Matrix A ∈ Mn (C) ist genau dann reduzibel, wenn es nach Umordnung der Basisvektoren von Cn ein 1 ≤ k < n gibt, so dass JMk := {(ξ1 , . . . , ξn ) ; ξ1 = . . . = ξk = 0} invariant unter A ist. Lemma 2.1.12: Eine Matrix A ∈ Mn (C) mit Matrixeintr¨agen aij ist genau dann irreduzibel, wenn zu jedem Indexpaar i,j mit i 6= j eine Kette von Nicht-Nulleintr¨agen ai,k1 , ak1 ,k2 , ak2 ,k3 , ..., akt−1 ,kt , akt ,j existiert. Beweis: Nach [Minc], Theorem 2.3, ist die Definition 2.1.11 einer irreduziblen Matrix A ¨aquivalent mit der Aussage (k)

(k)

∀ i, j ∃ k ∈ Z, so dass aij > 0, wobei aij die Eintr¨age von Ak sind. (k)

Interpretiert man die Eintr¨age aij wie in Abschnitt 1.4 als die Wahrscheinlichkeit, mit der ein zuf¨alliger Surfer in k Schritten von Seite Wj zu Seite Wi gelangt, so bedeutet das, dass der zuf¨allige Surfer, der auf einer beliebigen Webseite startet, irgendwann garantiert (d.h. mit Wahrscheinlichkeit > 0) auch zu jeder beliebigen anderen Webseite kommen kann. Es muss also f¨ ur je zwei beliebige Webseiten einen Verbindungsweg u ¨ber die Links geben. Mit der Erinnerung an die Tatsache, dass ein Linkmatrix-Eintrag aij genau dann 6= 0 ist, wenn ein Link von Seite Wj nach Wi existiert, wird schnell klar, dass die Existenz der Verbindungswege gleichbedeutend ist mit der Existenz der geforderten Ketten von Nicht-Nulleintr¨agen (vgl. auch [Schae], Kapitel III, 8). Diese Charakterisierung von Irreduzibilit¨at ist sehr n¨ utzlich, weil man beliebigen Webgraphen nun sehr schnell ansehen bzw. anmerken kann, ob ihre zugeh¨origen Linkmatrizen irreduzibel sind oder nicht: Eine Linkmatrix ist genau dann irreduzibel, wenn man von jeder beliebigen Webseite Wk auf jede andere Webseite Wl allein durch Klicken einer Kette von Links – also sozusagen, ohne die Hand von der Maus zu nehmen – gelangen kann.

Universit¨at T¨ ubingen

18

Mathematisches Institut

Matthias Frick: Mathematik hinter Google Theorem 2.1.13 (Perron-Frobenius3 ): Sei A ∈ Mn (C) positiv und irreduzibel mit r(A) = 1. Dann ist 1 ein Eigenwert von A und der zugeh¨orige Eigenraum ist eindimensional und wird von einem strikt positiven Vektor aufgespannt. Beweis: Nach Satz 2.1.6 wissen wir, dass 1 ∈ σ(A) ist und ein positiver Fixvektor z existiert. Also gilt Az = z mit 0 ≤ z = (ξ1 , . . . , ξn ). Angenommen, z sei nun nicht strikt positiv. Dann k¨onnen wir nach Umordnung der Koordinaten annehmen, dass ξi = 0 f¨ ur i = 1, . . . , k und ξi > 0 f¨ ur i = k + 1, . . . , n. Also w¨ urde f¨ ur jedes y ∈ JMk (siehe 2.1.11) gelten, dass |y| ≤ c · z f¨ ur geeignete c > 0. Damit w¨are |T y| ≤ T |y| ≤ cT z = c · z, was zeigt, dass T y ∈ JMk , d.h. JMk ist T-invariant. Da T als irreduzibel vorausgesetzt wurde, ist dies ein Widerspruch. Also muss z strikt positiv sein. Es ist nun noch zu zeigen, dass der Fixraum von A ein-dimensional ist: Angenommen, es existiere noch ein anderer linear unabh¨angiger Fixvektor 0 6= y ∈ Cn mit Ay = y. Da A eine positive, also eine reelle Matrix ist, folgt, dass Realteil und Imagin¨arteil von y Fixvektoren sind. Wir k¨onnen also von 0 6= y ∈ Rn ausgehen. Da z strikt positiv ist, muss ein c ∈ R existieren, so dass x := z − cy positiv, aber nicht strikt positiv ist. Wie oben ist der den Null-Koordinaten von x zugeh¨orige Unterraum JM invariant unter A und muss daher 0 sein. Daraus folgt z = cy, was ein Widerspruch zur angenommenen linearen Unabh¨angigkeit von {z, y} ist. Hinreichend f¨ ur die Existenz eines eindeutigen (normierten) Fixvektors einer Matrix A sind also folgende Eigenschaften von A: • positiv, • spaltenstochastisch, • irreduzibel. Im n¨achsten Abschnitt wird sich zeigen, dass diese Liste noch um eine weitere Eigenschaft erg¨anzt werden muss, damit auch die Frage nach der Konvergenz der Potenzen-Methode (Frage 2 aus Kapitel 1) mit ja beantwortet werden kann und somit das PageRankVerfahren tats¨achlich funktioniert.

3

Ferdinand Georg Frobenius (1849-1917)

Universit¨at T¨ ubingen

19

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

2.2

Potenzen von Matrizen

Die Existenz eines eindeutigen, strikt positiven Fixvektors impliziert leider nicht die Anwendbarkeit der in Kapitel 1 vorgestellten Potenz-Methode zu seiner Berechnung. Man betrachte beispielsweise folgenden Matrizen, 2.1.13 erf¨ ullen:  0 1 0 ···  0 1 0  . . .  . .. ..  . Bn =  ..  0 ··· .   0 0 ··· 1 0 0 ···

die alle Anforderungen des Theorems 0



 ..  . .    1 0   0 1 

..

0

n×n

Eine solche Permutationsmatrix“ Bn ∈ Mn (C) ist positiv, spalten-(und zeilen-)stochastisch ” und irreduzibel. Der Spektralradius 1 ist Eigenwert und sein Eigenraum ist ein-dimensional und wird von einem strikt positiven Vektor (n¨amlich 1l = (1, . . . , 1)) aufgespannt. W¨are Bn eine von einem Web induzierte Linkmatrix, so w¨ urde sie dennoch den PageRank Anspr¨ uchen nicht gen¨ ugen: Die Potenzen-Methode w¨ urde hier scheitern. Betrachtet man die Potenzen von Bn f¨ ur n > 1, so stellt man fest, dass sich diese periodisch verhalten mit (Bn )kn+1 = Bn ∀ k ∈ N, also nicht konvergieren. Die Eigenschaften positiv, stochastisch und irreduzibel allein reichen also noch nicht aus, um die PageRank-Anspr¨ uche zu erf¨ ullen. Um den PageRank-Anforderungskatalog vollst¨andig zu formulieren zu k¨onnen, ist es also n¨otig, sich n¨aher mit Konvergenzkriterien f¨ ur Potenzen positiver Matrizen auseinanderzusetzen. Dies soll in diesem Abschnitt geschehen. Aus der Linearen Algebra wissen wir, dass ¨ahnliche“ Matrizen die gleichen elementaren ” Eigenschaften – wie beispielsweise das Konvergenzverhalten ihrer Potenzen – haben, wes¨ halb man Matrizen gerne durch Ahnlichkeitstransformationen auf eine einfachere Form ¨ bringt. Eine solche Ahnlichkeitstransformation liefert die Jordan-Normalform einer Matrix, die im Folgenden f¨ ur die Untersuchung von Konvergenzkriterien von großem Nutzen sein wird. Erinnerung: Es gibt zu jeder Matrix A ∈ Mn (C) eine invertierbare Matrix S, so dass S −1 AS JordanNormalform hat. Diese Jordan-Matrix (S −1 AS) ist dann eine Matrix der gleichen Abbildung, die auch A induziert, nur bez¨ uglich einer modifizierten Basis (vgl. [Fisch], Kapitel 4, Abschnitt 6).

Universit¨at T¨ ubingen

20

Mathematisches Institut

Matthias Frick: Mathematik hinter Google Mit anderen Worten: Es gibt eine Basis {y1 , . . . , yn } von Cn , bez¨ uglich derer die Matrix n −1 der von A definierten Abbildung auf C Jordan-Normalform S AS =: J = 

  J1 (λ1 )                                                   

?

J2 (λ1 )

... Jd1 (λ1 ) ..

.

J1 (λm ) ? ...

                                                  Jdm (λm )  

mit quadratischen Jordank¨astchen Jk (λi ) auf der Diagonalen (sonst (?) nur Nullen) hat, wobei σ(A) = {λ1 , . . . , λm } das Spektrum von A und di = Anzahl der Jordank¨astchen zum Eigenwert λi = dim Eλi ist. Jedes Jordank¨astchen besitzt die Form   λi 0  1 λi    Jk (λi ) =   . . . .   . . 0 1 λi P Mit l(Jk (λi )) sei die L¨ange des Jordank¨astchens Jk (λi ) bezeichnet, und sei li = j l(Jk (λi )) die Gesamtl¨ange aller zum Eigenwert λi geh¨orenden Jordank¨astchen zusammen = die L¨ange des gesamten zu λi geh¨orenden quadratischen Jordanblocks“. ”

Universit¨at T¨ ubingen

21

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Mit dieser Notation gilt Folgendes f¨ ur die Hauptdiagonale der Matrix J: Von der ersten Spalte bis zur Spalte j1 = l1 steht der Eigenwert λ1 auf der Hauptdiagonalen. Von Spalte j1 + 1 bis Spalte j2 = l1 + l2 ist λ2 eingetragen. Der Eigenwert λi steht von Spalte ji−1 + 1 bis Spalte ji = l1 + l2 + . . . + li in der Hauptdiagonalen. Ferner setze aus Notationsgr¨ unden j0 = 0. Im Folgenden soll dieses Vorwissen u ¨ber die Jordan-Normalform weiter vertieft werden. Definition 2.2.1: Ein lineare Abbildung P heißt Projektion, wenn sie idempotent ist, d.h. wenn P 2 = P gilt. Satz 2.2.2: Wenn P ∈ Mn (C) eine Projektion ist, dann gilt Cn = im P ⊕ ker P . Beweis: Sei x ∈ Cn und setze u := P x und w := x − u. Weil P linear und idempotent ist, gilt dann P w = P x−P u = P x−P 2 x = 0. Folglich ist w ∈ ker P . Es ist nun auch klar, dass P u = u f¨ ur alle u ∈ im P gilt. Die Summe ist direkt: x ∈ im P ∩ker P liefert x = P x = 0. Satz 2.2.3: F¨ ur jede direkte Zerlegung Cn = U ⊕ W existiert eine eindeutig bestimmte Projektion P mit im P = U und ker P = W . Beweis: F¨ ur x = u + w mit u ∈ U und w ∈ W setze P x := u. Offenbar ist auch P 2 x = u, also P eine Projektion. Die Eindeutigkeit ist klar. Nun kann die folgende wichtige Klasse von Projektionen eingef¨ uhrt werden: Definition 2.2.4: Sei A ∈ Mn (C), σ(A) = {λ1 , . . . , λm } und sei {y1 , . . . , yn } Basis, bez¨ uglich derer die Matrix der von A definierten Abbildung Jordan-Normalform J hat (wie zuvor). Die Projektion auf < y1 , . . . , yj1 > mit Kern < yji +1 , . . . , yn > heißt Spektralprojektion von A zum Eigenwert λ1 und wird mit P1 bezeichnet. Die Matrix von P1 bez¨ uglich der Basis {y1 , . . . , yn } hat die Form Spalte j1

.. 1 .  . . ..  . . ?   1   0   ...  ? 

          0

mit ausschließlichen Null-Eintr¨agen in allen Nebendiagonalen (?). Ebenso bekommt man f¨ ur die Eigenwerte λ2 , . . . , λm die Spektralprojektionen P2 , . . . , P m , S wobei Pi die Projektion auf < yji−1 +1 , . . . , yji > mit Kern < k∈{j / i−1 +1,...,ji } yk > ist. Die Matrix von Pi hat bez¨ uglich der Basis {y1 , . . . , yn } die Form Universit¨at T¨ ubingen

22

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

ji−1 +1

ji

.. .. 0 . .  .. .. ...  . . ?   . . . .  0 . .  ..   1 .  . .  . . ..   1   0   ..  . ? 

         .         0

Lemma 2.2.5: Sei A ∈ Mn (C). F¨ ur die durch die Eigenwerte eindeutig bestimmten Spektralprojektionen P1 , . . . , Pm gilt P1 + P2 + . . . + Pm = id

und

Pi Pj = 0 f¨ ur i 6= j.

Mit der Definition der Spektralprojektionen und der Feststellung aus Lemma 2.2.5 l¨asst sich die Jordan-Normalform von A folgendermaßen beschreiben: ! m m X X −1 S AS =: J = JI = J Pi = JPi . (2.1) i=1

i=1

Die Matrix von JPi sieht dabei bez¨ uglich der Basis {y1 , . . . , yn } folgendermaßen aus:   0   ..   .     0 ?           J 1 (λi )           . ..   JPi =             Jdi (λi )         ?     0     . .   . 0 Durch weitere Umformung der in Gleichung (2.1) erhaltenen Summendarstellung ergibt sich Universit¨at T¨ ubingen

23

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

J=

m X

JPi =

i=1

m X

(λi + (J − λi ))Pi

.

(2.2)

i=1

Doch nun zur¨ uck zum Verhalten der Potenzen einer Matrix. Ziel des Abschnitts war es, Konvergenzkriterien f¨ ur Matrix-Potenzen zu erhalten. Die bis hierher geleistete Vorarbeit mit der Erinnerung an die Jordan-Normalform und ihre Beschreibung mit Hilfe der eingef¨ uhrten Spektralprojektionen dienen nun dazu, das Potenz-Verhalten von A analysieren zu k¨onnen. F¨ ur die Potenzen J k gilt mit (2.2):

Jk

m X

=

!k (λi + (J − λi ))Pi

i=1 Pi Pj =0,i6=j

=

m X

((λi + (J − λi ))Pi )k .

i=1

Nach Anwendung der Binomischen Formel erh¨alt man schließlich ( k   ) m X X k Jk = λk−ν (J − λi )ν Pi . i ν ν=0 i=1

(2.3)

Man betrachte nun die Matrix von (J − λi )Pi bez¨ uglich {y1 , . . . , yn }: ji−1 +1



..

. ...

            (J − λi )Pi =           

...

.. . .. . .. .

0 ji−1 +1

ji

.. . .. . .. . .. . .. .. . . .. ... .. . . .. ... ... . . . . . . . .. . j1 0

?

..

. ...

?

                        

mit j = 0 oder 1 (je nach Anzahl und Gr¨oße der einzelnen Bl¨ocke zum Eigenwert λi ). Es ist leicht festzustellen, dass die Eintr¨age j mit jeder h¨oheren Potenz von (J − λi )Pi eine Nebendiagonale nach unten wandern, bis sie irgendwann komplett aus dem Block zu Universit¨at T¨ ubingen

24

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

λi verschwunden sind und nur noch Nullen in der Matrix-Potenz u ¨brig sind. Mit anderen Worten: (J − λi )Pi ist nilpotent. Wir bezeichnen die Nilpotenzordnung von (J − λi )Pi – d.h. die kleinste nat¨ urliche Zahl ν, f¨ ur die ((J − λi )Pi )ν = (J − λi )ν Pi = 0 gilt – mit νi . Damit ist klar, dass νi = max l(Jk (λi )) = L¨ange des gr¨oßten zu λi geh¨orenden Jordank¨astchens k

ist. Sind beispielsweise alle Jordan-K¨astchen zu λi 1 × 1-Matrizen, also somit max l(Jk (λi )) = νi = 1, k

dann ist schon (J −λi )Pi = 0. In diesem Fall sagt man, dass λi ein einfacher Eigenwert ist. Aus u ¨ber die Nilpotenzordnung von (J − λi )ν Pi folgt, dass die Summe Pk dem Wissen ν alt. Wir ν=0 (J − λi ) Pi aus (2.3) ab dem νi -ten Summanden nur noch Nullen enth¨ m¨ ussen also nur bis zum (νi − 1)-ten Summanden aufsummieren und erhalten damit f¨ ur die Potenzen J k die Darstellung k

J =

m νX i −1   X n i=1 ν=0

ν

λin−ν (J − λi )ν Pi .

(2.4)

Lemma 2.2.6: Die Menge BJ := {(J − λi )ν Pi ; i = 1, . . . , m ; ν = 0, . . . , νi − 1} ist linear unabh¨angig in Mn (C). Beweis: Betrachtet man (J − λi )ν Pi und die jeweils ν-ten Potenzen (siehe vorangegangene Diskussion) f¨ ur i = 1, . . . , m und ν = 0, . . . , νi − 1, so ist klar, dass je zwei verschiedenen Elemente von BJ ihre Eins-Eintr¨age auf verschiedenen Positionen haben (vgl. [Wint], S.10). Nach dem Basiserg¨anzungssatz kann nun eine Basis B von Mn (C) so gew¨ahlt werden, dass sie die linear unabh¨angige Menge BJ enth¨alt. Die Darstellung (2.4) von J k zeigt, dass    k k−ν λ ; i = 1, . . . , m ; ν = 0, . . . , νi − 1 ν i die Menge aller Nicht-Null-Eintr¨age von J k ist (bez¨ uglich B). Da unter Konvergenz von Matrizen die Konvergenz in jedem Eintrag verstanden wird, ist f¨ ur die Existenz des Limes ! m νX i −1   X k k−ν lim J k = lim λi (J − λi )ν Pi k→∞ k→∞ ν i=1 ν=0 Universit¨at T¨ ubingen

25

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

also nur das Verhalten der Folgen   k k−ν zλi ,ν (k) := λ ν i f¨ ur alle λi ∈ σ(A), ν = 0, . . . , νi − 1 entscheidend. Dieses Verhalten ist aber einfach zu verstehen und haupts¨achlich vom Betrag von λi abh¨angig: k→∞

• Falls |λi | < 1, dann zλi ,ν (k) −→ 0 f¨ ur alle ν. k→∞

• Falls |λi | > 1, dann |zλi ,ν (k)| −→ ∞ f¨ ur alle ν. • Falls |λi | = 1 und νi − 1 = 0 (also νi = 1), dann zλi ,ν (k) = λki . k→∞

• Falls |λi | = 1 und νi − 1 > 0 (also νi > 1), dann |zλi ,ν (k)| −→ ∞. Damit gelten folgende Feststellungen f¨ ur die Matrix J (stets |λ?i | = r(J)): (a) Ist der Spektralradius r(J) > 1, so sind die Potenzen von J unbeschr¨ankt (weil mindestens der Eintrag (λ?i )k unbeschr¨ankt). k→∞

ur alle λi ). (b) Ist der Spektralradius r(J) < 1, so gilt J k −→ 0 (weil |λi | < 1 f¨ (c) Ist der Spektralradius r(J) = 1, so gilt Folgendes: • Falls νi > 1 f¨ ur ein λi mit |λi | = 1, so ist J k unbeschr¨ankt. • Falls ∃ λi 6= 1 mit |λi | = 1, so ist J k nicht konvergent. • 0 6= lim J k existiert k→∞  ?  λi = 1, νi? = 1 (d.h. 1 ist einfacher Eigenwert) und ⇐⇒  |λi | < 1 f¨ ur alle λi 6= 1 (d.h. 1 ist dominanter“ Eigenwert) ” Um das Ziel der Untersuchungen nicht aus den Augen zu verlieren, sei daran erinnert, dass hier ohnehin nur der Fall r(J) = 1 interessiert. Gesucht wird nach Konvergenzkriterien f¨ ur Potenzen einer Matrix, von der schon klar ist, dass sie positiv, spaltenstochastisch (folglich ist der Spektralradius =1, siehe Satz 2.1.9) und irreduzibel sein muss (siehe Theorem 2.1.13). Um den PageRank-Anforderungskatalog zu vervollst¨andigen, muss die Liste also nur noch um die Forderung nach Einfachheit und Dominanz des Eigenwerts 1 erg¨anzt werden. Das folgende Theorem wird zeigen, dass die Einfachheit vom Eigenwert 1 ohnehin schon impliziert ist. Die eigentliche Anforderungs-Erweiterung besteht also nur in der Forderung nach Dominanz von 1.

Universit¨at T¨ ubingen

26

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Theorem 2.2.7a: Sei A ∈ Mn (C) positiv und irreduzibel und sei λ1 = 1 dominanter Eigenwert von A. Sei J = S −1 AS ∈ Mn (C) die Jordan-Normalform, die die von A definierte Abbildung bez¨ uglich einer modifizierten Basis hat, und sei P1 die Spektralprojektion zum Eigenwert 1. Dann gilt ! m νX i −1   X k lim J k = lim λk−ν (J − λi )ν Pi = P1 . i k→∞ k→∞ ν i=1 ν=0 Beweis: Zun¨achst muss noch gezeigt werden, dass 1 ein einfacher Eigenwert ist. Nach Theorem 2.1.13 existiert ein strikt positiver Vektor z = (ξ1 , . . . , ξn ) mit Az = z. Definiere D := diag(ξ1 , . . . , ξn ) und T := D−1 AD. Dann gilt 0 ≤ T und T e = e = (1, . . . , 1), folglich ist kT k = 1. Daraus folgt, dass kT k k ≤ 1 und kAk k ≤ kDT k D−1 k ≤ kDk · kD−1 k f¨ ur alle k ∈ N. Die Potenzen Ak und damit auch J k = (S −1 AS)k = S −1 Ak S sind also f¨ ur k → ∞ beschr¨ankt. Die Formel (2.4) liefert nach Multiplikation mit der zum Eigenwert 1 geh¨orenden Projektion P1 die Gleichung k

J P1 =

νX 1 −1  ν=0

 k (J − 1)ν P1 ν

.

Diese Summe ist allerdings nur dann beschr¨ankt f¨ ur k → ∞, wenn ν1 = 1 ist. Wegen der vorausgesetzten Dominanz von λ1 = 1 gilt dann   k k−ν zλi ,ν (k) := λ → 0 ∀ λi 6= λ1 ν i und damit lim J k = lim

k→∞

k→∞

νX i −1  ν=0

!  k k−ν λ (J − λ1 )ν P1 . ν 1

Mit ν1 = 1 folgt    k k−0 0 lim J = lim λ (J − λ1 ) P1 = P1 . k→∞ k→∞ 0 1 k

Universit¨at T¨ ubingen

27

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Theorem 2.2.7b: Voraussetzungen wie in Theorem 2.2.7a. Sei A zus¨atzlich noch spaltenstochastisch. Dann gilt lim Ak = B := SP1 S −1 ,

k→∞

wobei im B = F ix(A) ist und alle Spaltenvektoren von B identisch sind mit dem eindeutigen, strikt positiven Fixvektor von A, der Koordinatensumme 1 hat. Beweis: Es gilt lim kAk − SP1 S −1 k = lim kS(S −1 Ak S − P1 )S −1 k ≤ kSk k S −1 Ak S − P1 k kS −1 k. {z } | k→∞

k→∞

=J k −P1

|

k→∞

{z

}

−→ 0 (mit a)

⇒ lim Ak = SP1 S −1 = B k→∞

.

−1 −1 Auch B ist eine Projektion, denn SP1 |S −1 {z· S} P1 S = SP1 S . I

n

F¨ ur z ∈ im B, etwa z = By mit y ∈ C , gilt folglich Bz = B 2 y = By = z. Damit ist Az = ABz = A

n

 o   lim Ak z = lim Ak+1 z = Bz = z,

k→∞

k→∞

d.h. z ∈ F ix(A). Seien ek ∈ Cn (k = 1, 2, . . . , n) die kanonischen Basisvektoren von Cn (k-te Koordinate =1, sonst nur Nullen). Dann gilt f¨ ur die Vektoren Bek (= Spaltenvektoren von B) Bek ∈ F ix(A) ∀ k = 1, 2, . . . , n mit Bek ≥ 0 (B ≥ 0, da B = lim Ak & Ak ≥ 0) und sogar Bek  0 (Theorem 2.1.13). k→∞

Da der Fixraum von A nach Theorem 2.1.13 eindimensional ist, m¨ ussen alle Spaltenvektoren von B linear abh¨angig sein. Es bleibt also noch zu zeigen, dass sie sogar alle identisch sind. Hierbei geht nun die Stochastizit¨at von A ein:

hBek , 1li = ek , B T 1l * + =

ek ,

lim (AT )k · 1l | {z } T T T (A . . . A A )1l | {z } | {z=1l } | {z =1l } k→∞

=1l

= hek , 1li = 1 ∀ k = 1, 2, . . . , n. Universit¨at T¨ ubingen

28

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Definition 2.2.8: Sei A ∈ Mn (C) positiv und irreduzibel und sei der Spektralradius r(A) ein dominanter Eigenwert, dann nennt man A primitiv. Der folgende Satz, der auch auf Oskar Perron zur¨ uckgeht, stellt eine elegante Anwendung von Satz 2.1.6 dar und wird sp¨ater eine wichtige Rolle spielen. Satz 2.2.9 (vgl. z.B.[LaMey], S.174, oder [Minc], Kapitel 3): Falls A ∈ Mn (C) strikt positiv ist, dann ist A primitiv. Beweis: Da die Matrix A strikt positiv ist, ist sie selbstverst¨andlich auch irreduzibel (da alle Eintr¨age > 0 sind, existiert nat¨ urlich auch f¨ ur jedes Indexpaar eine Kette von Nicht-Nulleintr¨agen im Sinne von Lemma 2.1.12). Es ist also nur noch zu zeigen, dass der Spektralradius r(A) ein dominanter Eigenwert ist. Wegen A = (aij )n×n  0 gilt insbesondere inf aii > 0 und nach Satz 2.1.6 r(A) > 0. i Es gilt σ(A − ρI) = σ(A) − ρ = {λ − ρ | λ ∈ σ(A)} ∀ ρ. Anschaulich heißt das, dass alle Eigenwerte von A − ρI innerhalb des um ρ nach links unen Kreises von verschobenen Spektralkreises von A liegen m¨ ussen, also innerhalb des gr¨ Abbildung 2.1. Sei ρ = inf aii . Dann gilt A − ρI ≥ 0. i

Mit Satz 2.1.6 folgt, dass r(A − ρI) ein Eigenwert von A − ρI ist. Also gilt r(A − ρI) = r(A) − ρ, was wiederum anschaulich bedeutet, dass die Eigenwerte von A − ρI sogar ausschließlich innerhalb des blauen Kreises von Abbildung 2.1 liegen m¨ ussen. Damit ist klar, dass σ(A) = σ((A − ρI) + ρ) gilt, also die Eigenwerte von A tats¨achlich innerhalb des roten Kreises von Abbildung 2.1 liegen. Folglich ist r(A) der einzige Eigenwert auf dem Spektralkreis von A, also dominant.

•0



r(A)-ρ



r(A)

Abbildung 2.1: Zur Lokalisierung von σ(A) und σ(A − ρI)

Universit¨at T¨ ubingen

29

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

3

Die Google-Matrix

Kapitel 1 endete mit der Frage, welche Eigenschaften die Linkmatrix haben muss, damit der PageRank-Ansatz funktioniert, d.h. die Gleichung (1.3) eindeutig l¨osbar ist und die Potenzen der Linkmatrix konvergieren. Die Ergebnisse von Kapitel 2 haben folgende Wunschliste hinreichender Bedingungen geliefert: Die Linkmatrix A muss • positiv, • spaltenstochastisch und • irreduzibel sein und • der Spektralradius 1 muss dominant sein. Sicher erf¨ ullt ist f¨ ur die Linkmatrix allerdings nur die Positivit¨at (alle Eintr¨age entweder 0 1 oder |Oj | ). Der n¨achste Abschnitt wird zeigen, dass die restlichen Anspr¨ uche utopisch sind. Anschließend wird es darum gehen, wie die den Anspr¨ uchen nicht gen¨ ugende Linkmatrix des WWW durch clevere Modifizierungen in eine doch PageRank-f¨ahige Matrix – die Google-Matrix G – umgewandelt wird.

3.1 3.1.1

Problematische Webstrukturen Dangling Nodes (Webseiten ohne Outlinks) W1

W3

W2

W4

Abbildung 3.1: Beispiel-Webgraph f¨ ur ein Web mit Dangling Node Der Webgraph in Abbildung 3.1 zeigt eine Web-Konstellation, die im WWW unz¨ahlige Male vorkommt: Viele Webseiten besitzen keine Outlinks. Man denke hier nur beispielsweise an die zahlreichen neu ins Netz gestellten Seiten, von denen noch keine Links gesetzt wurden, an PDF-Dokumente, auf die man zwar durch eine Verlinkung gelangt, von denen aber kein Link mehr wegf¨ uhrt, oder an Web-Eigenbr¨otler, die einfach nicht an einer Universit¨at T¨ ubingen

30

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Verlinkung mit anderen Seiten interessiert sind. Um im Bild von Kapitel 1 zu bleiben: In der demokratischen WWW-Wahl gibt es also zahlreiche Webautoren, die nicht von ihrem Wahlrecht Gebrauch machen. Genauso wie eine Gesellschaft es nicht gutheißt, wenn es viele Nichtw¨ahler gibt, so wenig erfreulich sind die Dangling Nodes f¨ ur die PageRank-Anspr¨ uche. Denn die zu den Dangling Nodes geh¨orenden Spalten der Linkmatrix enthalten ausschließlich Null-Eintr¨age. Die Linkmatrix des Webgraphen aus Abbildung 3.1 w¨are beispielsweise   0 31 0 12  1 0 0 0  3  A[3.1] =   1 1 0 1 . 3 3 2 1 1 0 0 3 3 Mit anderen Worten: Die Linkmatrizen von Webs mit Dangling Nodes sind nicht spaltenstochastisch, sondern nur spaltensubstochastisch. Also ist die Linkmatrix des WWW definitiv nicht spaltenstochastisch.

3.1.2

Nicht stark zusammenh¨ angender Webgraph W1

W3 W5

W2

W4

Abbildung 3.2: Beispiel-Webgraph f¨ ur ein nicht stark zusammenh¨angendes Web Der Begriff des starken Zusammenhangs stammt aus der Graphentheorie und ist gleichbedeutend mit Irreduzibilit¨at der Inzidenzmatrix. Auch ohne graphentheoretisches Wissen wird jedoch schnell klar, dass der Webgraph aus Abbildung 3.2 eine nicht irreduzible Linkmatrix mit dementsprechend nicht eindimensionalem Eigenraum zur 1 erzeugt:  1       0 0 1 0 0 0   2     1       1 0 0 0 0   0   2       1  1      A[3.2] =  0 0 0 1 2  ; E1 (A[3.2] ) =  0  s,  2  t ; s, t ∈ R      0   1   0 0 1 0 1    2 2     0 0 0 0 0 0 0 Es ist offensichtlich, dass hier nicht zu jedem Indexpaar i,j mit i 6= j eine Kette von NichtNulleintr¨agen ai,k1 , ak1 ,k2 , ak2 ,k3 , ..., akt−1 ,kt , akt ,j existiert. Mit anderen Worten: Man kann nicht von jeder Webseite nur durch Klicken von Links auf jede andere Webseite gelangen. Das wiederum heißt nach Lemma 2.1.12, dass die Matrix nicht irreduzibel ist. Auch diese Konstellation ist im WWW nat¨ urlich nicht die Ausnahme, sondern vielmehr die Regel. Es gibt Millionen von Unterwebs, die nicht miteinander verbunden sind. Die Linkmatrix des WWW ist also ohne Zweifel nicht irreduzibel. Universit¨at T¨ ubingen

31

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

3.2

Modifizierung der Linkmatrix A

Die vom WWW durch die PageRank-Formel (1.1) erzeugte Linkmatrix A ist also zwar positiv, aber weder stochastisch noch irreduzibel. Somit sind die Voraussetzungen aus Theorem 2.1.13 f¨ ur die Existenz eines strikt positiven, eindeutigen Fixvektors nicht gegeben. Die Linkmatrix A gen¨ ugt also nicht den Anspr¨ uchen von Larry Page und Sergey Brin und dennoch funktioniert PageRank – wie kann das sein? Eigentlich ganz einfach: Was nicht passt, wird passend gemacht! Die Linkmatrix wird einfach – ohne dabei den Charakter der urspr¨ unglichen Linkmatrix als Reflektion der demokratischen Web-Abstimmung vollst¨andig zu zerst¨oren – so modifiziert, dass das PageRank-Verfahren problemlos funktioniert. Dies soll in den folgenden Abschnitten dargestellt werden. Die Modifikationen werden anhand des Beispiel-Webgraphen in Abbildung 3.3, der die beiden schon vorgestellten problematischen Webstrukturen enth¨alt, anschaulich gemacht: W1

W3

W5 W7

W2

W4

W6

Abbildung 3.3: Nicht stark zusammenh¨angender Webgraph mit Dangling Node

3.2.1

Behebung des Dangling Node-Problems

Im ersten Schritt werden alle diejenigen Spalten der n × n-Linkmatrix, die wegen der Dangling Nodes nur Nullen enthalten, durch einen Spaltenvektor ersetzt, der n1 in jeder Koordinate stehen hat. F¨ ur die Linkmatrix A[3.3] des Webgraphen aus Abbildung 3.3 sieht dies folgendermaßen aus:       0 0 17 0 0 0 0 0 31 17 12 0 0 0 0 13 0 12 0 0 0  1 0 0 0 0 0 0   0 0 1 0 0 0 0   1 0 1 0 0 0 0  7 7  13 1     3  1    0 0 1 0 0 0 0   1 1 1 1 0 0 0  0 0 0 0 2 7  13 13     31 31 71 2  1        3 3 0 0 0 0 01  +  0 0 71 0 0 0 0  =  3 3 71 0 0 0 01    0 0    0 0 0 0 0 1 0 0 0 0  2  7    0 0 71 0 0 1 21   1 1   0 0  0 0 0 0 1 0 0 0 0 0   0 0 7 0 1 0 2  2 7 1 0 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 17 0 0 0 0 | {z } | {z } | {z } =: Linkmatrix A[3.3]

=: Dangling N ode−M atrix D[3.3]

=: Stochastische M atrix S[3.3]

Allgemein gilt f¨ ur die Matrixeintr¨age sij der vom Webgraphen eindeutig bestimmten stochastischen Matrix S ∈ Mn (C): sij = |O1j | f alls j ∈ Ii , sij = 0 f alls j ∈ / Ii und Oj 6= ∅ , sij = n1 f alls Oj = ∅ . Universit¨at T¨ ubingen

32

(3.1)

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Die Spaltenstochastizit¨at wird also wieder hergestellt. Diese Modifizierung macht allerdings auch noch aus einem anderen Gesichtspunkt Sinn: Man stelle sich erneut den zuf¨alligen Surfer aus Kapitel 1 vor. Die Eintr¨age sij geben die Wahrscheinlichkeit an, mit der ein zuf¨alliger Surfer, der auf der Webseite Wj gelandet ist, als n¨achstes zur Webseite Wi gelangt. Landet der zuf¨allige Surfer auf einer Seite, die keine Outlinks hat, so kommt er allein durch Nutzung der Maus nicht mehr von dieser Seite weg. Er muss also eine neue URL in die Adresszeile des Browsers eintippen. Dabei bieten sich nun eben genau so viele M¨oglichkeiten, wie es Seiten im Web gibt, also n M¨oglichkeiten. Nach der Modifizierung ist die n¨achste Station auf der zuf¨alligen Webreise also mit jeweils gleicher Wahrscheinlichkeit ( n1 ) jede beliebige Seite im Web.

3.2.2

Behebung des Problems des Nicht-Zusammenhangs

Im n¨achsten Schritt wird das Problem der nicht gegebenen Irreduzibilit¨at behoben. Dies wird dadurch erreicht, dass die positive, spaltenstochastische Matrix S kurzerhand in eine strikt positive und immer noch spaltenstochastische Matrix G umgewandelt wird. Damit sind zwei Fliegen mit einer Klappe geschlagen: Weil die Matrix G strikt positiv ist, ist sie nach Satz 2.2.9 nicht nur irreduzibel, sondern sogar primitiv. Die Google-Matrix G erf¨ ullt also nun alle aus Kapitel 2 erhaltenen PageRank-Voraussetzungen. In der Praxis sieht dies dann so aus, dass die stochastische Matrix S mit einer stochastischen, strikt positiven Matrix T , bei der etwa n1 in jedem Eintrag steht, konvex kombiniert wird (Konvex-Kombinationen zweier stochastischer Matrizen bleiben stochastisch). F¨ ur den Beispiel-Webgraph aus Abbildung 3.3 sieht das dann folgendermaßen aus: 

0

1 3

 1 0  31 1   31 31 α·  3 3  0 0   0 0 0 0 |

1 7 1 7 1 7 1 7 1 7 1 7 1 7

1 2

0 1 2

0 0 0 0 {z

0 0 0 0 0 1 0

0 0 0 0 1 0 0

0 0 0 0 1 2 1 2





     + (1 − α) ·    

        

0

=: Stochastische M atrix S[3.3]

}

|

1 7 1 7 1 7 1 7 1 7 1 7 1 7

1 7 1 7 1 7 1 7 1 7 1 7 1 7

1 7 1 7 1 7 1 7 1 7 1 7 1 7

1 7 1 7 1 7 1 7 1 7 1 7 1 7

{z

1 7 1 7 1 7 1 7 1 7 1 7 1 7

1 7 1 7 1 7 1 7 1 7 1 7 1 7

1 7 1 7 1 7 1 7 1 7 1 7 1 7

         

=: G[3.3]

}

=: Zuf alls−T ransf ormationsmatrix T[3.3]

mit 0 ≤ α < 1. F¨ ur die Interpretation dieser Konvex-Kombination dient wiederum die Vorstellung des zuf¨alligen Surfers. Es wird hier nun davon ausgegangen, dass sich der zuf¨allige Surfer nicht ausschließlich von den Links durchs Web leiten l¨asst, sondern auch ab und zu – und zwar nicht nur, wenn er auf einer Webseite ohne Outlinks angekommen ist – eine zuf¨allige URL in die Adresszeile des Browser eingibt. Dabei w¨are jede Webseite gleichwahrscheinliches n¨achstes Ziel der zuf¨alligen Webreise, weshalb die Zufalls-Transformationsmatrix T in jedem Eintrag n1 stehen hat. Der Parameter α in der Konvex-Kombination entscheidet nun u ¨ber die Gewichtung der Matrizen S und T . Je gr¨oßer α, desto mehr wird die Matrix S und damit der Einfluss der Links auf die Webseiten-Aufrufe eines Surfers gewichtet. Je kleiner α, desto mehr Gewicht erh¨alt die Zufalls-Transformationsmatrix T , d.h. desto Universit¨at T¨ ubingen

33

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

mehr wird davon ausgegangen, dass sich Surfer rein zuf¨allig durchs Netz bewegen. Allgemein gilt f¨ ur die Matrixeintr¨age gij der vom Webgraphen eindeutig bestimmten Google Matrix G ∈ Mn (C) mit 0 ≤ α < 1: 1 |Oj |

+ (1 − α) n1

gij

= α·

gij

=

(1 − α) n1

gij

=

1 n

f alls j ∈ Ii , (3.2)

f alls j ∈ / Ii und Oj 6= ∅ , f alls Oj = ∅ .

Google verwendet hier angeblich α = 0, 85 (siehe auch [LaMey], [BrLei], [Gall], [Wills], [Aust]). Das heißt nichts anderes, als dass der zuf¨allige Surfer, der auf einer Webseite angekommen ist, sich zu 85% von den Links (also den Empfehlungen des jeweiligen Webautors) den Weg durchs WWW weisen l¨asst, und ansonsten nach dem Zufallsprinzip ein neue Webadresse in die Adresszeile des Browsers eintippt. Warum sich diese ParameterWahl f¨ ur Google als optimal herausgestellt hat, soll im n¨achsten Kapitel untersucht werden. Zun¨achst soll hier aber noch das gew¨ahlte Beispiel zu Ende gerechnet werden. Mit α = 0, 85 gilt f¨ ur die Google Matrix G[3.3] des Webgraphen aus Abbildung 3.3:   3 32 1 25 3 3 3

G[3.3] = α · S[3.3] + (1 − α) · T[3.3]

3.3

          =          

140

105

7

56

140

140

140

32 105

3 140

1 7

3 140

3 140

3 140

3 140

32 105

32 105

1 7

25 56

3 140

3 140

3 140

32 105

32 105

1 7

3 140

3 140

3 140

3 140

3 140

3 140

1 7

3 140

3 140

61 70

25 56

3 140

3 140

1 7

3 140

61 70

3 140

25 56

3 140

3 140

1 7

3 140

3 140

3 140

3 140

                    

Berechnung des PageRank-Vektors

F¨ ur die Google-Matrix G existiert also nach Theorem 2.1.13 ein eindeutiger (normierter), strikt positiver Fixvektor x? – der PageRank-Vektor! Nach Theorem 2.2.7 gilt zudem: ∀x0 ∈ Cn mit x0 ≥ 0 und kx0 k1 = 1 :

lim Gk x0 = x?

k→∞

mit x? = Gx? .

F¨ ur den Beispiel-Webgraphen aus Abbildung 3.3 mit zugeh¨origer Google-Matrix G[3.3] heißt das f¨ ur einen beliebigen Vektor x0 ∈ C7 mit x0 ≥ 0 und kx0 k1 = 1: lim (G[3.3] )k x0 = x?[3.3]

k→∞

Universit¨at T¨ ubingen

mit x?[3.3] = G[3.3] x?[3.3] .

34

Mathematisches Institut

Matthias Frick: Mathematik hinter Google Sei hier etwa x0 = (1, 0, 0, 0, 0, 0, 0)T , dann setze xk = G[3.3] xk−1 und lasse k → ∞. Dann ist      x1 = G[3.3] x0 =      

x41 = G[3.3] x40

    =    

0.021429 0.304762 0.304762 0.304762 0.021429 0.021429 0.021429



0.081606 0.057267 0.104727 0.073493 0.324381 0.324381 0.034145



    ,    

     x2 = G[3.3] x1 =     

0.274308 0.064507 0.280380 0.150856 0.085757 0.085757 0.058435

     ,    

. . . usw. . . . ,

     = x42 = x43 = ... = lim (G )k x0 = x? . [3.3]  [3.3] k→∞   

F¨ ur die Google-Matrix G[3.3] liefert die Potenzen-Methode bzw. das Iterationsverfahren also bei einer numerischen Berechnungsgenauigkeit von 12 · 10−6 nach 41 Iterationen ein stabiles Resultat – den PageRank-Vektor x?[3.3] . Die Koordinaten von x?[3.3] enthalten die einzelnen PageRank-Werte der Webseiten W1 bis W7 aus Abbildung 3.3. Demnach erhalten die Seiten W5 und W6 die h¨ochsten Suchanfragen-unabh¨angigen Wichtigkeitswerte. Dies l¨asst sich mit gesch¨arftem Blick auf Abbildung 3.3 dadurch erkl¨aren, dass sich die beiden Seiten jeweils mit ihrem einzigen Outlink gegenseitig exklusiv ihren gesamten Wichtigkeitswert zuschanzen und dass sich beide zudem die Stimme eines unabh¨angigen weiteren Webautors (W7 ) teilen. Trotz der Nachvollziehbarkeit des PageRank-Berechnungsprinzips ist es schwer vorstellbar, wie Googles Rechenzentren die Potenzierung der Google-Matrix mit ihren mehreren Milliarden Zeilen und Spalten meistern k¨onnen. Die Tatsache, dass der wichtigste Parameter des PageRank-Verfahrens – die Linkmatrix A – eine sogenannte sparse ma” trix“ [LaMey] (d.h. die Eintr¨age der Matrix sind gr¨oßtenteils Nullen, weil Webautoren im Durchschnitt weniger als 10 Links setzen) ist, ist f¨ ur den Speicher- und Rechenaufwand des Verfahrens von Vorteil. Dennoch ist die Berechnung des PageRank-Vektors eine durchaus beeindruckende Leistung, die angeblich mehrere Tage in Anspruch nimmt.

Universit¨at T¨ ubingen

35

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

3.4

Die Parameter der Google-Matrix

Der PageRank-Vektor x? ist der strikt positive, auf 1 normierte eindeutige Fixvektor der wie in (3.2) eindeutig bestimmten Google Matrix G = α(A + D) + (1 − α)T, wobei α = 0, 85, G ∈ Mn (C) und – mit der Notation und den Definitionen aus Kapitel 1 –   aij = |O1j | f alls j ∈ Ii aij mit die Eintr¨age der Linkmatrix A, aij = 0 sonst.   dij = n1 f alls Oj = ∅ dij mit die Eintr¨age der Matrix D und dij = 0 sonst. tij

mit

tij =

1 n

∀ i, j.

die Eintr¨age der Matrix T

sind.

Da das Aussehen der Matrix D abh¨angig ist vom Aussehen der Linkmatrix A (hat die Seite Wj keine Outlinks, so stehen in der j-ten Spalte von A nur Nullen und dementsprechend sind alle Eintr¨age der j-ten Spalte von D = n1 ), sollen im Folgenden m¨ogliche Modifikationen der drei entscheidenden Parameter A, α und T und deren Auswirkungen auf das PageRank-Verfahren untersucht werden.

3.4.1

Die Linkmatrix A

Der bisher diskutierte Ansatz sieht ein einheitliches Gewichtungsprinzip der Nicht-Nulleintr¨age von A ( |O1j | ) vor. Das heißt, dass der in Kapitel 1 vorgestellte zuf¨allige Surfer mit jeweils gleicher Wahrscheinlichkeit einem der existierenden Outlinks einer Seite folgt, wenn er nur die Maus zum Surfen benutzen darf. Be¨augt man diesen Ansatz kritisch, so k¨onnte man anzweifeln, ob er tats¨achlich ein realistisches Ranking produziert. W¨are es nicht sinnvoller, den zuf¨alligen Surfer“ durch einen intelligenten Surfer“ ([LaMey], S.48) bzw. ” ” einen menschlicheren“ Surfer zu ersetzen, der sich beim Verlassen einer Webseite bei” spielsweise von der Reihenfolge der angebotenen Outlinks oder der Linkbeschreibung – also Angaben u ¨ber den Inhalt der verlinkten Seiten – beeinflussen l¨asst? Man k¨onnte etwa, nur die Reihenfolge in Betracht ziehend, der Auffassung sein, dass der intelligente Surfer dem erstgenannten Outlink einer Seite doppelt so wahrscheinlich folgt wie den anderen Outlinks. Gehen wir nun im Beispiel des Webgraphen aus Abbildung 1.3 davon aus, dass der Webautor von Seite W1 den Outlink zu Seite W4 an erster Stelle nennt und die Webautoren der Seiten W2 und W4 jeweils den Outlink zu Seite W3 zuerst anf¨ uhren (W3 hat nur einen Outlink), so w¨ urde sich die   0 0 1 13 0 0 1 21  1  1 0 0 0  3  a¨ndern in  41 02 0 02 urspr¨ ungliche Linkmatrix  1 1 1   0 2  0 3 3 2 4 3 1 1 1 1 0 0 0 0 3 2 2 3 

Universit¨at T¨ ubingen

36

  . 

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Nach gleichem Prinzip k¨onnten auch z.B. die L¨ange des Anchortexts oder die inhaltliche ¨ Ahnlichkeit der verlinkten Seiten mit in die Gewichtung der Spalteneintr¨age eingehen. Wichtigste Maßgabe bleibt dabei nat¨ urlich, dass die Spaltensumme in jedem Falle 1 er¨ geben muss. Ubereinstimmenden Quellen zu Folge (z.B. [LaMey], [BrLei]) gingen Larry Page und Sergey Brin urspr¨ unglich vom Ansatz mit den gleichgewichteten Outlinks, also dem Prinzip des zuf¨alligen Surfers, aus. Inwieweit Google den Surfer heutzutage als intel” ligenter“ oder menschlicher“ interpretiert, d.h. ob, und wenn ja, welche Modifikationen ” an der urspr¨ unglichen Linkmatrix vorgenommen wurden, bleibt Googles Geheimnis.

3.4.2

Der Einfluss von α

Aufgrund des Erfolgs des Google-Algorithmus kann man durchaus sagen, dass sich die Wahl des Parameters α (= 0, 85) absolut bew¨ahrt hat. Grund genug, dessen Einfluss auf das PageRank-Verfahren etwas genauer zu untersuchen. Am Beispiel des Webgraphen aus Abbildung 3.3 mit der zugeh¨origen Google-Matrix G[3.3] l¨asst sich einfach feststellen, welchen Einfluss α auf das Verfahren und die Rankingwerte nimmt. Man betrachte die folgende Tabelle, in der die Ergebnisse der PageRank-Vektor-Berechnung f¨ ur verschiedene α-Werte stehen: α= Iterationen bis Stabilit¨at:

x?[3.3] =

0,85 41  0.081606  0.057267  0.104727  0.073493   0.324381 

0,95 60       

 0.039116  0.026519  0.051503  0.034917   0.416906 

0,5 17       

0,1 7

 0.129870  0.103896  0.151515  0.121212   0.205628 

0.324381 0.416906 0.205628 0.034145 0.014133 0.082251 Numerische Berechnungsgenauigkeit: 21 · 10−6

      

 0.14218  0.13541  0.14692  0.13992   0.15245  0.15245 0.13067

      

Die in der Tabelle festgehaltenen Ergebnisse legen folgende Interpretation nahe: Je kleiner α, • desto h¨oher die Konvergenzgeschwindigkeit, d.h. desto weniger Iterationen sind bis zur Konvergenz des Verfahrens n¨otig, • aber desto undeutlicher werden auch die Rankingwert-Unterschiede (da die Linkmatrix bei kleinerem α – und damit gr¨oßerem Anteil der Zufallsmatrix T in der Konvex-Kombination – st¨arker verf¨alscht wird). Nat¨ urlich soll der Rechenaufwand bei der Berechnung des PageRank-Vektors m¨oglichst minimiert werden. Eine hohe Konvergenzgeschwindigkeit ist also w¨ unschenswert. Bedenkt man allerdings die Gr¨oße des WWW und die Anzahl der indizierten Webseiten, die alle mit einem PageRank-Wert versehen werden m¨ ussen, so wird klar, dass auch sehr feine Rankingwert-Unterschiede von Bedeutung sein k¨onnen. Verf¨alscht man hier die Linkmatrix zu stark (durch Wahl eines sehr kleinen α), so k¨onnte eventuell auch das Ranking zu stark verf¨alscht werden. Es gilt also, eine optimale Zwischenl¨osung zu finden.

Universit¨at T¨ ubingen

37

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Stabilit¨ at des Rankings bei verschiedenen α-Werten Obwohl sich die Rankingwerte bei kleinem α immer mehr ann¨ahern, bleibt das Ranking in der obigen Tabelle bemerkenswerterweise bei allen vier α-Werten gleich, was darauf zur¨ uckzuf¨ uhren ist, dass der zu Grunde liegende Webgraph aus Abbildung 3.3 nur 7 Webseiten enth¨alt. Das Ranking bleibt hier – bei der angegebenen Berechnungsgenauigkeit – noch stabil. Spannender wird es, wenn man den Einfluss von α auf das Ranking gr¨oßerer Webs untersucht (siehe Abb. 3.4): W1

W3

W5

W8

W9

W7 W2

W4

W10

W6 W16

W11

W13

W12

W14

W19

W17

W15

W18

W20

Abbildung 3.4: Web aus 20 Seiten ↑ , ↓ zugeh¨orige PageRank-Werte f¨ ur verschiedene α

Seite W1 W2 W3 W4 W5 W6 W7 W8 W9 W10 W11 W12 W13 W14 W15 W16 W17 W18 W19 W20

α = 0, 95 PR-Wert Rang 0.0102138 17 0.0107904 16 0.0134482 13 0.0102138 17 0.0289840 8 0.0227664 9 0.0114451 15 0.0223676 10 0.0065318 20 0.0093767 19 0.0126111 14 0.0147654 12 0.1900128 2 0.1968152 1 0.1873053 3 0.0183608 11 0.0467315 7 0.0543204 6 0.0757041 4 0.0572355 5

α = 0, 85 PR-Wert Rang 0.021396 16 0.021630 15 0.027458 11 0.021396 16 0.052565 8 0.040182 9 0.020321 18 0.040115 10 0.013851 20 0.016397 19 0.022459 14 0.026953 12 0.124034 2 0.135646 1 0.119568 3 0.025384 13 0.057101 7 0.061895 6 0.085909 4 0.065740 5

α = 0, 5 PR-Wert Rang 0.039495 13 0.039392 15 0.046077 11 0.039495 13 0.067522 4 0.052598 8 0.037481 17 0.053879 7 0.031713 20 0.032195 19 0.038778 16 0.041576 12 0.068765 3 0.080225 1 0.063594 5 0.035090 18 0.052458 9 0.052435 10 0.069381 2 0.057850 6

Numerische Berechnungsgenauigkeit:

Universit¨at T¨ ubingen

38

1 2

α = 0, 1 PR-Wert Rang 0.048488 13 0.048486 15 0.050104 9 0.048488 13 0.054365 2 0.050393 8 0.048380 17 0.051095 6 0.046816 20 0.046819 19 0.048435 16 0.048550 12 0.052164 4 0.055250 1 0.050626 7 0.046909 18 0.049618 10 0.049592 11 0.053648 3 0.051775 5

· 10−6

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Insgesamt kann man sagen, dass das Ranking auch bei dem gew¨ahlten 20 × 20-Beispiel erstaunlich stabil bleibt. Allerdings l¨asst sich aus der Tabelle in Abbildung 3.4 ablesen, dass sich zumindest die Ranking-Positionen mancher Webseiten f¨ ur verschiedene α-Werte ver¨andern. Vergleicht man das Ranking der Seiten f¨ ur α = 0, 95 mit dem Ranking f¨ ur α = 0, 85, so stellt man fest, dass sich die Position im Ranking nur f¨ ur 6 Seiten minimal ¨ im Abstieg der Seite W7 von Rang 15 auf Rang 18 ¨andert, wobei die gr¨oßte Anderung besteht. Das Ranking f¨ ur α = 0, 1 ¨andert sich dagegen im Vergleich zu α = 0, 85 auf 14 Positionen, teilweise sehr deutlich. Seite W5 verbessert sich z.B. um ganze 6 R¨ange von Platz 8 auf Platz 2. Der Zusammenhang zwischen α und der Konvergenzgeschwindigkeit

Abbildung 3.5: α-abh¨angige Konvergenzgeschwindigkeiten des PageRank-Verfahrens f¨ ur 1 −6 das Beispiel-Web aus Abbildung 3.4 bei einer Berechnungsgenauigkeit von 2 · 10 Die Ergebnisse aus dem Diagramm in Abbildung 3.5 best¨arken die Vermutung, dass die Konvergenzgeschwindigkeit des PageRank-Verfahrens von α abh¨angt. Je kleiner α ist, desto weniger Iterationen werden demnach auch in diesem Beispiel ben¨otigt, um ein stabiles Resultat zu erhalten. Taher H. Haveliwala und Sepandar D. Kamvar haben sich in ihrer Arbeit [HaKa] intensiver mit diesem Zusammenhang besch¨aftigt und bewiesen folgendes Theorem, das seinerseits den Beweis zur ge¨außerten Vermutung liefert: α =: λ2 ist ein Eigenwert der Google-Matrix G, wobei |λi | ≤ |λ2 | f¨ ur alle λi außer λ1 = 1 = r(G) gilt.

Universit¨at T¨ ubingen

39

Mathematisches Institut

Matthias Frick: Mathematik hinter Google  Damit ist klar, dass die Folgen zλi ,ν (k) := νk λk−ν ∀ λi 6= 1 f¨ ur k → ∞ umso schneller i k gegen 0 – und damit J umso schneller gegen P1 – konvergieren, je kleiner α ist. α = 0, 85 – Die optimale Wahl? Die Punktkurve in Abbildung 3.5 hat bis zum x-Achsenbereich um α = 0, 85 eine relativ flache Steigung, w¨ahrend die Zahl der ben¨otigten Iterationen bis zum Erhalt eines stabilen Resultats f¨ ur gr¨oßere α-Werte sehr schnell und sehr stark ansteigt. Diese Beobachtung legt die Vermutung nahe, dass die Konvergenzgeschwindigkeit des PageRank-Verfahrens f¨ ur α = 0, 85 f¨ ur die Google-Entwickler gerade noch akzeptabel ist, w¨ahrend der Rechenaufwand f¨ ur gr¨oßere α-Werte nicht mehr – oder nicht im gew¨ unschten Zeitrahmen – zu bew¨altigen ist. Da man α und damit den Einfluss der Linkstruktur als Indikator f¨ ur das Ranking nat¨ urlich so groß wie m¨oglich haben will, kann die Wahl α = 0, 85 also als optimaler Kompromiss zwischen Effizienz und Effektivit¨at“ [LaMey] bezeichnet werden. ”

3.4.3

Die Zufalls-Transformationsmatrix T

Die Eintr¨age der Linkmatrix A geben die Wahrscheinlichkeiten an, mit welcher ein zuf¨alliger oder intelligenter Surfer (siehe 3.4.1) das WWW u ¨ber die angebotenen Links (d.h. – bildlich gesprochen – die Maus benutzend) bereist. Die Matrix T deckt dagegen den Fall ab, dass der Surfer die Links auf den besuchten Webseiten komplett ignoriert und sich nur mit der Tastatur – also immer wieder neue Webadressen in die Adresszeile des Browsers eingebend – durchs WWW bewegt. Der bisher diskutierte Ansatz sieht hier zun¨achst ebenfalls das Zufallsprinzip vor. Die Eintr¨age tij von T mit tij = n1 ∀ i, j besagen, dass der zuf¨allige Surfer alle existierenden Webadressen mit jeweils gleicher Wahrscheinlichkeit in die Adresszeile eintippt. Versieht man den imagin¨aren zuf¨alligen Surfer wie zuvor mit etwas menschlicheren Z¨ ugen, so liegt die Einsicht nahe, dass eine menschlicher Surfer nicht allwissend ist, und daher nicht einmal ann¨ahernd s¨amtliche Adressen des WWW kennt. Außerdem hat ein menschlicher Surfer bestimmte Interessen und Vorlieben. Ein typischer Fußballfan beispielsweise wird weit weniger wahrscheinlich eine Seite mit politischem Inhalt ansteuern, als eine der zahlreichen ihm bekannten Sportseiten. Sei also im Web aus Abbildung 1.3 beispielsweise W1 = www.kicker.de, W2 = www.ard.de, W3 eine Seite u ¨ber die Kommunalpolitik eines norddeutschen Provinzortes und W4 = www.sport1.de. Dann k¨onnte die auf einen VfB Stuttgart-Fan zugeschnittene Transformations Matrix z.B. folgendermaßen aussehen:

    0

1 2 1 5

1 2 1 5

0

0

   0 

3 10

3 10

3 10

3 10



Universit¨at T¨ ubingen

1 2 1 5

40

1 2 1 5



Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Die notwendige mathematische Eigenschaft – die Spaltenstochastizit¨at – bliebe dabei erhalten und die Wahrscheinlichkeits-Eintr¨age der Matrix und damit letztendlich auch der PageRank-Vektor w¨ urden in gewissem Maße den Interessen des VfB-Fans entsprechen: Dass alle Eintr¨age in der dritten Zeile = 0 sind, k¨onnte bedeuten, dass er die Kommunalpolitik-Seite W3 gar nicht kennt und deren Adresse dementsprechend auch nie in die Browserzeile eintippen kann. Am wahrscheinlichsten ist es dagegen, dass er 3 ) und www.ard.de ( 15 ). www.kicker.de ansteuert ( 21 ), gefolgt von www.sport1.de ( 10 Eine derartige die Interessen des Users ber¨ ucksichtigende Suchoption brachte Google im M¨arz 2004 als Beta-Version auf den Markt, wobei noch ausdr¨ ucklich darauf hingewiesen wird, dass sich die in den Google Labs angebotenen Beta-Dienste noch in der Entwicklung befinden und daher unter Umst¨anden zeitweise nicht funktionieren. Der entsprechende Link unter http://labs.google.de/ wird mit Personalisierte Suche bezeichnet. Nat¨ urlich kann Google nicht f¨ ur jeden User individuell die riesige Google-Matrix und einen pers¨onlichen PageRank-Vektor berechnen. Statt dessen wird die M¨oglichkeit geboten, sich ein Profil zu erstellen, in dem man einige von Google angebotene Interessens-Kategorien verschieden gewichtet. Die personalisierte“ Suche verwendet dann einen dieser Gewichtung ” entsprechenden, angepassten PageRank-Vektor. ¨ Anstatt die Transformationsmatrix T zu personalisieren, kann man die Ubergangsswahrscheinlichkeiten von einer Seite zur anderen auch von der inhaltlichen N¨ahe der beiden Seiten abh¨angig machen. Ohne von vorne herein die Interessen des zuf¨alligen oder intelligenten Modell-Surfers festzulegen, w¨ urde doch die Einsch¨atzung Sinn machen, dass ein Surfer, der sich im zuvor beschriebenen Beispiel-Web auf der Kicker-Seite befindet, sehr viel wahrscheinlicher als n¨achstes zu einer inhaltsverwandten Seite wie www.sport1.de wechselt als auf die Seite u ur Poli¨ber norddeutsche Kommunalpolitik. Jemand, der sich f¨ tik interessiert und sich gerade auf der Kommunalpolitik-Seite befindet, wird dagegen als n¨achstes vielleicht eher die ARD-Seite aufrufen als die Kicker-Seite. Allerdings ist diese Inhalts-Beziehung und damit die Matrix nicht zwangsl¨aufig symmetrisch. Auch wenn ein Besucher der Politik-Seite in unserem Beispiel als n¨achstes mit h¨ochster Wahrscheinlichkeit www.ard.de aufruft, heißt das nicht, dass ARD-Seitenbesucher mit gleicher Wahrscheinlichkeit zur Politikseite wechseln. Geht man zudem von einem Mindestmaß an Intelligenz des Surfers aus, so sollte man ber¨ ucksichtigen, dass die Wahrscheinlichkeit, dass ein sich z.B. auf www.ard.de befindender Surfer die gleiche Adresse nochmals eingibt, fast Null ist (sie darf nicht gleich Null sein, weil eine strikt positive Google-Matrix produziert werden soll). Eine nach diesem Prinzip inhaltsorientierte Transformationsmatrix k¨onnte in unserem Beispiels etwa folgendermaßen gestaltet sein:      

Universit¨at T¨ ubingen

1 100 3 10 9 100 3 5

2 5 1 100 7 50 9 20

9 100 7 10 1 100 1 5

41

1 2 2 5 9 100 1 100

     

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Die Frage, inwieweit Googles Zufalls-Transformationsmatrix T tats¨achlich noch strikt nach dem urspr¨ unglichen Zufallsprinzip oder doch eher die inhaltliche N¨ahe der verschiedenen Seite ber¨ ucksichtigend gestaltet ist, k¨onnen wiederum nur die Google-Ingenieure beantworten. Im eigenen Interesse werden sie uns diese Antwort allerdings so lange wie m¨oglich schuldig bleiben. Da es Ger¨ uchten zu Folge mehr als 100 Parameter im Google-Algorithmus geben soll und Google weiterhin um Innovation und Verbesserung bem¨ uht ist, ist es allerdings unrealistisch, dass Google nach wie vor vom Prinzip des strikt zuf¨alligen Surfers ausgeht. Schließlich war und bleibt es Googles erkl¨artes Ziel, ein realistisches Ranking zu produzieren, welches weitestgehend menschlichen Rankings entspricht. Es ist also davon auszugehen, dass den Google-Entwicklern die obigen Gedanken nicht g¨anzlich unbekannt sind und daher auch die Transformationsmatrix T im Laufe der Weiterentwicklungen und Verbesserungen nicht von Modifikationen verschont blieb.

Universit¨at T¨ ubingen

42

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

4

PageRank ohne Spektraltheorie?

Thema dieser Arbeit ist die Mathematik hinter PageRank. In Kapitel 2 wurde gezeigt, wie spektraltheoretische Argumente die entscheidende Aussage f¨ ur das PageRank-Verfahren liefern: ∀x0 ∈ Cn mit x0 ≥ 0 und kx0 k1 = 1 :

lim Gk x0 = x?

mit x? = Gx?

k→∞

(4.1)

(wobei G die Google-Matrix ist, die u.a. insbesondere positiv und spaltenstochastisch ist). Die gleiche Aussage erh¨alt man jedoch auch ganz ohne Spektraltheorie und erstaunlich schnell und direkt aus dem Banachschen4 Fixpunktsatz. Allerdings l¨asst sich dieses alternative Argument, wie wir gleich sehen werden, nicht mit gewissen Parameter-Variationen vereinbaren.

4.1

Banachscher Fixpunktsatz

Sei (M, d) ein vollst¨andiger metrischer Raum, ϕ : M → M eine kontrahierende Abbildung, d.h. ∃ 0 ≤ α < 1, so dass ∀ x, y ∈ M :

d(ϕ(x), ϕ(y)) ≤ α · d(x, y).

Dann existiert genau ein Fixpunkt von ϕ, d.h. ∃! x? ∈ M

mit ϕ(x? ) = x? .

F¨ ur alle x0 ∈ M konvergiert die rekursiv definierte Folge xk := ϕ(xk−1 ) gegen x? . F¨ ur den Beweis des Satzes und die anschließende Anwendung siehe [WHK], S. 421-426. Anwendung auf PageRank Man betrachte die Menge ( M=

(x1 , . . . , xn ) | xi ≥ 0,

n X

) =1

i=1

mit der von der Norm induzierten Metrik d(x, y) = kx − yk1 . Dann ist M offensichtlich abgeschlossen und damit als Teilraum von Rn vollst¨andig. 4

Stefan Banach (1892-1945)

Universit¨at T¨ ubingen

43

Mathematisches Institut

Matthias Frick: Mathematik hinter Google

Wir m¨ ussen nun nur noch zeigen, dass die wie in (3.2) eindeutig bestimmte Google-Matrix G eine kontrahierende Abbildung auf M definiert und erhalten dann mit dem Banachschen Fixpunktsatz den eindeutig bestimmten positiven Fixvektor von G mit Norm 1. Wegen Linearit¨at gilt Gx − Gy = α · S(x − y) + (1 − α)(T x − T y) ∀ x, y ∈ M, wobei 0 ≤ α < 1, S die wie in (3.1) eindeutig durch den Webgraphen bestimmte stochastische Matrix   1 ··· 1  ..  die Zufalls-Transformationsmatrix ist. und T = n1  ... .  1 ··· 1 Es ist dann T x = T y = ( n1 , . . . , n1 ) ∀ x, y ∈ M und damit Gx − Gy = α · S(x − y) ∀ x, y ∈ M. Folglich ist die von G definierte Abbildung wegen kGx − Gyk1 = kαS(x − y)k ≤ α kSk1 kx − yk1 = αkx − yk1 | {z } =1

eine kontrahierende Abbildung im Sinne des Banachschen Fixpunktsatzes.

4.2

Perron-Frobenius vs. Banach

Der vorangegangene Abschnitt beschreibt auf etwas mehr als einer Seite scheinbar die komplette f¨ ur das PageRank-Verfahren ben¨otigte Mathematik. Der Banachsche Fixpunktsatz liefert also ein gleichstarkes Argument wie die von Seite 16 bis 29 (Kapitel 2) aufwendig bem¨ uhte Spektraltheorie – so k¨onnte man meinen. Wozu also der ganze Aufwand mit der Perron-Frobenius Argumentation, wenn es uns Banach so einfach macht? Die Antwort ist nicht offensichtlich. Nur bei genauer Untersuchung kann man den Vorteil der spektraltheoretischen Argumentation erkennen: Sie ist flexibler! Modifiziert man beispielsweise die Transformationsmatrix T wie in Abschnitt 3.4.3 beschrieben so, dass ¨ die Eintr¨age tij und damit die Ubergangswahrscheinlichkeit von Seite Wj zu Seite Wi von der inhaltlichen N¨ahe der beiden Seiten abh¨angen, so ist das Banachsche Argument nicht mehr anwendbar: Da die Spalten von T nicht mehr gleich auss¨ahen, w¨ urde nicht T x = T y ∀ x, y ∈ M (siehe Abschnitt 4.1, Anwendung auf PageRank) gelten. Das Ergebnis eines imagin¨aren Showdowns zwischen Perron-Frobenius und Banach hieße also – ohne den Wert der zahlreichen Arbeiten Banachs auf verschiedenen Gebieten der Mathematik geringer sch¨atzen zu wollen – in diesem speziellen Anwendungsgebiet oder, bildlich gesprochen, auf diesem speziellen Spielfeld: 1 zu 0 nach Verl¨angerung f¨ ur die Spielgemeinschaft Perron-Frobenius.

Universit¨at T¨ ubingen

44

Mathematisches Institut

Literaturverzeichnis [Aust]

D. Austin, How Google Finds Your Needle in the Web’s Haystack. Feature Column. Monthly Essays on Mathematical Topics. American Mathematical Society, 2006. http://www.ams.org/featurecolumn/archive/pagerank.html#2. Zugriff am 6.4.2007

[BNS]

A. B´atkai, R. Nagel, U. Schlotterbeck, An Invitation to Positive Matrices. Budapest/T¨ ubingen, 2006.

[BrLei]

K. Bryan, T. Leise, The $25,000,000,000 Eigenvector: The Linear Algebra behind Google. SIAM Review 48 (3), S. 569-81. 2006.

[Fisch]

G. Fischer, Lineare Algebra. Vieweg & Sohn Verlagsgesellschaft mbH, Braunschweig/Wiesbaden, 1997.

[FN07]

N.N., Firma, die man bei Google nicht findet, existiert nicht“. Fr¨ankische ” Nachrichten vom 6. M¨arz 2007, S. 13.

[Gall]

P.F. Gallardo, Google’s secret and linear algebra. Newsletter of the European Mathematical Society 63, S. 10-15. European Mathematical Society, Z¨ urich, 2007.

[Goog1]

http://www.google.de/intl/de/options/, Google-Suche: Mehr, mehr, mehr... . Zugriff am 6.4.2007.

[Goog2]

http://www.google.com/corporate/history.html, Google Coorporate Information: Google Milestones. Zugriff am 6.4.2007.

[Goog3]

http://www.google.com/corporate/tech.html, Unternehmensbezogene Informationen zu Google: Technologie. Zugriff am 6.4.2007.

[Goog4]

http://www.google.de/why use.html, Gr¨ unde, Google zu benutzen. Zugriff am 6.4.2007.

[HaKa]

T.H. Haveliwala, S.D.Kamvar, The second eigenvalue of the Google matrix. Technical Report. Stanford University, 2003.

[HB06]

N.N., Der Mann des Jahres: Google-Chef Eric Schmidt im Exklusiv-Interview. Handelsblatt (Nr. 248) vom 22. Dezember 2006.

45

[Kaim]

S. Kaim, Google zeigt mich, also bin ich. 45min¨ utige Dokumentation. ARTE France, Frankreich, 2006. Ausgestrahlt am 12. Dezember 2006 auf ARTE im Rahmen der Sendung Generation Ahnungslos.

[LaMey] A.N. Langville, C.D. Meyer, Google’s PageRank and Beyond: The Science of Search Engine Rankings. Princeton University Press, Princeton, 2006. [MacC]

C.R. MacCluer, The many proofs and applications of Perron’s theorem. SIAM Review 42 (3), S. 487-498. 2000.

[Minc]

H. Minc, Nonnegative Matrices. John Wiley and Sons Interscience, New York, 1988.

[RobFo]

D.F. Robinson, L.R. Foulds, Digraphs: Theory and Techniques. Gordon and Breach Science Publishers, New York/London/Paris, 1980.

[Schae]

H.H. Schaefer, Banach Lattices and Positive Operators, Die Grundlehren der mathematischen Wissenschaften in Einzeldarstellung, Band 215, SpringerVerlag, Berlin/Heidelberg/New York, 1974.

[Sch¨o]

V.C. Sch¨och, Die Suchmaschine Google. Seminararbeit. Institut f¨ ur Informatik, Freie Universit¨at Berlin, 2001.

[WHK]

M. Wolff, P. Hauck, W. K¨ uchlin, Mathematik f¨ ur Informatik und Bioinformatik. Springer-Verlag, Berlin, 2004.

[Wills]

R.S. Wills, Google’s PageRank. The Math Behind the Search Engine. The Mathematical Intelligencer 28 (4), S. 6-11. Springer-Verlag, 2006.

[Wint]

M. Winter, Spektraltheorie positiver Matrizen und Asymptotik von Operatorpotenzen. Zulassungsarbeit der Fakult¨at f¨ ur Mathematik und Physik an EberhardKarls-Universit¨at T¨ ubingen, 2002.

46