Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Einführung in die Informationsverarbeitung Teil Thaller Stunde V: Zusammengefügte Bausteine: Google Manfred Thaller, Universität zu Köln Köln 10. Dezember.

Ähnliche Präsentationen


Präsentation zum Thema: "Einführung in die Informationsverarbeitung Teil Thaller Stunde V: Zusammengefügte Bausteine: Google Manfred Thaller, Universität zu Köln Köln 10. Dezember."—  Präsentation transkript:

1 Einführung in die Informationsverarbeitung Teil Thaller Stunde V: Zusammengefügte Bausteine: Google Manfred Thaller, Universität zu Köln Köln 10. Dezember 2010

2

3 Google - ein System URL Server URL Auflösung Sortieren PageRankSuchen Crawler Speicher Indizierer Barrels Anker Doc Index Repository LexikonLinks

4 Sergey Brin and Lawrence Page: The Anatomy of a Large-Scale Hypertextual Web Search Engine. Proceedings of the seventh World Wide Web Conference (WWW7), Brisbane, also in a special issue of the Journal Computer Networks and ISDN Systems, Volume 30, issues Vgl.: Ur Google 4

5 Entwickler: Sergey Brin, Lawrence Page. Name: "Google" Verballhornung von "Googol" ( = ). System verteilt auf viele kooperierende Rechner: Google operates what is probably the world's largest Linux cluster that puts many supercomputing centers to shame. Formalia 5

6 URL Server Crawler URL Server Doc Index Startet mit Anfangs URL. Liest weitere URLs aus einem Dokumenten-Index. Schickt URLs an Crawler um Seiten zu holen. Wichtig: Art der Suche im WWW (Tiefen v. Breitensuche). 6

7 Crawler Holen Web-Seiten. Speichern individuelle Seiten in Speicher-Subsystem. Mehrere Crawler! "Robots Exclusion Protocol" - "Wohlverhalten" Speicher 7

8 Indizierer I Liest Seiten aus dem Repository und dekomprimiert sie. "Parsed" jedes Dokument und verwandelt es in "Treffer", bestehend aus der Wortform. der Position innerhalb des Dokuments. einer relativen Fontgröße. Anzeige der Großschreibung. Treffer sind "fancy" (in URL, Überschrift, Anker Text oder Meta- Tag) oder "plain" (alle anderen Fälle). RepositoryIndizierer 8

9 Indizierer II Verteilt Treffer in "barrels", wobei ein sortierter Index entsteht. Extrahiert Links und speichert sie {Start URL, Ziel URL, Text} in Anker Datei. Erzeugt Lexikon Datei. Indizierer Barrels Anker Lexikon 9

10 Beispiel: Sequentielles Suchen Suchzeit jedes Namens entspricht Rang in der Liste. Durchschnittliche Suchzeit: n / 2. Laufzeit steigt mit der zu durchsuchenden Anzahl Rückverweis: Algorithmen: Laufzeit 1Clio 2Melpomene 3Terpsichore 4Thalia 5Euterpe 6Erato 7Urania 8Polyhymnia 9Kalliope

11 Beispiel: Binäres Suchen Laufzeit: ? Algorithmen: Laufzeit 1Clio 2Erato 3Euterpe 4Kalliope 5Melpomene 6Polyhymnia 7Terpsichore 8Thalia 9Urania

12 Beispiel: Binäres Suchen – Thalia Melpomene gleich – größer – kleiner Thalia? Terpsichore gleich – größer – kleiner Thalia? Thalia gleich – größer – kleiner Thalia? Algorithmen: Laufzeit 1Clio 2Erato 3Euterpe 4Kalliope 5Melpomene 6Polyhymnia 7Terpsichore 8Thalia 9Urania

13 Beispiel: Binäres Suchen Laufzeit steigt mit Logarithmus der zu durchsuchenden Anzahl. Algorithmen: Laufzeit 1Clio 2Erato 3Euterpe 4Kalliope 5Melpomene 6Polyhymnia 7Terpsichore 8Thalia 9Urania

