Algorithmische Methoden zur Netzwerkanalyse

Ähnliche Dokumente
Algorithmische Methoden zur Netzwerkanalyse

16. November 2011 Zentralitätsmaße. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87

Algorithmische Methoden zur Netzwerkanalyse

9. November ZHK in dynamischen Graphen Zentralitäten. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 67

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse

Graphenalgorithmen und lineare Algebra Hand in Hand Prof. Dr. Henning Meyerhenke

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 8, Henning Meyerhenke

Algorithmische Methoden zur Netzwerkanalyse

Algorithmische Methoden zur Netzwerkanalyse

Hyperlink Induced Topic Search- HITS. Ying Ren Universität Heidelberg, Seminar Infomation Retrieval

Thema 8: Verbesserte Suchstrategien im WWW. Bearbeiter: Robert Barsch Betreuer: Dr. Oliver Ernst

Algorithmische Methoden zur Netzwerkanalyse

Die Mathematik hinter Google

Die Mathematik hinter Google

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, Henning Meyerhenke

Kombinatorische Optimierung

die Relevanz von Webseiten bestimmt Alexander Pohl

Ranking Functions im Web: PageRank & HITS

Das Prinzip der Suchmaschine Google TM

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme

Diskrete Modellierung

Theoretische Überlegungen zur Ausbreitung von Infektionserregern auf Kontaktnetzen. Hartmut Lentz, Maria Kasper, Ansgar Aschfalk und Thomas Selhorst

Vorlesung Big Data Analytics in Theorie und Praxis Theorieteil

Das Pagerank-Verfahren (und Markovketten) 16. Dezember 2013

Algorithmen und Datenstrukturen

Kombinatorische Optimierung

8. Übung Algorithmen I

Eigenwerte und Netzwerkanalyse. Page Rank

10. Übung Algorithmen I

5 Suchmaschinen Page Rank. Page Rank. Information Retrieval und Text Mining FH Bonn-Rhein-Sieg, SS Suchmaschinen Page Rank

Algorithmische Methoden für schwere Optimierungsprobleme

15. Elementare Graphalgorithmen

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Wie Google Webseiten bewertet. François Bry

23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke

Ranking am Beispiel von Google (1998):

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke

Algorithmische Methoden für schwere Optimierungsprobleme

Vorlesungstermin 2: Graphentheorie II. Markus Püschel David Steurer. Algorithmen und Datenstrukturen, Herbstsemester 2018, ETH Zürich

Algorithmische Methoden zur Netzwerkanalyse Vorlesung 7, Henning Meyerhenke

Algorithmen und Datenstrukturen 2-1. Seminar -

7. Vorlesung. Bipartite Kerne Das kopierende Modell Bow-tie Struktur des Web Random Sampling von Web Seiten

Seien u, v V, u v. Da G zusammenhängend ist, muss mindestens ein Pfad zwischen u und v existieren.

Ein Index zur Berechnung von Zentralität in Koautornetzwerken

8. Vorlesung, 5. April Numerische Methoden I. Eigenwerte und Eigenvektoren

ADS: Algorithmen und Datenstrukturen 2

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Master Informatik

Vorlesung 4 BETWEENNESS CENTRALITY

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph

Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik

Algorithmische Graphentheorie

Algorithmische Methoden zur Netzwerkanalyse

Kombinatorische Optimierung

Motivation Kap. 6: Graphen

Algorithmische Methoden der Netzwerkanalyse

Vorlesung 2 KÜRZESTE WEGE

Berechnung von Abständen

1 Datenstrukturen Datenstrukturen und Algorithmen

Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik

51 Numerische Berechnung von Eigenwerten und Eigenvektoren

Algorithmen und Datenstrukturen

Gambler s Ruin. B ist die Bank ) 4/40

2. Repräsentationen von Graphen in Computern

DisMod-Repetitorium Tag 3

Google s PageRank. Eine Anwendung von Matrizen und Markovketten. Vortrag im Rahmen der Lehrerfortbildung an der TU Clausthal 23.

Algorithmische Methoden zur Netzwerkanalyse

Transkript:

Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische Informatik nationales Algorithmische Forschungszentrum Methoden in der Helmholtz-Gemeinschaft zur Netzwerkanalyse www.kit.edu

Vorlesung 8 Programm des Tages: Besprechung Übungsblatt 2, Aufgabe 6 : Eigenvektoren, PageRank 2 Henning Meyerhenke, Institut für Theoretische Informatik

