PageRank-Algorithmus
Die Berechnung des PageRanks ist die Lösung eines linearen Gleichungssystems der Form
M * PR = ( 1 – d )
wobei 0 < d < 1 ein Dämpfungsfaktor, PR ein N-dimensionaler Vektor und M eine N x N-Matrix ist. N ist die Anzahl der Seiten des betrachteten Systems. Die i-te Komponente des Vektors PR, d.h. PRi, ist der PageRank der i-ten Seite. Die Matrix M setzt sich wie folgt zusammen
M = 1 – d T
wobei T die Übergangsmatrix beschreibt. Die Komponenten von T lassen ergeben sich aus der Anzahl der ausgehenden Links:
Tij= 1 / Cj (falls Seite j zu Seite i linkt)
Tij= 0 (sonst)
Cj ist die Anzahl von Links auf Seite j. Die Lösung des linearen Gleichungssystems ist
PR = M-1 * ( 1 – d )
Die Berechnung der inversen Matrix M-1 kann prinzipiell analytisch erfolgen. Für 0 < d <1 hat M keine Eigenwerte die Null sind, so dass die letzte Gleichung eine eindeutige Lösung hat. Für größere Dimensionen N ist es allerdings sinnvoll (d.h. weniger zeitaufwändig) die Berechnung numerisch vorzunehmen. Dies geschieht mittels eines Iterationsschemas. Das einfachste Verfahren ist die Jacobi-Iteration
PR{k+1} = ( 1 –d ) + d T * PR{k}
PR{k} bezeichnet den Wert des PageRank-Vektors in der k-ten Iteration. Als Startwert kann z.B. PR{0} = 1 genommen werden. Die Konvergenz des Verfahrens ist garantiert, da der größte Eigenwert von d T kleiner als 1 ist. Der Dämpfungsfaktor d bestimmt den Anteil des Pageranks, der weiter transferiert wird. Für d=1 wird alles weitergeleitet, für kleinere d erfolgt eine Dämpfung. Für Werte von d nahe 1 treten allerdings Konvergenzprobleme auf. Die Anzahl der Iterationen, bis das Ergebnis stabil ist, nimmt zu. Für eine reale Berechnung des PageRanks wären ca. 100 Iterationen nötig. Natürlich ist die genaue Anzahl auch von der Verlinkungsstruktur und der gewünschten Genauigkeit abhängig. Die Anzahl der Iterationen kann reduziert werden, wenn als Ausgangswert z.B. das Endergebnis der letzen Iterationen genommen wird (vorausgesetzt die Verlinkungsstruktur hat sich in der Zwischenzeit nicht grundsätzlich geändert).
Schreibt man die Gleichung in Komponenten und lässt die Bezeichnung für die Nummer der Iteration weg, so ergibt sich
PRi= ( 1 – d ) + d ( PRX1 / CX1 + …
+ PRXn / CXn )
Die letzte Gleichung wird oftmals auch als der PageRank-Algorithmus bezeichnet. Genau genommen ist allerdings nur ein Iterationsschema zur numerischen Lösung der obigen Matrixinversion. Die Jacobi-Iteration ist einfach, allerdings nicht das schnellste Verfahren. So konvergiert beispielsweise das folgende Iterationsschema (minimal residue)
PR{k+1} = PR{k} + R{k} ( ? Ri Mij Rj) /
( ? Min Rn Mij Rj)
mit
R{k+1} = R{k} – M * R{k} ( ? Ri Mij Rj) /
( ? Min Rn Mij Rj)
i.A. schneller. Daneben gibt eine Anzahl weiter Iterationsschemata zur Matrixinversion (s. z.B. A. S. Householder. “The Theory of Matrices in Numerical Analysis” New York, 1964) wie Gauss-Seidel, Überrelaxationsverfahren, Konjugierte-Gradienten-Verfahren, Präkonditionierung, Multigrid und Blocking Techniken or Chebyshev. Allerdings sind einige dieser Methoden auf hermitesche Matrizen beschränkt.
In einigen Fällen wird alternativ auch das Gleichungssystem
M * PR = ( 1 – d ) / N
betrachtet. Offensichtlich ergibt sich der gleiche Lösungsvektor nur mit einer anderen Normierung ( 1 / N ).
Einen Sonderfall stellt der Fall d=1 (d.h. keine Dämpfung) dar. In diesem Fall wird der Eigenvektor der Matrix T mit dem Eigenwert eins gesucht. Das Problem sind degenerierte Eigenwerte. Diese treten immer auf, falls die Verlinkungsstruktur so ist, dass nicht jede Seiten von jeder anderen aus erreicht werden kann. Dies ist der Fall, wenn es tote Enden gibt (d.h. Seiten ohne ausgehende Links) oder geschlossene Strukturen existieren. Das Endergebnis der Iteration ist in diesem Fall von den Anfangswerten abhängig und ist eine Kombination der verschiedenen Eigenvektoren mit Eigenwert 1. Für d < 1 stellen tote Ende kein Problem dar und brauchen nicht gesondert behandelt zu werden.
Zufalls-Surfer-Modell
Eine anschauliche Interpretation des PageRanks (für d < 1) ist das Zufalls-Surfer-Modell: Ein Surfer startet auf einer zufälligen Seite und bewegt sich dann durch das Netz, indem er mit der Wahrscheinlich d zufällig einem Link auf der Seite folgt bzw. mit der Wahrscheinlichkeit (1-d) auf einer beliebigen Seite neu startet. Falls es keine toten Enden gibt, so entspricht die Wahrscheinlichkeit auf Seite i zu landen genau dem PageRank des Gleichungssystems
M * PR = ( 1 – d ) / N
Gibt es in dem System solche toten Enden, so ist der Wahrscheinlichkeits-Vektor proportional zum PageRank-Vektor.
PR – PageRank
Der PageRank-Algorithmus ist ein Verfahren eine Menge verlinkter Dokumente, wie beispielsweise das World Wide Web, anhand ihrer Struktur zu bewerten bzw. zu gewichten. Dabei wird jedem Element ein Gewicht, der PageRank, aufgrund der Verlinkungsstruktur zugeordnet. Der Algorithmus wurde von Larry Page (daher der Name PageRank) und Sergey Brin an der Stanford University entwickelt und von dieser patentiert. Er diente Google, dem von Brin und Page gegründeten Unternehmen, als Grundlage für die Bewertung von Seiten.
Der eigentliche Pagerank [Wert] einer Seite – ohne Berücksichtigung des Inhalts – wird nach einer bestechend einfachen iterativen Formel ermittelt. Die in der Stanford-Arbeit von Brin und Page veröffentliche Formel lautet:
PR(A) = (1-d) + d (PR(T1)/C(T1) + … + PR(Tn)/C(Tn))
Backlinks / Inlinks
Der Begriff Backlinks bezeichnet jene Links, die auf eine Webseite verweisen und ist unabhängig von der technischen Art des Links (erfasst sind damit z.B. Textlinks, grafische Links, Deep Links, Surface Links, framende Links). In vielen Suchmaschinen lassen sie sich durch den Befehl “link:www.domainname.de” ermitteln.
Domainpopularität
In früheren Zeiten haben Suchmaschinen-Algorithmen nur den quantitativen Aspekt der Backlinks (Rückverlinkungen/ eingehende Links) einer Webseite zur Einstufung der Relevanz in die Bewertung mit einbezogen. So wurde nicht differenziert ob die eingehenden Links aus einem Footer mit 1000 Unterseiten erfolgen oder von unterschiedlichen einzelnen separaten Domänen. Deshalb sprach man damals von der Linkpopularität. Je mehr Links aufgefunden wurden desto besser war auch die PageRank Bewertung sowie die Suchmaschinenrankings. Google & Co. haben aber schnell feststellen müssen, dass diese Art der Bewertung eine Manipulation deutlich erleichtert.
Um das Niveau der gefunden Suchergebnisse zu verbessern und manipulativen Eingriffen vorzubeugen wurden alle Suchmaschinenalgorithmen auf Domainpopularität optimiert. Im Gegensatz zur quantitativen Linkpopularität wird zur Bewertung die Qualität der linkenden Webseite herangezogen. Zudem wird auch nur ein Link je Domain gewertet, zeigen mehrere Links von der gleichen Domäne auf eine Online-Präsenz werden sie zu einem Backlink in der Wertung reduziert.
Linkpopularität
Die Linkpopularität drückt aus, wie viele Links auf eine Webseite weisen. Je häufiger eine Seite verlinkt wird, desto höher war die Linkpopularität dieser Seite, die Linkpopularität wurde inzwischen durch die Domanpopularität ersetzt.
Click Popularity
Click Popularity, (englisch für “Klickbeliebtheit”) ist ein Begriff aus dem Suchmaschinenmarketing. Bei Click Popularity handelt es sich um ein Ranking-System (System zur Bestimmung der Ergebnisrangfolge) in Suchmaschinen, das das Klick-Verhalten der suchenden Benutzer auswertet.
Die meisten Anbieter von Suchmaschinen messen die Click Popularity. Ob bzw. inwieweit sie in den Gesamtalgorithmus eingeht, ist jedoch nicht bekannt. Click Popularity ist als ein von außen beeinflussbares Kriterium für Manipulationen anfällig.
Meta tags
Meta-Tags (genau genommen Meta-Elemente) sind spezielle HTML-Tags, die im Kopf einer HTML-Seite angegeben werden. Beispiele sind der Autor (‘author’), die Sprache (‘language’) und Informationen zum Copyright (‘copyright’). Diese Daten werden normalerweise nicht im Browser angezeigt. Meta-Tags werden auch dazu verwendet, Suchmaschinen zu steuern und Informationen über den Inhalt zu geben.
Anfangs war der Nutzen von Meta-Tags bei der Optimierung einer Webseite relativ groß. Durch Missbrauch (z.B. der Verwendung von sehr vielen irrelevanten Schlüsselwörtern in Meta-Tags) wurde die Bedeutung für die Suchmaschinenoptimierung stark in den Hintergrund gedrängt. Der aktuelle Stand sieht wie folgt aus:
“keywords” Schlüsselwörter für Suchmaschinen: Spielt keine Rolle für die Optimierung – schadet aber auch nicht.
“description” Die Beschreibung der Seite. Sie wird von einigen Suchmaschinen in den Ergebnissen der Suchabfrage angezeigt. Da dieser Meta-Tag in den Suchergebnislisten angezeigt wird, sollte er verwendet werden und die Beschreibung gut formuliert sein.
“robots” dient – neben der robots.txt – zur Steuerung von Suchmaschinen-Crawlern. Ein Beispiel-Code ist:
<meta name=”robots” content=”index,nofollow”>
Verwendet man XHTML statt HTML, so muss ein abschließender Slash “/” am Ende des Tags stehen.
“index / noindex” Die Seite soll indexiert / nicht indexiert werden
“follow / nofollow” Links sollen weiterverfolgt / nicht weiterverfolgt werden
“noarchive” Die Seite soll nicht gespeichert (archiviert) werden
“nosnippet” Verhindert das Anzeigen von Textauszügen und Bildvorschauen (Google Instant Preview)
“noodp” Für die Seite soll nicht die Beschreibung des ODP angezeigt werden
“index, follow” (Seite indexieren, Links folgen) wird standardmäßig angenommen und kann somit auch weggelassen werden. Eine alternative Schreibweise für index, follow ist all
<meta name=”robots” content=”all”>
googlebot
slurp
bingbot
Dient zur Steuerung einzelner Suchmaschinen und ist analog zu robots aufgebaut. Die Anweisungen gelten jedoch nur für die angegebene(n) Suchmaschine(n): Google (googlebot), Yahoo (slurp) oder MSN (bingbot bzw. msnbot). Beispiel:
<meta name=”googlebot” content=”noarchive”>
language Die Sprache der Seite. Hat zwar keinen direkten Einfluss auf das Ranking sollte aber zur leichteren Identifizierung der Sprache angegeben werden. author, publisher, copyright, page-topic Keinerlei positive oder negative Auswirkung auf die Suchmaschinenoptimierung.
Keyword Density
Zu deutsch: Wortdichte oder Suchbegriffsdichte.
Keyword Density ist die Häufigkeit eines Keywords im Verhältnis zur Gesamtzahl aller Worte im Quelltext einer Webseite. Beispiel: In einem Dokument, das aus fünf verschiedenen Worten besteht, bewirkt jedes einzelne Wort eine Keyword Density von 20%.
Die Keyword Density ist ein wesentliches Ranking-Kriterium für viele Suchmaschinen. Eine hohe Keyword Density wird von Suchmaschinen als Zeichen für relevante Webseiten interpretiert. Eine zu hohe Keyword Density wird allerdings als Spam interpretiert, beispielsweise, wenn ein Begriff zu oft wiederholt wird.
Keyword Proximity / Adjacency
Unter Keyword Proximity oder Adjacency versteht man die Nähe von Keywords auf einer Webseite zueinander. Je geringer die Distanz zwischen zwei Keywords, desto relevanter ist die Webseite für eine Suchanfrage, die beide Keywords (Phrase) beinhaltet.
Suchmaschinen-Optimierer ermitteln aus dem Abfrageverhalten der User Begriffe und Kombinationen, die einen hohen Erfolg versprechen und arbeiten relevante Begriffe und Kombinationen in eine Website ein.
Keywords – Suchbgriffe
Mit “Keyword” bezeichnet man einen Suchbegriff oder eine Kombination von zei bis drei Suchbegriffen, eine Keyword-Phrase, unter denen eine Seite gut gelistet werden soll.
In der Suchmaschinenoptimierung werden die Sucheingaben der Nutzer von Suchdiensten ermittelt um die Suchbegriffe herauszuarbeiten, unter denen sich gute Positionen in Suchmaschinen lohnen. Zum Beispiel wird ermittelt ob User Notebook oder eher Laptop eingeben und auch ob in der Optimierung eher mit “Keywords” in singular oder in plural gearbeitet werden sollte. Bei diesen Analysen werden auch häufige Tippfehler beachtet und Arten der Kombination von Suchbegriffen. Es gilt zu beachten das Keywords heutzutage den direkten Webseiten Inhalten entnommen werden und von den Suchmaschinen nicht mehr aus den meta-Elementen entnommen werden. Im grunde kann auf meta-Elemente gänzlich verzichtet werden, lediglich die description wird noch ausgewertet ist aber auch nicht zwingend notwendig.
