Ausarbeitung - Universität Ulm
Transcription
Ausarbeitung - Universität Ulm
Suchmaschinen und Text Mining Robert Schmitz Proseminar Text Minig, Universität Ulm, Abteilung Neuroinformatik, SS 2007 1 Konventionelle Suchmaschinen Eine offizielle Antwort auf die Frage nach den Ausmaßen den World Wide Web zu bekommen scheint unmöglich. Seit Bestehen des WWW vergrößert sich dieses Netzwerk stetig und in rasantem Tempo. Längst hat sich das Internet auch für Privatpersonen geöffnet, was dessen Wachstum natürlich nochmals beschleunigte. Folge dieser Entwicklung ist eine praktisch unerschöpfliche Quelle an Informationen zu annähernd jedem vorstellbaren Thema. Die Kehrseite der Medaille ist jedoch offensichtlich: Das gezielte Finden von Informationen gleicht der berühmten Suche nach der Nadel im größten Heuhaufen der Welt. Ein Durchforsten der Internets von Hand ist unmöglich, Softwarelösungen sind nötig, so genannte Suchmaschinen. 1.1 Funktionsweise Die Funktionsweise konventioneller Suchmaschinen lässt sich typischerweise in drei Schritte unterteilen: (1) Indexierung des WWW (2) Verarbeitung und Ausführung der Suchanfrage (3) Präsentation der Ergebnisse 1.1.1 Indexierung des WWW Hinsichtlich der enormen Größe des Internets wäre es ein äußerst ineffektiver Ansatz, einfach linear durch die Menge der verfügbaren Seiten zu gehen und diese mit den Suchbegriffen zu vergleichen. Abhilfe schafft hier ein geschicktes Indexierungsverfahren. Dabei kommt ein so genannter WebCrawler zum Einsatz, ein Programm, welches das Internet durchsucht und Webseiten analysiert. Der Crawler hangelt sich von Hyperlink zu Hyperlink und kann so praktisch das gesamte erreichbare Internet durchlaufen. Zweck des Verfahrens ist es, die gefundenen Dokumente zu scannen und in einzelne Wörter zu zerlegen, anhand deren ein so genannter invertierter Index erstellt wird. 2. Juli 2007 Abb. 1 Invertierter Index für Dokumente Invertiert deswegen, da der Index nicht direkt Aufschluss darüber gibt, welche Wörter ein bestimmtes Dokument enthält, sondern vielmehr darüber, welche Dokumente ein bestimmtes Wort enthalten. Man kann sich diese Datenstruktur also als einen Baum der Tiefe eins vorstellen, an dessen Wurzel das indexierte Wort steht und dessen Blätter die Dokumente repräsentieren. Der Vorteil dieses Verfahrens liegt auf er Hand: In diesem Index lässt sich sehr effizient suchen, beispielsweise mit binärer Suche. Hat man den Begriff schließlich gefunden, so erhält man gleichzeitig Pointer auf alle Seiten im Internet (soweit indexiert), welche dieses Wort enthalten. Wie zu Anfang bereits erwähnt, befindet sich das Internet jedoch in einem steten Wachstums und Veränderungsprozess. Im Sekundentakt kommen neue Seiten hinzu, werden bestehende Seiten gelöscht oder Inhalte geändert. Dies führt zu einem klaren Nachteil dieses Algorithmus: Zu keiner Zeit kann der erstellte Index eine hundertprozentige Vollständigkeit und Aktualität für sich in Anspruch nehmen. So muss die Analyse des Internets ständig wiederholt werden um so aktuell wie möglich zu bleiben. Dieses Verfahren ist zwar schon recht geschickt, eine komplette Indexierung des Internet hätte jedoch einen sehr großen Index zur Folge, was wiederum zu Performance-Einbußen beim Suchen führen würde. Um dieses Problem zu löschen stützt man sich auf die Annahme, dass die wichtigsten Informationen eines Dokumentes stets am Anfang des Textes stehen, so dass es ausreichen müsste, nur die ersten ca. 100 Wörter zu indexieren. Außerdem verfügen HTML-Dokumente über Meta-Informationen wie Titel, und Stichwörter – Information, die geradezu prädestiniert sind um in den Index aufgenommen zu werden. 1.1.2 Verarbeitung und Ausführung der Suchanfrage Typischerweise ist die Anfrage an das System nichts anderes als eine einfachen Zeichenkette, bestehend aus Leerzeichengetrennen Suchbegriffen. Viele Suchmaschinen ermöglichen zudem Verknüpfungs-Operatoren, beispielsweise um festlegen zu können, dass ein Begriff nur im Zusammenhang mit einem anderen Begriff auftauchen darf, usw. Zudem hat der Anwender meist die Möglichkeit einige einschränkende Kriterien einzugeben, wie Sprache, geographische Lage oder Erstellungsdatum des Dokuments. Damit das System überhaupt mit dieser Eingabe arbeiten kann, muss die Zeichenkette zuerst geparst und in einzelne Wörter, so genannte Tokens, zerlegt werden. Diese Tokens werden nun ggf. auf Rechtschreibung geprüft und danach mit dem Index verglichen, wodurch die Menge aller Seiten gefunden wird, welche mindestens eines dieser Suchwörter enthalten. 2 Durch einen weiteren Trick machen manche Suchmaschinen diesen Schritt noch effektiver: Nachdem die einzelnen Tokens aus der Zeichenkette extrahiert wurden, wird ein Stemming-Algorithmus verwendet um die Wörter auf ihre Grundform zu reduzieren. Da der Index – soweit möglich – ebenfalls auf Grundform gebracht wurde, folgt daraus eine weit höhere Anzahl an Suchtreffern. 1.1.3 Präsentation des Ergebnisses Wie bereits angedeutet handelt es sich beim Suchergebnis um eine meist sehr große, ungeordnete Menge von Dokumenten. Um Diese Menge für die Darstellung auf dem Bildschirm zu ordnen, ist es sinnvoll zu ermitteln, wie relevant das einzelne Dokument überhaupt für die Beantwortung der Suchanfrage ist. Eine Möglichkeit besteht darin, unabhängig von der Suche jedem Dokument eine Gewichtung zuzuordnen. Je gewichtiger eine Datei, desto wichtiger ist sie auch. Die Suchmaschine Google sortiert ihre Suchanfrage unter anderem auf diese Weise. Dazu nutzt sie den so genannten PageRank-Algorithmus, der anhand von Verweisen auf dieses Dokument den PageRank-Wert errechnet: [2] P Ri = X P Rj 1−d +d N ∀j∈M Cj M = {j | j verweist auf i} (1) Das Gewicht P Ri einer Seite i ergibt sich also aus der Summe der Gewichte P Rj aller Seiten j, die auf i verweisen, wobei Cj die Anzahl der Seiten ist, auf die j insgesamt verweist. So verteilt sich das Gewicht der Seite j gleichmäßig auf alle verwiesenen Seiten, insbesondere erhält auch die Seite i nur C1j des Gewichtes der Seite j. N ist die Gesamtanzahl der Seiten und d ein Dämpfungsfaktor, der verhindert, dass Seiten ohne Verweise zu viel Gewicht erhalten. Neben dem PageRank bezieht Google allerdings noch weitere Faktoren in die Sortierreihenfolge der Treffer ein, beispielsweise das Vorkommen eines der Suchbegriffe im DokumentenTitel oder Überschriften. [5] Ein weiterer Ansatz, die Relevanz eines Dokumentes zu messen, besteht darin nicht nur die Anzahl der verweisenden Dokumente zu betrachten, sondern auch ob diese Dokumente thematisch mit den zu bewertendem Dokument verwandt sind. Denn klar ist: Ein Link von einer Seite, die sich mit dem selben Thema befasst, hat mehr Aussagekraft als eine themenfremde Seite. Um Diese Unterscheidung in thematisch verwandt oder fremd überhaupt durchführen zu können, müssen die Dokumente allerdings nach Themengebieten gruppiert werden, was zusätzlichen Aufwand darstellt. Ein nützlicher Nebeneffekt dieser Clusterung ist allerdings, dass die einzelnen Dokumente nun in einem thematischen Kontext zueinander stehen und dieser Kontext helfen kann, die Suche zu verfeinern. [4] 3 2 Erweiterte Suchmaschinen 2.1 Beispiel MetaCrawler MetaCrawler ist der erste Vertreter der so genannten Meta-Suchmaschinen und wurde 1995 von Erik Selberg und Oren Etzioni im Rahmen eines Forschungsprojektes an der University of Washington entwickelt. Sie gilt mit 60.000 Anfragen pro Tag als populärste Suchmaschine dieser Art. Das Konzept der Meta-Suchmaschinen entspricht dem einer recherchierenden Person: Um möglichst hochwertige Informationen zu erhalten, ist es sinnvoll mehreren Quellen zu folgen und die Ergebnisse miteinander zu vergleichen. Übertragen auf die Recherche im Internet würde dies bedeuten, mehrere Suchmaschinen zu nutzen und gegeneinander abzugleichen. Und genau dies machen Meta-Suchmaschinen wie MetaCrawler. Die vom Benutzer an das System übermittelte Suchanfrage wird an eine ganze Reihe weiterer – konventioneller – Suchmaschinen (Google, Altavista, Yahoo, ...) weitergeleitet und die jeweiligen Ergebnisse werden zu einem großen Über-Ergebnis zusammengefasst. Auf diese Weise werden natürlich mehr Dokumente gefunden, als bei der Beschränkung auf eine einzige Suchmaschine. Doch die Maximierung der Ergebnismenge ist nicht alleiniges Ziel der Meta-Suchmaschinen: Das Verfahren ermöglicht zudem eine Qualitative Beurteilung der einzelnen Dokumente. Dokumente, welche beispielsweise nur von einer oder wenigen Suchmaschinen gefunden werden und/oder einen niedrigen Rang haben, sind sicherlich weniger wertvolle Treffer, als Dokumente, die in allen Unterergebnissen stets hoch platziert vorkommen. Auf diese Weise kann eine Vorauswahl getroffen werden, welche Dokumente nun wirklich relevant sind und welche nicht. Experimente zeigten, dass MetaCrawler fast 75% aller Suchtreffer als irrelevant oder veraltet erkannte – eine Arbeit, die sonst der Anwender auf mühsame Weise hätte leisten müssen. Ein Nachteil dieses Verfahrens ist, dass die Ausführung der Suchanfragen meist länger dauert, da auf die Antwort aller mit einbezogenen Suchmaschinen gewartet werden muss. Außerdem ist die größere Datenflut, die bei Meta-Suchmaschinen zu erwarten ist, manchmal eher hinderlich als von Vorteil. [6] 2.2 2.2.1 Beispiel Grouper Was ist Grouper Um genau diese Datenflut in den Griff zu bekommen, hat die Univerity of Washington die Suchmaschine Grouper entwickelt. Die Idee hinter diesem System ist, die von einer MetaSuchmaschine zurückgelieferten Dokumente für die Präsentation in thematische Gruppen zu fassen (clustern). Ziel dieser Clusterung ist ein verbesserter Überblick und ein schnelleres Finden der gewünschten Inhalte. 4 2.2.2 Wie arbeitet Grouper? Wie bereits erwähnt bezieht Grouper seine Rohdaten von einer Meta-Suchmaschine (= document set), genauer gesagt von HuskeySearch, einem Nachfolgerprojekt von MetaCrawler und ebenfalls aus der Schmiede der University of Washington. Der Weg von ungeordneten Dokumenten zu thematisch geordneten Gruppen wurde von den Entwicklern des System unter dem Namen Suffix-Tree-Clustering zusammengefasst, der im folgenden erläutert wird. 2.2.3 Der Suffix-Tree-Clustering Algorithmus Der Suffix-Tree-Clustering Algorithmus (STC Algorithmus) besteht aus drei Schritten: (1) Säuberung der Rohdaten (2) Ermittlung der Basis-Cluster anhand eines Suffix-Trees (3) Zusammenfassen der Basis-Cluster zu Ergebnis-Clustern Beim Säubern der Dokumente wird die den Text repräsentierende Zeichenkette in Tokens zerlegt, die von einem ’leichten’ Stemming-Algorithmus falls möglich in Grundform gebracht werden. Satzgrenzen werden markiert, Zahlen und Satzzeichen werden aus dem Token-Array entfernt, sowie HTML-Tags, deren Aufgabe hauptsächlich in der Formatierung und Darstellung des Textes besteht und die somit keinen Einfluss auf die Aussage des Dokuments haben. Im zweiten Schritt des Algorithmus werden die Basis-Cluster ermittelt. Ein solches BasisCluster setzt sich aus allen Dokumenten des document sets zusammen, die eine gemeinsame Phrase besitzen, also eine geordnete Folge mehrerer Wörter. Man kann diesen Vorgang auch als Aufbau eines invertierten Index aus Phrasen für die gesammelten Dokumente betrachten. Während das Erstellen eines invertierten Index aus Wörtern noch relativ einfach war, gestaltet sich dies für ganze Phrasen schon wesentlich schwieriger, denn wie schon erwähnt ist eine Phrase als Folge einer unbestimmten Menge von Wörter an einer unbestimmten Position des Dokuments definiert. Angenommen jede Phrase wäre in ihrer Länge l begrenzt auf 3 ≤ l ≤ 10 und jedes Dokument hätte im Schnitt 1000 Wörter, so käme man (vereinfachenderweise alle Satzgrenzen ignorierend) auf 7760 mögliche Phrasen pro Dokument, die dann jeweils mit allen noch nicht analysierten Dokumenten gematcht werden müssten. Dieser Schritt müsste dann mit allen anderen Dokumenten wiederholt werden, um tatsächlich alle gemeinsamen Phrasen zu identifizieren. Selbst wenn man diesen Algorithmus soweit optimiert, so dass keine der Phrasen doppelt überprüft wird, wird er dennoch nie schnell genug funktionieren um sinnvoll einsetzbar zu sein. Die Entwickler von Grouper setzten also einen intelligenteren und somit effizienteren Algorithmus ein, der auf einer Datenstruktur namens Suffix-Tree basiert. Diese Datenstruktur kann schon während des Einlesens der Dokumente aufgebaut werden - also in linearer Zeit zu der Größe des document sets. 5 Der Suffix-Tree setzt sich aus den einzelnen Wörtern der Dokumente zusammen, jedes Wort repräsentiert einen Knoten. Wie ein Suffix-Tree genau aussieht, wird in Abb. 2 demonstriert (vereinfacht) [3]. Der dort dargestellte Suffix-Tree repräsentiert die beiden Phrasen the president of the united states“ und the united states of america“. ” ” Abb. 2 Suffix-Tree Der Tree ist so konstruiert, dass sich jede Teilphrase von the president of the united ” states“ oder the united states of america“ durch einen Pfad innerhalb des Trees darstellen ” lässt. Anhand dieses Suffix-Trees lässt sich nun sehr einfach herausfinden welche Wörter, bzw. Folge von Wörtern gleichzeitig in Phrase 1 und in Phrase 2 vorkommen. In Abb. 2 wurde mit #1 bzw. #2 gekennzeichnet, welche der Wörter das Ende der jeweiligen Phrasen darstellen. Zur Erinnerung: Jeder Pfad im Baum repräsentiert eine (Teil-)Phrase von the ” president of the united states“ oder the united states of america“. Befindet sich sowohl ” #1 als auch #2 in ein und dem selben Baumpfad, so folgt daraus, dass beide Phrasen in einem gewissen Bereich deckungsgleich sein müssen. Der gemeinsame Bereich besteht aus dem Pfad von der Wurzel des Baumes bis zum ersten Auftreten eines #1 oder #2. Befinden sich die beiden Endsymbole in ein und dem selben Zweig des Baumes, so befindet sich die geteilte Phrase in dem Pfad von der Wurzel bis zu dem Wort, an dem die beiden Äste auseinander laufen. (Beispiel of“ in Abb. 2) ” Nach diesem Prinzip geht der STC Algorithmus ebenfalls vor. Ist der Suffix-Tree erst einmal aufgebaut, ist es ein leichtes die Dokumente mit den gemeinsamen Phrasen ausfindig zu machen. 6 Im letzten Schritt des Suffix-Tree-Clustering Algorithmus werden nun Basis-Cluster, die eine größere Anzahl gemeinsamer Dokumente enthalten zu übergeordneten ErgebnisClustern zusammengefasst. Dieser Schritt ermöglicht es thematisch verwandten Dokumenten sich in ein und dem selben Cluster zu befinden, selbst wenn sie phrasendisjunkt sind, sich also keine gemeinsamen Phrasen teilen. Außerdem reduziert sich die Anzahl der Cluster auf eine überschaubarere, weniger fragmentierte Menge. Der Suffix-Tree-Clustering Algorithmus bringt im Vergleich zu den meisten ClusteringAlgorithmen viele Vorteile und Neuerungen mit sich. Viele Cluster-Methoden ordnen ein Dokument genau einem Cluster zu. Der STC Algorithmus unterstützt hingegen eine überlappende Clusterung, erlaubt es also einem Dokument in mehr als einem Cluster vorzukommen. Da die Anordnung der Wörter innerhalb einer Phrase genutzt wird um ähnliche Dokumente besser identifizieren zu können, sind die Ergebnisse des Suffix-TreeClustering Algorithmus zudem meist besser als die vieler andere Clustering-Algorithmen, die diese zusätzliche Information ignorieren und die Dokumente als eine ungeordnete Menge von Wörtern betrachten. Vorteilhaft ist ebenfalls, dass STC die Dokumente nicht in eine vorgegebene Anzahl an Clustern zwingt, sondern eben so viele Cluster erstellt werden, wie nötig sind. Zusammenfassend kann gesagt werden, dass sich der STC Algorithmus sehr gut für den Einsatz im Internet eignet, da er schnell und inkrementell ist, d.h. die ankommenden Daten können bereits verarbeitet werden noch bevor die Übertragung abgeschlossen ist. Bei konventionellen Suchmaschinen besteht das präsentierte Ergebnis meist zum großen Teil aus nahezu irrelevanten Dokumenten und die Text-Ausschnitte, die zu den einzelnen Treffern angezeigt werden, sind häufig ohne jeglichen Bezug zu der gestellten Anfrage. In diesen Situationen erzielt der STC Algorithmus bessere Ergebnisse. 2.2.4 User Interface und Präsentation des Ergebnisses Abb. 3 Grouper Benutzerschnittstelle [1] Die Arbeit mit Grouper ähnelt vom Prinzip her der mit einer konventionellen Suchmaschine: Die Benutzerscnittstelle wird von einem einzeiligen Textfeld dominiert in welche die Suchanfrage eingegeben werden soll (Siehe Abb. 3). Zudem kann nun auch ausgewählt werden, ob die Eingabe als Menge von Stichwörtern betrachtet werden soll, oder als zusammenhängende Phrase. Als weitere Einstellmöglichkeit kann der Benutzer wählen, wie 7 viele Dokumente pro Suchmaschine in das Endergebnis einbezogen werden sollen – zur Erinnerung: Grouper baut auf HuskeySearch auf, einer Meta-Suchmaschine also, die ihre Ergebnisse wiederum aus den Ergebnissen mehrerer anderen Suchmaschinen zusammensetzt. Eben die Anzahl dieser Treffer lässt sich hier auf maximal 200 beschränken. Grouper arbeitet mit etwa 10 Suchmaschinen zusammen, die nach Entfernen aller Duplikate insgesamt 70 bis 1000 Ergebnisse pro Anfrage liefern. Diese Suchmaschinen haben 10 Sekunden Zeit ihre Daten an Grouper zu senden, dann wird die Ergebnis-Seite (Abb. 4) im Browser angezeigt. Abb. 4 Grouper Benutzerschnittstelle Anfrageergebis[1] Die Ergebnis-Seite besteht hauptsächlich aus einer langen Tabelle, jede Tabellen-Zeile repräsentiert ein Cluster. Die drei besten Treffer pro Cluster werden mit ihrer Headline aufgeführt, zudem die gemeinsamen Phrasen der im Ergebnis-Cluster enthaltenen BasisCluster. Hinter diesen Phrasen steht zudem in Prozent angegeben, wie viele der Dokumente diese Phrase enthalten. Der Benutzer soll so mit wenigen Blicken erfassen können, welche Art von Informationen sich hinter diesem Cluster verbergen. Grouper erlaubt es zudem, die Suche zu verfeinern, indem die bestehende Suchanfrage um gemeinsamen Phrasen der einzelne Basis-Cluster erweitert werden kann. Die Möglichkeit, sich alle enthaltenen Dokumente eines Clusters auflisten zu lassen besteht selbstverständlich ebenfalls. 2.2.5 Performance Internetanwendungen werden im Extremfall von mehreren tausend Personen gleichzeitig genutzt und die Kommunikation mit dem Server erfolgt über einen – verglichen mit einem System-Bus oder einem LAN – sehr langsamen Kanal. So ist einzusehen, dass die 8 Anwendung an sich effizient programmiert sein sollte um so wenig Zeit wie möglich auf der Serverseite zu verschwenden. Gouper ist effizient (also schnell) und verdankt dies vier Optimierungs-Tricks: (1) Es gibt mehrere Möglichkeiten Internetsuchergebnisse zu clustern: Entweder nutzt man die Text-Schnipsel, die von der Suchmaschine als Ergebnis präsentiert werden, oder man lädt die Originaldokumente aus dem Web und clustert diese. Dass Letzteres natürlich erheblich zeitintensiver ist, leuchtet ein: Das Dokument muss erstens heruntergeladen und zweitens in seiner Gänze geclustert werden. Was aber ist mit der Qualität der Basis-Cluster? Versuche haben gezeigt, dass die Qualität der BasisCluster im Schnitt nur etwa 15% schlechter wurde, wenn kleine Text-Schnipsel geclustert wurden anstatt ganzer Dokumente. Dies könnte dadurch erklärt werden, dass die Suchmaschinen, ihrerseits bereits bestrebt sind möglichst charakteristische Schnipsel zu liefern. Aufgrund dieses geringen Qualitätsverlust nutzt Grouper die deutlich schnellere Schnipsel-Variante. (2) Der Suffix-Tree-Clustering Algorithmus ist inkrementell – der Aufbau des Suffix-Trees kann also sofort beginnen, wenn die ersten Daten von den Suchmaschinen übertragen wurden und ist schon weit fortgeschritten, wenn das letzte Datenpacket ankommt. Nicht-Inkrementelle Clustering Algorithmen müssten bis zu diesem Zeitpunkt warten – verschenkte CPU-Zeit. (3) Der STC Algorithmus erfordert, dass eine große Anzahl an Zeichenketten zeitaufwändig miteinander verglichen werden. Um dies effizienter durchführen zu können, wird jedem Wort eine eindeutige Ganzzahl zugeordnet, so dass nun schnellere IntegerVergleiche möglich sind. (4) Nicht jede mögliche Phrase ist tatsächlich von Interesse. Wörter mit extrem häufigem Vorkommen können weggelassen werden, wenn sie zu Beginn oder am Ende einer Phrase stehen, ohne die Aussage dieser Phrase zu verändern. Als Beispiel sei hier im englischen das Wort the“ angeführt. the university of ulm“ unterscheidet sich ” ” inhaltlich nicht von der Phrase university of ulm“. So wird die Phrase the first ” ” man on the“ reduziert auf first man on“, the frst man on the moon“ jedoch auf ” ” first man on the moon“. Zudem werden nur Phrasen berücksichtigt, die in einer ” Mindestanzahl von Dokumenten auftreten. Alleine diese beiden Schritte reduzieren die anfallende Arbeit auf unter 50%! Durch diese Optimierungen erreicht Grouper die Arbeitsgeschwindigkeit, die für eine interaktive Onlineanwendung notwendig ist. Wie der Kurve in Abb. 5 zu entnahmen ist clustert Grouper in 2 Sekunden durchschnittlich fast 750 Dokumente. 9 Abb. 5 Anzahl der geclusterten Dokumente pro Sekunde [1] 2.2.6 Grouper im Test Als Grouper entwickelt wurde war das Ziel eine Suchmaschine, die es dem Benutzer dank einer intelligenten Gruppierung der Treffer ermöglicht, einen besseren Überblick über das Suchergebnis zu bekommen und schneller die relevanten Dokumente ausfindig zu machen. Nun stellt sich natürlich die Frage, ob dieses Ziel erreicht wurde, also ob Grouper die Suche nach den wichtigen Dokumenten tatsächlich erleichtert. Die Entwickler analysierten die Log-Dateien des Systems um auf statistischem Wege eine Antwort auf diese Frage zu erhalten. Dabei stellten sie fest, dass die Anwender dazu tendierten möglichst wenige Cluster zu besuchen. Daraus folgten sie, dass Grouper genau dann eine gute Arbeit leisten würde, wenn möglichst wenige Dokumente aus möglichst wenigen Clustern durchsucht werden müssten, um an die gewünschten Informationen zu kommen. Die auf Abb. 6 dargestellte Kurve setzt die Anzahl der betrachteten Dokumente mit der Anzahl der besuchten Cluster in einen Zusammenhang. Dabei werden vier Clustering-Verfahren unterschieden: random clustering (Dokumente werden nach Zufallsprinzip in Cluster gepackt), STC auf MuskeySearch-Data angewandt, K-Means auf HiskeySearch-Data angewandt und Grouper. Abb. 6 Anzahl der gefolgten Dokumente in einer Session [1] Dem Diagramm ist eindeutig zu entnehmen, dass Grouper am besten abschneidet: Es wurden am wenigsten Dokumente durchsucht um am wenigsten Cluster besucht, was 10 so interpretiert wird, dass der Benutzer keine weiteren Dokumente durchsuchen musste, da er bereits alle relevanten Informationen gefunden hat. Das schlechteste Ergebnis hat natürlich das random clustering erziehlt, die Benutzer wählten fast jedes Dokument aus einem anderen Cluster aus. Grouper ist zwar klarer Sieger des Vergleichs, jedoch hatten die Entwickler ein noch besseres Ergebnis erwartet. Diese Abweichung kann dadurch erklärt werden, dass die Benutzer sich womöglich einen Überblick über das Thema verschaffen wollten und deshalb mehr Informationen eingeholt haben, als ursprünglich geplant. Aber die Kurve könnte auch bedeuten, dass der verwendete Clustering-Algorithmus schlicht und einfach nicht gut genug ist um das ideale Ziel zu erreichen, nämlich dass der Benutzer nur den Links eines einzigen Cluster folgen muss um die Suche erfolgreich beenden zu können. 2.2.7 Fazit zu Grouper Im Großen und Ganzen funktioniert Grouper gut. Die Ergebnisse werden wesendlich übersichtlicher präsentiert und die Dokumente sind sinnvoll geclustert. Allerdings ist der Zugewinn an Usability nicht ganz so hoch, wie ursprünglich erhofft. Die Entwickler des Systems ziehen den Entwurf eines Nachfolger-Projektes in Betracht, Grouper-II, welcher zudem eine hierarchische Clusterung unterstützen soll, so dass der Benutzer noch effizienter durch die Ergebnisse navigieren kann. So kann abschließend gesagt werden, dass Grouper ohne Frage ein interessantes Projekt mit vielen sehr guten Ansätzen war und es recht bedauerlich ist, dass der Betrieb des Systems im Jahr 2000 eingestellt wurde. Literatur [1] Grouper: A Dynamic Clustering Interface to Web Search Results http://www.cs.washington.edu/research/projects/WebWare1/etzioni/www/papers/www8.pdf [2] Wikipedia-Artikel zu PageRank http://de.wikipedia.org/wiki/PageRank [3] Wikipedia-Artikel zu Suffix-Baum http://de.wikipedia.org/wiki/Suffixbaum [4] TEXT MINING S. Weiss, N. Indurkhya, T. Zhang F.J. Damerau Springer Verlag, 2005 [5] Wikipedia-Artikel zu Google http://de.wikipedia.org/wiki/Google [6] Information der Univerity of Washington zu MetaCrawler, HuskeySearch und Grouper http://www.cs.washington.edu/research/projects/WebWare1/www/metacrawler/ 11