Patrick Claus
Transcription
Patrick Claus
Patrick Claus FAU ErlangenErlangen-Nürnberg BA Anglistik & Computerlinguistik 22. Dezember 2011 Einleitung - Die ersten Suchmaschinen im Web: World Wide Web Worm und Webcrawler - Bereits 1997 wurden über 100 Millionen WebDokumente indiziert. Man geht inzwischen von mindestens einer Billion aus, einen ersten Forschungsbericht soll es im Frühjahr 2012 geben. - Google soll ca. 140 Millionen Suchanfragen/Tag bearbeiten. (Aber auch Bot-Queries, etc..) Problematik von Suchanfragen - 1994 ging man davon aus, dass ein vollständiger Such- Index über alle Seiten ausreicht, um Informationen zu finden. - Problembildung: Gewichtung zwischen „brauchbarer“ Information und „Junk results“? - Seitenanzahl steigt drastisch; User-Bereitschaft, Ergebnisse durchzusehen, bleibt gleich. (TOP-20) - Notwendigkeit eines Ratings oder Rankings um Präzision zu erhöhen. Pagerank zur Strukturierung des Webs - Vereinfachte Definition: Verwendung der Link- Strukturen innerhalb des Webs zur qualitativen Ranglisten-Erstellung von Websites. - Hyperlinks beschreiben die Gewichtung von vorhandenen Zitierungen und formulieren damit einen subjektiven Wert von „Bedeutung/Wichtigkeit“ - Diese Bedeutung wird in ein Ranking umgewandelt, und ergibt damit den Pagerank von KeywordWebsuchen. Berechnung des Pageranks - 1 Der ursprüngliche Pagerank-Algorithmus lautet: PR(A) = (1 - d) + d ( PR(T1) / C(T1) + ... + PR(Tn) / C(Tn) ) PR(A) beschreibt den Pagerank einer Seite A PR(Tn) beschreibt den Pagerank von n Seiten T, die jeweils mit einem Link auf Seite A zeigen. C(Tn) beschreibt die Gesamtanzahl der Links auf Tn d beschreibt einen Dämpfungsfaktor zw. 0 und 1. Berechnung des Pageranks - 2 Eine zweite Version des PageRanks: PR(A) = (1 - d) / N + d ( PR(T1) / C(T1) + ... + PR(Tn) / C(Tn) ) PR(A) beschreibt den Pagerank einer Seite A PR(Tn) beschreibt den Pagerank von n Seiten T, die jeweils mit einem Link auf Seite A zeigen. C(Tn) beschreibt die Gesamtanzahl der Links auf Tn d beschreibt einen Dämpfungsfaktor zw. 0 und 1. N beschreibt die Anzahl aller Seiten im Web. Erläuterungen - Das Pagerank-Verfahren basiert also auf der Beziehung von einzelnen Websites zueinander. - Durch C(T) wird sichergestellt, dass die Anzahl der von T ausgehenden Links gewichtet wird. (Je mehr Links, desto geringer der Pagerank) - Zu beachten ist, dass das Pagerank-Verfahren ein Modell des typischen Benutzer-Verhaltens darstellt. - „Random-Surfer-Modell“: AbsprungWahrscheinlichkeit beim zufälligen Surfen durch d ausgedrückt. (Je höher d, umso mehr Links werden verfolgt) Beispiel--Berechnung Beispiel Simpel: d = 0.5 P(A) = 0.5 + 0.5 PR(C) A wegen Referenz von C P(B) = 0.5 + 0.5 (PR(A)/2) wegen Referenz von A und 2 ausgehenden Links von A. B C demnach auch P(C) = 0.5 + 0.5 ( PR(A)/2 + PR(B)) Pagerank für A? ⇒ P(A) = 0.5 + 0.5 ( 0.5 + 0.5 (PR(A)/2 + 0.5 + 0.5 (PR(A)/2))) ⇒ P(A) = 1.07692308 Die Summe aller Pageranks beträgt 3. Beispiel--Berechnung Beispiel Etwas komplexer: Eine Homepage verlinkt zu N Unterseiten, welche jeweils zurück zur Startseite linken. A B Home page C D d = 0.5 PR(A/B/C/D) = 0.5 + 0.5 ( PR(Home) / 4) da Homepage 4 Links besitzt PR(Home) = 0.5 + 0.5 ( PR(A)+PR(B)+PR(C)+PR(D) ) da jede Unterseite nur 1 Link besitzt Pagerank für Home? ⇒ PR(Home) = 0.5 + 0.5 ( 4 * (0.5 + 0.5(PR(Home/4) )) ⇒ P(Home) = 2 Iterative Berechnung In der Praxis: näherungsweise Berechnung. Zur Bestimmung von Seiten im Web laut Lawrence Page und Sergey Brin ca. 100 Iterationen nötig. Für simples Beispiel bereits nach ca. 14 Iterationen gutes Ergebnis sichtbar. Link Spamming - 1 => Künstliche Erhöhung des zugeteilten Rankings durch Aufbau von Link-Strukturen oder Netzwerken. Grundlegend existieren für den Spammer 3 Seiten-Typen: - Inaccessible pages (Kein Zugriff, aber Verlinkung möglich) - Accessible pages (Verwaltung durch Andere, Mod. möglich) - Own pages (Volle Kontextmanipulation) Die eigenen Seiten sind häufig als „spam farms“ definiert. Link Spamming - 2 Optimierung des PageRanks für eine Zielseite t : - Alle eigenen Seiten sind durch zugängliche Seiten erreichbar und werden damit durch Suchmaschinen ge-“crawled“. - Dies wird durch die minimale Anzahl an Links umgesetzt, um den Pagerank hoch zu halten. Link Spamming - 3 Zusammengefasst: - Alle n eigenen Seiten sind Teil der Spam Farm, maximieren damit die statische Komponente des PRs. - Alle m zugänglichen Seiten zeigen auf die Spam Farm, maximieren damit die „incoming links“-Komponente des PRs. - Links, die aus der Spam Farm herauszeigen werden unterdrückt, was die „outgoing links“-Komponente des PRs auf 0 drückt. Damit ist der Wert von t innerhalb der Spam Farm maximal, da: - alle verfügbaren und eigenen Seiten auf t zeigen, was den PRin(t) maximiert. - t auf alle weiteren, eigenen Seiten zeigt. Ohne diese Links würde t einen signifikanten Teil seiner Wertung verlieren und die eigenen Seiten würden von außerhalb der Farm unerreichbar werden. Link Spamming - 4 Strategien, um eine Anzahl an incoming links auf eine Zielseite zu sammeln: - „honey pot“: Einen Satz an Seiten erstellen, die wichtige Informationen, aber auch Sublinks zur Farm enthalten. - Web-directories infiltrieren - Blogs, Foren, Gästebücher, youtube, wikis... Vermeiden von Link-Spams? => Zugriffsrechte beschränken, Änderungen bestätigen lassen (Kommentare, etc), Sublinks überprüfen, Verlinkung von Seiten begrenzen, BadRanks, etc. Literatur Arvind Arasu, Junghoo Cho, Hector Garcia-Molina, Andreas Paepcke, and Sriram Raghavan. Searching the Web. Stanford University, 2001. Brin, S. and Page, L., The Anatomy of a large-scale hypertextual Web search engine. Stanford University, 1998. Z. Gyongyi and H. Garcia-Molina. Web spam taxonomy. Stanford University, Mar. 2004. Der Page-Rank Algorithmus: eFactory URL: http://pr.efactory.de/d-pagerank-algorithmus.shtml basierend auf Lawrence Page und Sergey Brin Zu den Beispielen: PageRank-Algorithmus URL: http://www.suchmaschinen-doktor.de/algorithmen/ pagerank.html Zur Implementation in Java: Erläuterungen von www.javadev.org