Das Thema near duplicate content detection
2011-09-04Nachdem wir ja viel im Bereich Contenterstellung für unsere Kunden machen, fand ich neulich dieses Patent durchaus interessant:
Google hat also ein Patent angemeldet, dass sich mit dem Thema „Detecting Near Duplicate Content“ beschäftigt. Mal abgesehen davon, dass dieses Patent in Europa nicht gilt (da hierzulande ein Streit über Software-Patente entbrannt ist), bedeutet das nicht, dass Google sein Potent nicht weiter entwickelt und auch nutzt. Patentlegung war bereits im Jahr 2008.
Wo mag der weltgrößte Web-Technologie-Konzern heute stehen in dieser Sache?
Da die englische Sprache weniger komplex ist und es sich aufgrund der schieren Verbreitung mehr lohnen dürfte, im englischen Bereich aktiv zu werden, vermute ich, die Jungs sind deutlich weiter als noch vor 3 Jahren.
Dass eine Suchmaschine duplikate Texte (also gleich) überhaupt erkennen kann, ist ja bereits eine unglaubliche Leistung. Allgemein auch noch alle Texte auf eine Ähnlichkeit hin zu anderen Texten zu untersuchen, ist aber unfassbar (aufwändig). Vorweg gesagt, ist Googles Bestreben gleichen oder auch nur sehr ähnlichen Content aufzufinden, mit dem eines Lehrers zu vergleichen, der nicht will, dass seine Schüler abschreiben. Aus Sicht der Suchmaschine ist es tatsächlich ja auch wenig sinnvoll, eine gleiche oder ähnliche Kopie zu indizieren oder gar sie aufzubewahren, denn eine Lagerung (selbst noch so kleiner digitaler Textmengen) kostet ja Geld. Also macht es Sinn, nach Texten zu suchen, die gleich oder ähnlich sind und sie aus dem eigenen Index zu verbannen.
Nur wie geht man dazu vor?
Als erstes substrahiert man die sinnhaltigen Texte von den Fülltexten der Navigation und den Webdesign Elementen. Ist ja klar. Danach unterteilt man die Texte mittels der Shingle Technik. Shingle heißt auf Englisch Schindel.
Einen Satz in Schindeln zu unterteilen hat den Sinn, seine einzelnen Elemente zu identifizieren und danach rechnerisch vergleichen zu können. Auf diese Weise vergleicht man nicht jedes Wort mit jedem Wort sowie einem Synonym dieses Wortes, was schnell zu ein paar Billionen Rechenoperationen führen müsste – pro Satz wohlgemerkt. Sondern durch die Shindle-technik unterteilt man den Satz in einzelne Elemente, die man rechnerisch vergleichen kann. Das ist wirklich clever, weil es die Komplexität vereinfacht, aber die Auffindbarkeit von Ähnlichkeit erheblich verschnellert. Dabei wird das Dokument in Tokens unterteilt. Ein Token ist meistens ein Wort. Man kann aber auch Buchstaben oder Sätze damit ausdrücken. Bleiben wir beim Wort.
Ein Satz wie dieser hier kann verwendet werden,
(ein, satz,wie,dieser,hier,kann,verwendet,werden)
um seine Schindelbarkeit zu zeigen, also it’s shinglenes. Sorry für dieses atemlose Denglisch.
{(ein, satz,wie),(wie,dieser,hier,kann),(kann,verwendet,werden)}
Von diesen Schindeln können wir natürlich auch ein paar Alternativen bilden. Dann erhält jede Schindel eine ID. Mit dieser ID bekommt jede Schindel einen Fingerprint. Diese Technik wurde übrigens von einem gewissen Herrn Charikar erfunden. Mit dieser Fingerprint-Technik kann man dann berechnen, wie wahrscheinlich es ist, dass soundsoviele Shindles einen ähnlichen Fingerprint aufweisen. Das ist natürlich extrem unwahrscheinlich, weswegen dann der Text als höchstwahrscheinlich abgeschrieben oder unrechtmäßig ähnlich umgeschrieben gilt und ergo nicht mehr als relevant für den Index gilt. Buh und raus bist Du. Dies wird übrigens rein praktisch gesehen mittlerweile mit mathematischen Vektoren pro Dokument erledigt, die selbst nur ca. 50kb wiegen. Und das war 2008.
Man darf getrost annehmen, dass
a) die Serverrechnerleistung heute günstiger zu bekommen istals in 2008
und
b) es vielleicht sogar noch ein paar kb Einsparpotential gibt.
Noch Fragen?
Wen das Thema auf der mathematischen Ebene noch weiter interessiert, dem sei hier die empirische Begründung eng ans Herzchen gelegt.
http://www.cs.brown.edu/courses/cs253/papers/nearduplicate.pdf
Hinreißend, wenn Ihr mich fragt.
Ach ja. Und was soll das jetzt in einem Blog von rio nord und SEO und so? Na, sehr einfach. Die ganzen Textspinning-Machines da draußen werden es zukünftig noch schwerer haben. Most searchengines will sort these spinningtexts out – sooner or later. Von daher sollte man seine SEO-Texte eben besser selber schreiben. Oder auf jemanden zurückgreifen, der dies besser, und vor allem günstiger als jeder Werkstudentschreiberling oder die Hausfrau daheim es für 400 EUR im Monat und hochwertiger tun kann, weil er sich gewerbsmäßig damit auskennt. Womit wir wieder bei Rio wären. ![]()