Wiederholung Eigenschaften von Netzwerken: Gradverteilung k-kerne Clusterkoeffizienten (Dreiecke) Zusammenhang Durchmesser Eigenschaften von Knoten(paaren): Paarweise Abstände Kürzeste Wege Zuletzt: Algorithmus von Seidel für APSP Nun: ("Wie wichtig ist ein Knoten?") 3 Henning Meyerhenke, Institut für Theoretische Informatik

Zentralitäten Einführung Zentralitäten: Maße für die Bedeutung eines Knotens (oder evtl. auch einer Kante) in einem Netzwerk Beispiel Gradzentralität: Grad des Knotens Gibt einen Bonuspunkt für jeden Nachbarn Kann ein Indikator für die Bedeutung sein Frage: Was wird dadurch aber schlecht modelliert? 4 Henning Meyerhenke, Institut für Theoretische Informatik

Inhalt PageRank 5 Henning Meyerhenke, Institut für Theoretische Informatik

Nicht alle Nachbarn sind gleich wichtig Die Wichtigkeit einer Person in einem Netzwerk hängt auch von der Wichtigkeit seiner Nachbarn ab Wert der Nachbarn soll proportional eingehen in eigenen Wert Berechnung: Seien x der Zentralitätsvektor, x (0) sein initialer Zustand Aktualisierung eines Knotens: x (t+1) i = A ij x (t) j j Matrixnotation: x (t+1) = Ax (t) 6 Henning Meyerhenke, Institut für Theoretische Informatik

Exkurs: Eigenwerte und -vektoren (1) Definition (Eigenwert, Eigenvektor) Sei A eine symmetrische n n-matrix mit reellen Einträgen. Die Zahl λ heißt Eigenwert von A, wenn es einen Vektor z = 0 gibt, so dass Az = λz. Der Vektor z heißt Eigenvektor zum Eigenwert λ. Theorem (Eigenvektorbasis) Eine symmetrische reelle n n-matrix hat n unterschiedliche Eigenvektoren z 1,..., z n R n, die in R n eine Basis bilden. Ferner gilt z i z j für alle 1 i = j n. Der betragsmäßig größte Eigenwert ist nicht größer als eine induzierte Matrixnorm. 7 Henning Meyerhenke, Institut für Theoretische Informatik

Exkurs: Eigenwerte und -vektoren (2) Corollary Die Adjazenzmatrix A eines ungewichteten ungerichteten Graphen besitzt n unterschiedliche Eigenvektoren z 1,..., z n R n, die in R n eine Basis bilden. Ferner gilt z i z j für alle 1 i = j n. Die Eigenwerte von A liegen zwischen d max und d max, wobei d max den maximalen Knotengrad in G darstellt. Erinnerung zur iterativen Berechnung der EV-Zentralität: x (t+1) = Ax (t) Frage: Wie würden Sie das Ergebnis bei Konvergenz beschreiben? 8 Henning Meyerhenke, Institut für Theoretische Informatik

Darstellung in spektraler Form Lemma EV-Zentralität (EVZ) genügt Ax = κ 1 x. Daher ist x der Eigenvektor von A zum Eigenwert κ 1. Beweis: Siehe Tafel! EVZ von i ist proportional zur EVZ der Nachbarn: Beweis: Übung! x i = κ 1 EVZ kann groß sein, weil ein Knoten viele Nachbarn hat, die Nachbarn hohe EVZ haben oder beides 1 j A ij x j 9 Henning Meyerhenke, Institut für Theoretische Informatik

Eigenschaften der EVZ EVZ-Werte sind alle nicht-negativ (Beweis in Übung) EVZ ist prinzipiell anwendbar auf ungerichtete und gerichtete Netzwerke, aber: Problematisch bei gerichteten Netzwerken wegen unsymmetrischer Adjazenzmatrix Es gibt einen linken und einen rechten EV Welcher ist der richtige? Wichtiger ist, wie viele zu mir zeigen als zu wie vielen ich zeige der rechte EV ist sinnvoller 10 Henning Meyerhenke, Institut für Theoretische Informatik

EVZ in gerichteten Netzwerken Weiteres Problem: Knoten mit Eingangsgrad 0 haben EVZ 0 Problem: Das kann kaskadieren! Werte ungleich 0 bestenfalls in starken ZHK mit mind. 2 Knoten 11 Henning Meyerhenke, Institut für Theoretische Informatik

Berechnung der EVZ Sei G dünn besetzt. Frage: Warum berechnet man nicht A t und dann A t x (0)? Es gilt: A t i,j ist die Anzahl der Pfade der Länge t von i nach j in G. (Beweis: Selbstübung!) Matrix würde sich schnell auffüllen Fortgesetzte Matrix-Vektor-Multiplikation Potenzmethode, wird auch power method oder power iteration genannt 12 Henning Meyerhenke, Institut für Theoretische Informatik

