Einführung

Werbung
Kapitel 1
Einführung
Wir erörtern als erstes verschiedene Möglichkeiten, die Knoten in einem Graphen ausgehend von ihrer strukturellen Lage adäquat zu bewerten. Die hierfür
definierten Bewertungsmaße beschreiben bzgl. unterschiedlicher Kriterien, wie
sehr die von den Knoten repräsentierten Objekte im Mittelpunkt des Geschehens
stehen oder aber periphere Erscheinungen sind. Da diese Bewertungen, die sogenannten Zentralitäten auch von der Größe der betrachteten Graphen abhängen,
werden anschließend einige Ansätze zur Normierung vorgestellt. Dadurch sollen diese Abhängigkeiten entfernt werden, was es ermöglicht, Zentralitäten von
Graphen unterschiedlicher Grösße zu vergleichen.
1.1
Zentralitäten in Graphen
Eine gegebene reale Situation soll auf ein Modell abgebildet werden, das die
strukturellen Eigenschaften respektiert, und für das bereits ausgereifte Analysemöglichkeiten existieren. Geeignet ist hierfür ein Graph G = (V,E), bestehend
aus einer Menge Knoten V und einer Menge Kanten E.
Die reale, also die zu modellierende Situation ist z.B. ein soziales Netzwerk
oder das WWW. In einer Gruppe von Personen gibt es nun z.B. mehr oder weniger herausragende Persönlichkeiten, im WWW Websites mit unterschiedlicher
Informationsqualität. Eine solche intuitive Beurteilung der in den verschiedenen Fällen beteiligten Objekte soll nun durch eine explizite Zuordnung eines
Maßes konkretisiert werden. Dieses Maß ordnet dann jedem Objekt, bzw. dem
diesem Objekt entsprechenden Knoten, eine (i.a. nicht negative) reelle Zahl zu.
Dabei wird nur die nach der Modellierung der ursprünglichen Situation noch
vorhandene Information herangezogen, d.h. nur strukturelle Eigenschaften (des
Graphen) werden berücksichtigt.
1
Ein Zentralitätsmaß Z (auch Zentralitätsindex oder Zentralität) ist
also eine Abbildung
Z : V −→ R+
0 , vi −→ Z(vi ), i = 1, . . . , n.
Ein Spaltenvektor, dessen Komponenten die Zentralitätswerte sämtlicher
Knoten enthalten, sei bezeichnet durch Z(G), d.h.
Z(G) := (Z(vi ), ..., Z(vn ))
Diesen Vektor bezeichnen wir als Zentralitäts-Vektor.
−→ Die hier vorgestellten Zentralitätsmaße sollen die Eigenschaft haben, dass
der Zentralitätswert Z(vi ) eines Knotens vi , umso höher ist, je größer das
Ansehen, die Popularität, der Status, die Prominenz, die Wichtigkeit eines
durch einen Knoten vi repräsentierten Objektes bzgl. unterschiedlicher
Bewertungskriterien ist.
Es ist darauf zu achten, dass die Modellierung einer Situation ausschließlich
mit Beziehungen des gleichen Typs geschieht. Kombinationen von Beziehungen
wie Vorgesetztenverhältnis und Freundschaft führen nicht zu sinnvollen Ergebnissen.
Bevor wir die Graphen bewerten können, wollen wir an ihnen zunächst einige
Transformationen durchführen. Durch diese Vereinfachungen geht keine für die
Bewertung relevante Information verloren:
• Schleifen eliminieren
• Mehrfachkanten eliminieren: In nicht einfachen Graphen auftretende Mehrfachkanten werden durch eine entsprechende Kantengewichtung zu einer
Kante zusammengefasst.
• für alle im folgenden betrachteten Graphen G = (V,E), sei
| V |= n, | E |= m und
A = (aij ) im ungewichteten Graphen bzw.
W = (wij ) im gewichteten Graphen die Adjazenzmatrix von G.
• 1 := (1, ..., 1)T sei der mit Einsen gefüllte Spaltenvektor und I die Einheitsmatrix jeweils passender Dimension.
Im folgenden wollen wir nun erst einmal zwei grundsätzlich verschiedene
Ansätze zur Bewertung der Knoten eines Netzwerkes, und damit der Definition
von Zentralitätsindizes betrachten:
2
1.1.1
Nachbarzentralitäten
Zum einen bestimmen wir den Zentralitätswert Z(vi ) eines Knotens vi in Abhängigkeit von seinen Nachbarn vj und/oder deren Zentralitätswerten Z(vj ). Ein hoher
Zentralitätswert Z(vi ) wird dabei beispielsweise erreicht werden, wenn besonders viele und/oder besonders hoch bewertete Knoten vj in der Nachbarschaft
von vi liegen.
1.1.2
Entfernungszentralitäten
Zum anderen werden wir den Zentralitätswert eines Knotens vi , abhängig von
seiner Entfernung zu den anderen Knoten eines Netzwerkes bestimmen. Dabei
werden wir nur ungerichtete Graphen betrachten. Ein hoher Zentralitätswert
Z(vi ) wird dabei beispielsweise erreicht werden, wenn vi zu den anderen Knoten
kleine Abstände hat oder auf vielen sie verbindenden kürzesten Wegen liegt.
3
Kapitel 2
Popularitätsindex P
Intuitive Herleitung von P durch Betrachtung folgendes sozialen Netzwerks:
• n Individuen führen eine Abstimmung wie folgt durch:
• jedes Individuum kann gewählt werden
• jedes Individuum kann jedes andere Individuum entweder wählen oder nicht
(1 oder 0)
−→ jedes Individuum kann höchstens n-1 Stimmen abgeben und n-1 Stimmen
erhalten
−→ Ziel: jedem der Individuen eine von dieser Abstimmung abhängige Zentralitätsbewertung zuordnen
−→ Graph modellieren G = (V,E) mit V = v1 , ..., vn (beteiligte Individuen)
und (vi , vj )E gdw. ,,vi wählt vj “
−→ Adjazenzmatrix A von G:
aij =
1, (vi , vj )E
0,
sonst
−→ es ergibt sich intuitiv: P (vi ) = din (vi ) für alle vi E (Popularitätsindex ist
also lokal bestimmt)
Pn
−→ din(vi) = j=1 aji
−→ Es ergibt sich der Popularitäts-Vektor von G: P (G) = 1T A
−→ P (vi ) ist von der Anzahl der Nachbarn von vi abhängig −→ Nachbarschaftszentralität
−→ P (vi ) beschreibt die Anzahl der Knoten der Entfernung 1 −→ Abstandszentralität
4
Kapitel 3
Nachbarzentralitäten
3.1
Status-Index S
(Leo Katz 1953)
−→ Ausgangspunkt: G, A, P (G)
−→ aber bei S(vi ) wird nicht nur berücksichtigt, wie viele Stimmen vi erhält ,
sondern auch, von wem vi gewählt wird (d.h. auch der Status derjenigen,
die vi gewählt haben)
Satz: Ist A die Adjazenzmatrix eines ungewichteten, einfachen Graphen ohne
Schleifen, so ist (A1 )ij die Anzahl der Wege der Länge 1 von vi nach vj
−→ aik ∗ akj = 1 gdw. ,,vi wählt vk und vk wählt vj “; also: die Spaltensummen
von A2 sind die jeweils für eine Person über Wege der Länge 2 indirekt
abgegebenen Stimmen.
−→ der Status-Index ergibt sich nun aus der Aufsummierung der Spaltensummen von A, A2 , A3 , A4 , usw., die passend gewichtet werden, um die geringere Effektivität von weniger direkter Zustimmung zu berücksichtigen:
S(G) = 1T T wobeiT := ϕA + ϕ2 A2 + ϕ3 A3 + · · ·
• um hier Konvergenz zu erreichen, kann ϕ nicht beliebig gewählt werden
Satz: Sei A Adjazenzmatrix eines Graphen G,
0 < ϕ ∈ R, λmax
der größte Eigenwert von A. Dann gilt:
λmax <
1
gdw.ϕA + ϕ2 A2 + ϕ3 A3 + · · · konvergiert
ϕ
5
⇒T
⇒T
⇒T
⇒T
⇒I
⇒I
⇒I
⇒ (T + I)−1
⇒T +I
⇒T
=
=
=
=
=
=
=
=
=
=
⇒ S(G) =
⇒ S(G) =
⇒ S(G) =
⇒ S(G) =
ϕA + ϕ2 A2 + ϕ3 A3 + · · ·
(I + ϕA + ϕ2 A2 + · · ·) ∗ ϕA
(I + T ) ∗ ϕA
ϕA + ϕT A
T − ϕT A + I − ϕA
T ∗ I − ϕT A + I 2 − I ∗ ϕA
(T + I) ∗ (I − ϕA)
I − ϕA
(I − ϕA)−1
(I − ϕA)−1 − I
1T ∗ T
1T ∗ (ϕA + ϕT A)
1T ∗ ϕA + 1T ∗ ϕT A
ϕ ∗ P (G) + ϕ ∗ S(G) ∗ A
also: das Statusmaß S eines Knoten vi bestimmt sich also als die mit Faktor
ϕ gewichteten Summe der Statusmaße der zu ihm adjazenten Knoten und seines
eigenen Popularitätsindexes.
3.2
Hubbell-Index
(Charles H.Hubbell 1965)
Der Hubbel-Index dient, änlich wie der Status-Index, zur Darstellung sozialler Netze. Hierbei können auch äußere Einflüsse miteinbezogen werden. Deswegen ist der Index für gerichtete, gewichtete Graphen.
Gegeben ist also ein gewichteter Graph G = (V, E) und eine gewichtete
Abbildung c : E → R+ , die jeder Kante einen positiven reellen Wert zuordnet.
Für den Graphen G gibt es die Adjazenzmatrix W , für die gilt:
c(vi , vj ) , falls vi vj beeinflußt
wij =
0
, sonst
Außerdem gelten noch folgende Formeln:
H(vi ) = qi + (xi1 + · · · + xin )
xij = wij ∗ H(vj )
Wobei qi der äußere Einfluss auf den Knoten vi ist und xij der Anteil des
Knoten vj auf vi ist.
6
H(vi )
= qi + (wi1 ∗ H(v1 ) + · · · + win ∗ H(vn ))
n
X
= qi +
wij ∗ H(vj )
j=1
Für den ganzen Graphen gilt also:
H(G)
(H(v1 ), · · · , H(vn ))