14 1.linear. 2.logarithmisch. 3.exponentiell. Algorithmen: Laufzeit N=1N=10N=100N=

15 Relevanz? Verteilt Treffer in "barrels", wobei ein sortierter Index entsteht. Extrahiert Links und speichert sie {Start URL, Ziel URL, Text} in Anker Datei. Erzeugt Lexikon Datei. Indizierer Barrels Anker Lexikon 15

16 WordIds = Woridentifikationsnummern Entstehen, indem die Wortformen sortiert und durchnummeriert werden. Relevanz: ?

17 Erinnerung URL Server URL Auflösung Sortieren PageRankSuchen Crawler Speicher Indizierer Barrels Anker Doc Index Repository LexikonLinks

18 URL Auflösung I Barrels Anker URL Auflösung Links Doc Index 18

19 URL Auflösung II Liest Anker Datei. Verwandelt relative URLs in absolute. Verwandelt absolute URLs in Dokumenten IDs. Fügt Anker Text in einen vorwärts gerichteten Index ein, zusammen mit den Dokumenten IDs auf die der Anker zeigt. Erzeugt eine Link Datenbank, die Paare von Dokumenten IDs enthält. (Wird für die Errechnung der PageRanks verwendet!) 19

20 Sortierung Barrels Sortieren Verwandelt einen Index der Dokumenten Ids in einen "invertierten Index", sortiert nach Wort Ids. "Short barrel" - invertierter Index von Treffern in Titel- und Ankertags. "Full barel" - invertierter Index der Bodytags. Enthält Offsets der Dokumentenposition für jede Wort Id. (Nachbarschaftsberechnung / Positionsanzeige.) 20

21 Page Rank I Kann beschrieben werden als Modell des Verhaltens von Benutzern. Geht von einem "Zufallssurfer" aus, der von einer bestimmten Seite ausgeht und auf Links clickt. Er / Sie geht nie zurück und wird schließlich weitere Zufallsseite auswählen. Der "PageRank" ist die Wahrscheinlichkeit (p), dass der Surfer eine bestimmte Seite besucht. Die Wahrscheinlichkeit, dass BenutzerIn auf einer Zufallsseite landet ist 1-p. Links PageRank 21

22 Page Rank II Wir nehmen an: Auf Seite A zeigen die Seiten T 1... T n (zitieren sie also). C(A) ist die Anzahl der Links, die von Seite A ausgehen. d ist ein empirischer / arbiträrer Dämpfungsfaktor zwischen 0 und 1 (in Google 0.85?). Dann gilt: PR(A) = (1-d) + d ( PR(T 1 ) / C (T 1 ) PR(T n )/C(T n ) ) PageRanks stellen eine Wahrscheinlichkeitsverteilung dar; die Summe der PageRanks aller Seiten im Web ist also

23 Page Rank III Hoher PageRank kann anzeigen: Dass sehr viele Seiten auf eine Seite zeigen oder dass eine relativ kleine Anzahl von Seiten mit hohem PageRank auf diese Seite zeigen. 23

24 Erinnerung URL Server URL Auflösung Sortieren PageRankSuchen Crawler Speicher Indizierer Barrels Anker Doc Index Repository LexikonLinks

25 Repository Voller (HTML) Text jeder Webseite. Seiten werden komprimiert gespeichert (ZLIB). Format: Dokumenten Id. Dokumentenlänge. URL des Dokuments. Inhalt des Dokuments. 25

26 Anker Beschreibung der Verweise in den Seiten {Start URL, Ziel URL, Text} Laut Google oft genauere Beschreibung der Seiten, als die Seiten selbst. Können auch nicht-Texte berücksichtigen. Problem: Tote Links... 26

27 Links Datenbank aller Paare von Dokumenten Ids. Basis aller PageRank Berechnungen. 27

