1. Die Lineare Algebra hinter Google: Eigenwerte, Vektor

Werbung
Prof. Dr. Wolfgang Konen
Spez. Gebiete der Mathematik
05.10.2009
1. Die Lineare Algebra hinter Google: Eigenwerte, Vektorräume, Flüsse
1.1.
Eigenwerte und Eigenvektoren
Eigenschwingungen können wichtig sein!
Berühmtes Beispiel: Tacoma Bridge Failure (Video) am 07. November 1940:
Was war passiert?
• Ein starker Wind hatte die Brücke zu Schwingungen aufgeschaukelt, die die Brückenkonstruktion nicht geeignet dämpfte.
• Die Neukonstruktion der Brücke hatte entsprechende Dämpfungselemente eingebaut
und hält seither allen Winden stand.
Def D 1-1
Eigenwerte und Eigenvektoren
Gegeben sei eine nxn-Matrix A. Ein Vektor v≠0 heißt Eigenvektor zu A, wenn Av die gleiche oder die gegengleiche Richtung zu v hat. Als Gleichung ausgedrückt: Es gibt eine Zahl
λ, so dass gilt
Av = λv
Die Zahl λ nennt man den Eigenwert zu A.
Graphische Darstellung s. ..\..\maple\eigenwert.mws
Viele Fragen schließen sich an:
• Wozu braucht man Eigenvektoren und Eigenwerte?
• Wie findet man Eigenwerte und Eigenvektoren?
• Wieiviele Eigenwerte hat eine Matrix? Hat überhaupt jede Matrix Eigenwerte?
1.1.1.
Wozu braucht man Eigenwerte?
Beispiel City – Factory Outlet
Lit.: [Brill01, S. 149]
Kunden und Kundenwanderung von Jahr zu Jahr:
© W. Konen
Vorlesung-SGM-ext.doc
Seite 2
Prof. Dr. Wolfgang Konen
80%
Spez. Gebiete der Mathematik
05.10.2009
20%
City-Kunden
Outlet-Kunden
cn
on
10%
90%
Um ihre Lagerbestände besser planen zu können, fragen sich die City-Einzelhändler: Gibt es
einen stationären Zustand? D. h. gibt es ein Verhältnis von City-Kunden zu Outlet-Kunden,
das im nächsten Jahr – und damit in allen Folgejahren – genau gleich sein wird?
Mathematische Problemformulierung:
⎛c ⎞
v n = ⎜⎜ n ⎟⎟
⎝ on ⎠
•
cn, on: City-, Outlet-Kunden im Jahr n.
•
⎛c
⎞ ⎛ 0.8 0.1⎞⎛ c n ⎞
⎟⎟⎜⎜ ⎟⎟ ≡ Avn
v n +1 = ⎜⎜ n +1 ⎟⎟ = ⎜⎜
o
0
.
2
0
.
9
⎠⎝ on ⎠
⎝ n +1 ⎠ ⎝
•
Wenn wir einen stationären Zustand suchen, dann ist dies ein v mit v = Av . Dies ist
ein Spezialfall der Gleichung aus Def D 1-1 mit λ=1. Wir suchen also Eigenvektoren
v der Matrix A zu Eigenwert λ=1.
Beispiel Google's PageRank
[L. Page, S. Brin et al. The PageRank citation ranking: Bringing order to the web. Stanford
Digital Libraries Working Paper, 1998, http://dbpubs.stanford.edu]
["PageRank" unter www.wikipedia.org]
Eine der berühmtesten Suchmaschinen im Web, Google, gegründet von Larry Page und
Sergej Brin, hat nicht zuletzt deshalb eine solch überragende Verbreitung erlangt, weil sie die
Abertausend Weblinks zu einer Suchanfrage clever sortiert.
• Grundidee: Die Websites nach Bedeutung sortieren.
• Was ist "bedeutend"? Eine Website v ist umso bedeutender, je mehr bedeutende
Websites u auf sie zeigen. Henne-Ei-Problem: Um die Bedeutung von v zu berechnen, müssen wir bereits die Bedeutung von u kennen. Wie kommen wir da raus?
• Formulieren wir genauer (vereinfachter PageRank-Algorithmus):
• xu : Bedeutung der Website u
• Nu : Anzahl der Websites, auf die u zeigt (sog. Outlinks von u).
Jede Website u verteilt ihre Bedeutung xu auf ihre Outlinks, und zwar zu gleichen Teilen:
© W. Konen
Vorlesung-SGM-ext.doc
Seite 3
Prof. Dr. Wolfgang Konen
Spez. Gebiete der Mathematik
05.10.2009
Abbildung 1.1: (a) Bedeutungsübertragung, (b) konvergierter Zustand im vereinfachten PageRank-Verfahren
x v = ∑ A vu x u
(1.1)
mit
u
⎧1 / Nu wenn u auf v zeigt
A vu = ⎨
⎩ 0 sonst
Die Matrix A heißt spaltenstochastisch: Die Summe der Elemente in jeder Spalte ergibt 1.
(s. Aufgabe 2.2 für eine einfache Folgerung daraus)
Beispiel: Wir betrachten ein minimales WWW-Universum aus 5 Websites mit folgender Linkstruktur:
1
5
2
3
4
⎛0
⎜
⎜0
x = Ax = ⎜ 13
⎜
⎜ 13
⎜1
⎝ 3
1 0
1
2
0 1
0 0
0
1
2
0 0
0
0 0
0
1⎞
⎟
0⎟
0 ⎟x
⎟
0⎟
⎟
0⎠
Der PageRank-Algorithmus hat einen konvergierten Endzustand x erreicht, wenn die Anwendung von A wieder x liefert.
Kennen wir also den Eigenvektor der Matrix A zu Eigenwert λ=1, so haben wir das HenneEi-Problem zur Bedeutungsfindung gelöst! Die Web-Crawler, die für Google das gigantische
WWW durchsurfen erledigen also periodisch eine gigantische Eigenwertaufgabe (letze Zählung: 3 Mrd. Webseiten)
"PageRank relies on the uniquely democratic nature of the web by using its vast link structure
as an indicator of an individual page's value. Google interprets a link from page A to page B as
a vote, by page A, for page B. But, Google looks at more than the sheer volume of votes, or
links a page receives; it also analyzes the page that casts the vote. Votes cast by pages that
are themselves 'important' weigh more heavily and help to make other pages 'important'."
http://www.google.com/technology
[vast = enorm, ausgedehnt; to cast a vote = eine Stimme abgeben]
Weitere Anwendungsfelder von Eigenwert und Eigenvektor:
© W. Konen
Vorlesung-SGM-ext.doc
Seite 4
Prof. Dr. Wolfgang Konen
Spez. Gebiete der Mathematik
A10000
05.10.2009
•
Wie berechnet man
•
Welches Mischungsverhältnis stellt sich, ein, wenn bestimmte Reaktions-DiffusionsVorgänge ablaufen?
1.1.2.
OHNE 10.000 Matrixmultiplikationen zu brauchen?
Wie findet man Eigenwerte und Eigenvektoren?
Die nachfolgende Definition und der Satz werden in Vorlesung motiviert:
Def D 1-2
Charakteristisches Polynom und Gleichung
A sei eine nxn-Matrix, E die nxn Einheitsmatrix. Dann heißt p(λ) = det( A - λ E) das
charakteristische Polynom zu A, bzw
det ( A - λ E) = 0
charakteristische Gleichung der Matrix A.
Satz S 1-1
Charakteristisches Polynom und Eigenwerte
Die (j-fachen) Nullstellen des charakteristischen Polynoms von A sind (j-fache) Eigenwerte der Matrix A. Zu jedem Eigenwert λi von A existieren Vektoren v
≠ 0 mit
A v = λi v
Nach Def D 1-1 sind die v die Eigenvektoren von A zum Eigenwert λi.
ANMERKUNGEN:
•
Wenn v ein Eigenvektor ist, so ist auch kv ein Eigenvektor für jedes k ≠ 0.
•
Wenn v und v Eigenvektoren zum Eigenwert λi sind, dann ist auch jede Linear(a)
(b)
kombination v = cv + dv ein Eigenvektor.
(a)
(b)
Wir haben also folgendes Rezept zur Bestimmung von Eigenwerten und –vektoren:
1. Finde alle Nullstellen des charakteristischen Polynoms, dies sind die Eigenwerte λi.
2. Für jeden Eigenwert λi löse man das LGS (A - λi E) v = 0, das immer mindestens
eine Lösung v ≠ 0 hat und das für einen mehrfachen Eigenwert auch mehrere linear
unabhängige Vektoren v als Lösung haben kann.
Ü
⎛ 0 .8 0 .1 ⎞
⎟⎟ aus
0
.
2
0
.
9
⎝
⎠
Übung: Bestimmen Sie die Eigenwerte und –vektoren der Matrix A = ⎜⎜
dem City – Factory Outlet-Beispiel! Welcher Gleichgewichts-Kundenvektor stellt sich also
ein?
© W. Konen
Vorlesung-SGM-ext.doc
Seite 5
Prof. Dr. Wolfgang Konen
Ü
Spez. Gebiete der Mathematik
05.10.2009
⎛ 5 − 6 − 6⎞
⎜
⎟
1 ⎟.
Übung: Bestimmen Sie die Eigenwerte der Matrix A = ⎜ − 1 4
⎜ 3 − 6 − 4⎟
⎝
⎠
Hinweis: Um nicht die Nullstellen eines Polynom 3. Grades suchen zu müssen, suchen Sie besser nach Werte μ ,
für die die Matrix A − μE keinen vollen Rang hat. [Wenn Sie nicht mehr wissen, was der Rang einer Matrix ist,
ist JETZT die richtige Zeit, das zu wiederholen!]
[Hachenberger05, S. 279]
Satz S 1-2
Eigenschaften von Eigenwerten
a) Die Eigenvektoren eines j-fachen Eigenwertes einer Matrix A bilden einen mindestens
eindimensionalen und höchstens j-dimensionalen Unterraum.
b) Die Matrizen A und AT haben dieselben Eigenwerte.
c) Hat die nxn-Matrix A n paarweise verschiedene Eigenwerte λi∈R, i=1,..n, dann
kann man vi, i=1,..n Eigenvektoren finden, so daß die Menge dieser Eigenvektoren
V={vi| vi ist Eigenvektor zu λi }
n
linear unabhängig ist (V ist eine Basis des R ).
d) Die Matrix A ist diagonalisierbar, wenn sie n verschiedene Eigenwerte hat.
Hier tauchen einige Begriffe auf (blau markiert), die ein wenig mehr Vorwissen in Linearer
Algebra erfordern. Wir werden uns dieses Vorwissen in Kap. 1.3 aneignen und dann wieder
auf diesen Satz zurückkommen.
1.2.
Flüsse in Graphen
Def D 1-3
Netzwerk und Flüsse
Ein Netzwerk ist ein Digraph (gerichteter Graph) mit höchstens einer Quelle q und einer
Senke s, in dem jeder Kante ki von k nach i genau eine Zahl cik ∈ R≥0, ihre Kapazität, zugeordnet ist.
Ein (zulässiger) Fluss ist Kantenbelegung fik ∈ R≥0, für die gilt
1. 0≤ fik ≤ cik
2. Kirchhoff'sches Gesetz: An jedem Knoten k ≠ q,s gilt:
Fluss in den Knoten k = Fluss aus dem Knoten k
∑ fki
=
i
∑ fok
o
BEACHTE: Wir notieren hier die Kantenbewertung fik für den Fluss von k nach i, also im Infki = A ki x i die Indizes,
dex Ziel zuerst, Start später. Warum? – Damit in Termen wie
∑
i
∑
i
über die summiert wird, zusammenstehen.
Im PageRank-Anwendungsfall ist der Fluß fki = A ki x i die Menge an Bedeutung, die über
Link von i nach k übertragen wird. Wenn wir der Konvention folgen, dass die Summe aller
© W. Konen
Vorlesung-SGM-ext.doc
Seite 6
Prof. Dr. Wolfgang Konen
Spez. Gebiete der Mathematik
Bedeutung im WWW Eins ergeben soll, also
05.10.2009
∑ x i = 1, dann ist cij=1 eine Kapazitätsvorgai
be, die jede denkbare Bedeutungsübertragung zu einem gültigen Fluss macht (klar?).
1.2.1.
Link-Farmen
Ow(n)
O
f
f
1
g
2
Link-Farm F
I
3
Iw(n)
(n Pages)
f
Web W
Abbildung 1.2: Beispiel-Web mit Link-Farm für Website g
Zur Definition einer Link-Farm: Zunächst gibt es nur das Web, das aus den Pages
{1,2,3,g}=W besteht. (Die Seiten 1,2,3 stehen dabei nur stellvertretend für beliebige
Webs W, es könnte genausogut {1,2,....,M,g} = W mit beliebig großem M lauten. Wir wollen allerdings voraussetzen, dass das Web keine unzusammenhängende Sub-Webs besitze, s. 2.4.1) Der Owner von g will die Bewertung seiner Seite steigern und baut dazu
eine Link-Farm F hinzu. Jede Page der Link-Farm F hat genau einen Outlink auf g und
genau einen Inlink von g. Kann er damit seine Bewertung steigern? Wenn ja, um wieviel?
Die empirische und theoretische Untersuchung hierzu ist einer studentischen Ausarbeitung vorbehalten, wir greifen hier exemplarisch anhand von Abbildung 1.2 einen einfachen Sachverhalt auf, um den Nutzen von Flüssen zu zeigen:
Denken Sie daran, dass Sie Flüsse im Graphen durch die Web-Matrix A darstellen können, z.B. O =
A ig x g
∑
i∈F
Ü
(1.) Begründen Sie, warum der Input I in die Link-Farm im stationären Zustand gleich ihrem Output O sein muss. Begründen Sie, warum jede Farm-Page die gleiche Bewertung f haben muss. Leiten Sie damit her:
x g = Ng f
worin xg
f
n
Ng
© W. Konen
Bewertung der Page g, für die die Farm ist
Bewertung jeder Link-Farm-Page
Anzahl der Farm-Pages = Größe der Link-Farm
Anzahl der Outlinks von Page g
Vorlesung-SGM-ext.doc
Seite 7
Herunterladen