Zu beachten bei der Potenzmethode Für die Bestimmung eines einzigen EV in dünnen Graphen effizient Startvektor darf nicht senkrecht zum Eigenvektor sein Lemma Die Einträge des führenden EV einer nicht-negativen Matrix haben alle dasselbe Vorzeichen. Corollary Wähle einen Startvektor, in dem alle Einträge dasselbe Vorzeichen haben! Normalisierung notwendig wegen Zahlengröße Frage: Wann ist Konvergenz erreicht? 13 Henning Meyerhenke, Institut für Theoretische Informatik

Konvergenz Eine Möglichkeit: Zwei verschiedene Startvektoren Nach Normalisierung in jeder Iteration (oder alle paar Iterationen) beide Vektoren vergleichen Funktioniert besonders gut, wenn sich die Vektoren von zwei unterschiedlichen Richtungen annähern Nach Konvergenz auch EW leicht zu berechnen: Dividieren eines Eintrags an demselben Index vor und nach der Iteration Achtung: Numerische Fehler möglich! 14 Henning Meyerhenke, Institut für Theoretische Informatik

Zeitkomplexität Komplexität des Algorithmus: Kosten pro Iteration Anzahl Iterationen (Konvergenzgeschwindigkeit) Kosten pro Iteration abhängig von Datenstruktur: Adjazenzmatrix: O(n 2 ) Adjazenzliste: O(m) Konvergenzgeschwindigkeit bestimmt von Eigenwerten Weiter an der Tafel! 15 Henning Meyerhenke, Institut für Theoretische Informatik

Inhalt PageRank 16 Henning Meyerhenke, Institut für Theoretische Informatik PageRank

PageRank Der Algorithmus, mit dem / durch den Google gegründet wurde Zutaten einer Suchmaschine (stark vereinfacht): Crawler Index Ranking The Anatomy of a Large-Scale Hypertextual Web Search Engine Sergey Brin and Lawrence Page Computer Science Department, Stanford University, Stanford, CA 94305, USA sergey@cs.stanford.edu and page@cs.stanford.edu Abstract In this paper, we present Google, a prototype of a large-scale search engine which makes heavy use of the structure present in hypertext. Google is designed to crawl and index the Web efficiently and produce much more satisfying search results than existing systems. The prototype with a full text and hyperlink database of at least 24 million pages is available at http://google.stanford.edu/ To engineer a search engine is a challenging task. Search engines index tens to hundreds of millions of web pages involving a comparable number of distinct terms. They answer tens of millions of queries every day. Despite the importance of large-scale search engines on the web, Google mit PageRank damals überlegen beim Ranking very little academic research has been done on them. Furthermore, due to rapid advance in 17 Henning Meyerhenke, technology Institut and für web Theoretische proliferation, Informatik creating a web search engine today is very different from three Beruhte auf years Algorithmus ago. This paper provides und an in-depth schneller description of Berechnung our large-scale web search engine -- the Algorithmische Methoden first such zur detailed Netzwerkanalyse public description we know of to date. Apart from the problems of scaling PageRank

Ideen hinter PageRank Bewertung von Webseiten anhand der Link-Struktur Je mehr Links auf eine Seite verweisen, desto wichtiger ist sie Ähnlich wie bei EV-Zentralität: Je wichtiger eine Seite ist, desto wichtiger ist ihr Verweis auf eine andere Seite 18 Henning Meyerhenke, Institut für Theoretische Informatik PageRank

Modell des Zufallssurfers Surfer bewegt sich zufällig im Webgraphen Er folgt dabei den ausgehenden Kanten mit gleicher Wahrscheinlichkeit (Klick auf Link) Außerdem kann man eine Seite verlassen, indem man sich wegteleportiert (eine neue URL im Browser eingibt) PageRank ist stationärer Zustand eines stochastischen Prozesses 19 Henning Meyerhenke, Institut für Theoretische Informatik PageRank

Die Mathematik hinter PageRank Zumindest ein wenig davon... Siehe Tafel! Verbindung zur ergibt sich aus der Umformung direkt, nur die Matrix ist eine andere! 20 Henning Meyerhenke, Institut für Theoretische Informatik PageRank

Zwischenfazit Mit entsprechender Hardware und Know-how kann man PageRank auch für große Graphen in akzeptabler Zeit berechnen Interessantes Maß, reichhaltige mathematische Analyse, in der Praxis nur ein Maß unter vielen Alternativer Algorithmus: Hubs and Authorities von Jon Kleinberg Netzwerkanalyse und das Engineering paralleler Algorithmen können einen reich machen 21 Henning Meyerhenke, Institut für Theoretische Informatik PageRank