28 Doc Index Datenbank aller verarbeiteten Dokumente (Web Seiten) Organisiert als ISAM Datei. (Indexed sequential access mode.) Geordnet nach DokumentenId. Jeder Eintrag enthält: Status des Dokuments. Prüfsumme des Dokuments. Statistiken zum Dokument. Angabe ob Seite von Crawlern schon durchsucht wurde. Sonst Verweis auf Liste abzuarbeitender URLs. 28

29 Lexikon 29

30 Diagrammatische Darstellung: Zeiger: Ein Speicherinhalt eines Rechners verweist auf einen anderen. Zur Erinnerung: Zeiger AB

31 Speicher als karierte Zeile Datenstruktur im Speicher

32 Zahl in Bytes 0 bis 1 Zahl in Bytes 10 bis Datenstruktur im Speicher

33 Zeichen a in Byte 0 Zeichen q in Byte 11 a q Datenstruktur im Speicher

34 Zeiger in Bytes 0 bis 1 verweist auf Speicherblock, enthaltend xy, beginnend in Byte x y Datenstruktur im Speicher

35 Zeiger in Bytes 0 bis 1 verweist auf Speicherblock, enthaltend xy, beginnend in Byte 10. Zeiger graphisch x y

36 Zeiger verweist von einem Datenblock auf einen anderen. * Zeiger graphisch

37 ergo: Lexikon 37

38 Barrels I Datenbank des Inhalts aller verarbeiteten Dokumente (Web Seiten) Beginnt mit einem Index von Dokumenten Ids, wird danach zu einem Index der Wort IDs sortiert. Die Suchmaschine sucht zuerst in den "short barrels" nach Treffern (Titel und Anker), erst danach in den "full barrels". 38

39 Barrels II 39

40 Google - ein System URL Server URL Auflösung Sortieren PageRankSuchen Crawler Speicher Indizierer Barrels Anker Doc Index Repository LexikonLinks

41 Suche I Besonderheiten der Googlesuche: Google analysiert nicht nur die Wortformen, sondern auch ihren (auch graphischen) Kontext. Jede Trefferliste enthält Informationen über die Position, den Schrifttyp und die Großschreibung. Zudem wird zwischen "fancy" und "plain" unterschieden - und der PageRank wird berücksichtigt. Ausgewogenheit zwischen diesen Faktoren. 41

42 Suche II – Abfragebearbeitung 1.Abfrage "parsen". 2.Worte in WortIds verwandeln. 3."Short barrel" auf Anfang der Dokumentenliste für jedes Wort der Abfrage positionieren. 4.Dokumentenliste durchsuchen, bis es Dokument gibt, dass alle Suchterme enthält. 5.Rang dieses Dokuments berechnen, relativ zu den anderen, die die Bedingungen erfüllen. 6.Wenn wir mit der Bearbeitung der "short barrels" fertig sind, wiederhole Schritt 3 ff. sinngemäß für die "full barrels". 7.Wenn wir noch nicht am Ende der Dokumentenliste sind, gehe zu Schritt 4. 8.Gefundene Dokumente nach Rang sortieren und n beste mitteilen. 42

43 Suche III – Ranking, Einzelwort 1.Trefferliste erstellen. 2.Jedem Treffer Typ {Überschrift, Anker, URL, Großer Font, Kleiner Font...}, mit spezifischem Typwert, zuweisen. 3.Vector der Typen-Gewichte in der Reihenfolge der Typen erzeugen. 4.Typen zählen und Häufigkeiten in Häufigkeitsgewichtungen verwandeln. 5.Häufigkeitsgewichtung normalisieren, am Anfang linear, dann abnehmend. 6.Gewichtungsrang entspricht dem Skalarprodukt aus dem Vektor der Typengewichte mit dem Vektor der Häufigkeitsgewichte. 7.Kombination aus Gewichtungsrang und PageRank ergibt endgültigen Rang des Dokuments. 43


Herunterladen ppt "Einführung in die Informationsverarbeitung Teil Thaller Stunde V: Zusammengefügte Bausteine: Google Manfred Thaller, Universität zu Köln Köln 10. Dezember."

Ähnliche Präsentationen


Google-Anzeigen