n
n
X
X
= q1 +
w1j ∗ H(vj ), · · · , qn +
wnj ∗ H(vj )
=
j=1
=
j=1


n
n
X
X
(q1 , · · · , qn ) + 
w1j ∗ H(vj ), · · · ,
wnj ∗ H(vj )
j=1
H(G)
j=1
= q + W ∗ H(G)
(3.1)
Durch Umformung erhalten wir
H(G)
=
(I − W )−1 ∗ q
(3.2)
Wie beim Status Vektor S mußfür den größten Eigenwert φmax von W gelten:
φmax < 1 (Satz 3.1).
Der Nachteil bei Hubbel ist, die wilkürliche Annahme des externen Beeinflußungsvektor q.
3.3
Standardzentralität B
(Bonacich 1972)
• nur bei symmetrischen Strukturen (z.B. Freundschaftsgraph)
• also: ungerichteter Graph G
• weiterhin soll G ungewichtet und zusammenhängend sein
• n Individuen, deren freundschaftlichen Beziehungen untereinander bekannt
sind
→ G = (V,E) → Adjazenzmatrix A mit
1 , falls vi und vj befreundet sind
aij = aji =
0 , sonst
• Bestimmung von B durch Bestimmung der kleinsten quadratischen Abweichung:
7
• S : V → R+
0 gesucht, so dass Si := S(vi ), i = 1, ..., n, die Tendenz des vi
beschreibt, Freundschaften mit den anderen der betrachten Gruppe
einzugehen
• Für i = 1,...,n sollte das Produkt Si ∗ Sj dabei jeweils ,,nahe“ bei dem
Wert der tatsächlichen Bindung zwischen vi und vj , nämlich aij liegen
• Gesucht wird Vektor S := S(G), der die Summe der quadratischen Differenzen zwischen S T S und A minimiert, also: suche S = (S1 , ..., Sn )
mit:
n X
n
X
(Si ∗ Sj − aij )2
i=1 j=1
minimal;
• demnach errechnet sich S als Eigenvektor zum größten Eigenwert b von
A, wobei die Länge von S auf b normiert wird
→ B(G) := S
3.4
Verhandlungszentralitäten
Es wird ein gerichteter ungewichteter Graph betrachtet, der ein Netzwerk mit
Verhandlungspartnern darstellt. Es ist klar das man selbst ein stärkere Verhandlungspartner ist, wenn man nur mit schwächeren verhandelt und umgekehrt.
Deswegen wird auch das Zentralitätsmaßvon den Nachbarn beeinflußt.
Wir betrachen deswegen einen gerichteten ungewichteten Graphen G mit
V , der Menge der Verhandlungspartner und E die Menge der in Verhandlung
stehenden Leute. Dabei gibt es die Adjazenzmatrix A mit
1 , falls vi mit vj verhandelt
aij =
0 , sonst
Dadurch gilt für die Verhandlungszentralität von vi
V (vi ) =
n
X
(α + β ∗ V (vj )) ∗ aij
j=1
wobei
• α die Anzahl der Nachbarn mit denen vi in Verhandlung steht berücksichtigt
• β den Grad, wie stark vi von seinen Nachbarn beeinflußt wird
ist. α und β werden vorher vom Betrachter festgelegt und können nicht berechnet werden.
Damit vi von starken Verhandlungspartnern geschwächt wird, mußβ negativ
sein. Denn nur so verringert sich das Zentralitätsmaßvon vi in der Berechnung.
Für den kompletten Graphen erhalten wir die Formel
V (G) = α(I − βA)−1 ∗ A
8
3.5
PageRank R
(Sergey Brin/ Lawrence Page 1998)
• stellten den Prototyp der WWW-Suchmaschine GOOGLE vor
• um aus den auf Anfragen oft unzähligen Antworten möglichst qualitativ hochwertige auszuwählen, die dem Suchenden dann als ,,erste Wahl“ präsentiert werden, wird bei GOOGLE das Zentralitätsmaß R benutzt
• dieses bewertet alle Seiten des WWW aufgrund ihrer strukturellen Position
in dem durch die Hyperlink - Struktur des WWW gegebenen Graphen G
• Reihenfolge der Präsentation der Seiten eines Suchergebnisses ergibt sich
durch die Sortierreihenfolge des PageRank - Vektors R(G):
1 falls vi einen Hyperlink zu vj enthält
• → aij =
0 , sonst
• damit eine Seite nicht scheinbar eine hohe Qualität erhält (unzählige Links
von Seiten EINER Person), ist deswegen nach einem Zentralitätsmaß gefragt, das bei der Indexierung einer Webseite die gesamte Webstruktur
berücksichtigt, d.h. ein global bestimmtes Maß
• WWW- Surfer:
• startet auf beliebiger Seite
• wechselt nun unaufhörlich die Webseite (mit Wahrscheinlichkeit q [0, 1]
klickt er zufällig einen der Links auf aktueller Seite an/ mit Wahrscheinlichkeit p = 1 - q ruft er zufällig eine völlig neue Seite auf
• Wahrscheinlichkeiten gleich verteilt
• für einen Surfer, der sich auf vj befindet, ergibt sich die Wahrscheinlichkeit
(q∗a )
P(j,i) = np + dout (vjij ) von vj nach vi zu wechseln; mit:
• n = Anzahl Seiten insgesamt
• dout (vj ) = Anzahl ausgehender Links auf Seite vj
• aji = Anzahl Links auf vj , die auf die Seite vi zeigen ({0, 1})
• dout (vj ) 6= 0 wird angenommen, um 00 zu verhindern; befinden sich auf
(q∗a )
vj keine Hyperlinks, so definieren wir dout (vjij ) := 0
• um unser Zentralitätsmaß definieren zu können, benötigen wir noch einen
Parameter λ, der uns die Existenz einer von Null verschiedenen Lösung
garantiert
9
• PageRank von vi bestimmt sich nun im wesentlichen als Summe der PageRanks aller Seiten vj , jeweils gewichtet mit der Wahrscheinlichkeit P(j,i),
d.h.:
ll → λR(vi )
⇒ λR(vi )
=
=
n
X
j=1
n
X
j=1
(P (j, i) ∗ R(vj ))
((
q ∗ aji
p
+
) ∗ R(vj ))
n dout (vj )
(3.3)
(3.4)
(3.5)
P
so dass λ maximal und ||R(G)||1 := k R(vk ) = 1. Um das Auftreten von
0
0 zu verhindern:
1
, falls i = j und dout (vi ) 6= 0
−1
d
(v
)
out
i
Somit ergibt sich
(Dr )ij =
0,
sonst
in Matrixdarstellung wegen ||R(G)||1 = 1 also:
ll → λR(G) = (p/n ∗ 1 ∗ 1T + q ∗ Dr−1 ∗ A)T ∗ R(G)
⇒ λR(G) = (X + A0 )T ∗ R(G)
(3.6)
(3.7)
wo X := np ∗ 1 ∗ 1T und A0 := q ∗ Dr−1 ∗ A
−→ R (G) ist also Eigenvektor zum größten Eigenwert von (X + A0 )T
3.6
Authorities und Hubs
(Jon M. Kleinberg 1998)
Die ist ein anderes Zentralitätsmaßzum Beurteilen der Qualität von Webseiten. Es werden eigentlich zwei Zentralitätsmaße benutzt, die sich allerdings
gegenseitig beeinflußen.
• Seiten mit guten Informationen, für Suchende also wichtig, nennt man
Authorities.
• Seiten die auf viele Authorities verweisen, ein Suchender also von ihnen
schnell auf Informationen kommt, nennt man Hubs.
Betrachtet man nun einen Subgraphen des WWW G, mit V die Menge der
WWW-Seiten und E die Menge der Links. So bekommt man eine Adjazenzmatrix A vom Graphen G, für die gilt:
1 , falls vi einen Links auf vj besitzt
aij =
0 , sonst
Nun ist folgende Beurteilung durchzuführen:
• gute Authorities werden von guten Hubs gelinkt
10
• gute Hubs linken auf viele gute Authorities
Es ist also ein iterativer Algorithmus, der die Beurteilung ausrechnet. Allerdings mußman die Schritte der Iteration angeben, die maximal ausgeführt
werden sollen, denn sonst würde der Algorithmus ewig weiterrechnen. Also wäre
es am sinnvollsten wenn die Werte konvergieren würden.
• λKA (G) = (AT A)KA (G)
• λKH (G) = (AAT )KH (G)
11
Kapitel 4
Entfernungszentralitäten
4.1
Stresszentralität ST
(Shimbel, 1953)
• nur für ungerichtete Graphen sinnvoll
• für die Bestimmung von ST eines Knotens vi wird die Anzahl sämtlciher
Kürzester Wege von Knotenpaaren {vj , vk }, j, k 6= i bestimmt, auf denen
vi liegt.
• ST (G) ergibt sich also durch Aufsummieren der durch vi führenden kürzesten
Wege aller Knotenpaare, d.h. ist gjk (vi ) die Anzahl zu den Knoten vj und
vk gehörender kürzester Wege (es kann auch mehrere kürzeste Wege geben
zwischen zwei
P Knoten!), auf denen vi liegt, so gilt:
ST (vi ) = vj 6=vi 6=vk V gjk (vi )
• ST (G) = (ST (v1 ), · · · , ST (vn ))
• Beachte: der ,,zentrale“ Knoten eines Sterns mit n Knoten erreicht nicht den
maximal möglichen Stresszentralitätswert in einem Graphen mit n Knoten
4.2
ZwischenZentralitäten
(Anthonisse 1971)
Die Stresszentraliät kann nur in Graphen benutzt werden wo es immer nur
einen kürzesten Weg zwischen zwei Knoten gibt. Wenn es aber mehrere kürzeste
Wege gibt, hackt es. Dafü gibt es die Zwischenzentralitẗ ZW . Hier können mehrere kürzete Wege betrachtet werden und anteilig in die Zentralität eingerechnet
werden. Er sagt dann aus wie wahrscheinlich ein Knoten vi Einfluss auf die Komunikation zwischen vj und vk hat, wenn er auf einem der kürzesten Wege
liegt.
12
Den Einflußvon vi auf die Komunikation von vj und vk bezeichnen wir als
bjk (vi ). Berechnet wird es wie folgt,
bjk (vi ) =
gjk (vi )
gjk
wobei gjk die Anzahl aller kürzesten Wege ist und gjk (vi ) die Anzahl der
kürzesten Wege auf denen vi liegt.
Das ZentralitätsmaßZW für vi brechnet sich dann folgendermaßen
X
ZW (vi ) :=
bjk (vi )
vj 6=vj 6=vk ∈V
für den gesamten Graphen
ZW (G) = (ZW (v1 ), · · · , ZW (vn ))
4.3
Abstandszentralität AB
(Sabidussi, 1966)
• nur für zusammenhängende, ungerichtete Graphen sinnvoll
• der gesamte Abstand eines Knotens vi zu den anderen Knoten wird für AB(vi )
bestimmt und daraus unser gewünschtes Maß berechnet
• der Abstand oder die Entfernung zweier Knoten ist dabei die Länge eines
kürzesten Weges zwischen diesem Knotenpaar.
• Gesamtabstand von vi zu den anderen Knoten ist die Summe der Einzelabstände
• Knoten, die zu den anderen Knoten einen geringen Gesamtabstand haben,
sollen ein hohes Maß an Abstandszentralität erhalten
• Bezeichnen wir die Länge eines kürzesten Weges eine Knotenpaares vi , vk mit
dist(vi , vk ), so definieren wir:
1
dist(v
i , vk )
i=1
AB(vk ) = Pn
−→ AB(G) = (AB(v1 ), · · · , AB(vn ))
13
Kapitel 5
Normierung
Nachdem man nun den Zentralitätsvektor ausgerechnet hat, steht man vor dem
Problem was diese Zahlen eigentlich aussagen. Wenn z.B. ein Knoten den Popularitätsindex 4 hat P (vi ) = 4, ist das in einem Netzwerk mit 5 Knoten der
maximale Index den man bekommen kann. Aber in einem Netzwerk mit 100
Knoten ist das wenig. Es fehlt auch die Mglichkeit Werte aus verschieden Netzwerken zu vergleichen. Da setzt nun die Normierung an. Es gibt folgende drei
Normierungen
äußere Relativ-Zentralität
innere Relativ-Zentralität
prozentuale Relativ-Zentralität
5.1
äußere Relativ-Zentralität
Hier wird der Zentralitätvektor mit dem maximal möglichen Wert verglichen.
Z1 (G) :=
5.2
Z(G)
Zmax (n)
innere Relativ-Zentralität
Hier wird der Zentralitätvektor mit dem maximal Wert aus dem Vektor verglichen.
Z(G)
Z2 (G) :=
maxZ(G)
14
5.3
prozentuale Relativ-Zentralität
Hier wird der Zentralitätvektor mit der Summe aller Werte aus dem Vektor
verglichen.
Z(G)
Z3 (G) :=
sumZ(G)
15
Herunterladen