Such- und Metasuchmaschinen, Agenten und Klassifikationen
Transcription
Such- und Metasuchmaschinen, Agenten und Klassifikationen
Such- und Metasuchmaschinen, Agenten und Klassifikationen Eine Seminararbeit im Fachgebiet Datenbanktechnik, angefertigt an der Universität Zürich, Institut für Informatik 10.7.2001 Leitung: Prof. Dr. Klaus Dittrich Assistenz: Ruxandra Domenig Elke Engel Imbisbühlsteig 16 8049 Zürich engel@abstrakt.ch s97-704 431 Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 2 Inhaltsverzeichnis Zusammenfassung..................................................................................................................... 2 1 Suchmaschinen................................................................................................................... 3 1.1 Definition ...................................................................................................................... 3 1.2 Ziele ............................................................................................................................. 3 1.3 System......................................................................................................................... 3 1.3.1 Architektur ............................................................................................................ 3 1.3.2 Suche ................................................................................................................... 5 1.3.3 PageRank............................................................................................................. 5 2 Metasuchmaschinen........................................................................................................... 6 2.1 Definition ...................................................................................................................... 6 2.2 Ziele ............................................................................................................................. 6 2.3 System......................................................................................................................... 6 2.3.1 Architektur ............................................................................................................ 6 2.3.2 Suche ................................................................................................................... 7 2.3.3 Entfernen von Duplikaten..................................................................................... 7 2.3.4 Zusammenfügen der Resultatseiten.................................................................... 8 3 Agenten ............................................................................................................................... 8 3.1 Definition ...................................................................................................................... 8 3.2 Ziele ............................................................................................................................. 8 3.3 System......................................................................................................................... 9 3.3.1 Auffinden von Referenzen ................................................................................... 9 3.3.2 Funktionen.......................................................................................................... 10 4 Klassifikationen ................................................................................................................. 10 4.1 Definition .................................................................................................................... 10 4.2 Ziele ........................................................................................................................... 11 4.3 System....................................................................................................................... 11 4.3.1 Eigenschaften von Klassifikationen ................................................................... 11 4.3.2 Erfassung von Webseiten .................................................................................. 12 4.3.3 Suche ................................................................................................................. 13 4.3.4 Ranking .............................................................................................................. 13 5 Vergleich ........................................................................................................................... 14 6 Ausblick............................................................................................................................. 15 7 Literaturverzeichnis ........................................................................................................... 15 8 Abbildungsverzeichnis ...................................................................................................... 16 9 Links .................................................................................................................................. 16 Zusammenfassung Dieser Artikel befasst sich mit den verschiedenen Hilfsmitteln der Informationsbeschaffung und –suche auf dem Web. Die Unmengen von Daten, die rein theoretisch durch das Internet verfügbar wären, sind kaum zu überschauen, noch irgendwie geordnet. Aus dieser Problemstellung heraus wurden einige Möglichkeiten geschaffen, sich in dem elektronischen Datenwald zurechtzufinden. Diese Möglichkeiten werden hier vorgestellt: die Idee, die Systemarchitektur, die Probleme und die Vor- und Nachteile gegenüber den anderen Informationsbeschaffungsarten. Den Abschluss dieses Artikels bildet eine Gegenüberstellung der Varianten anhand einiger Merkmale sowie ein flüchtiger, persönlicher Blick in die Zukunft. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 3 1 Suchmaschinen 1.1 Definition Eine Vorstellung, was eine Suchmaschine ist, haben vermutlich alle, die dieses Dokument in der Hand halten: in die Eingabemaske einer Suchmaschine gibt man einen (oder mehrere) Suchbegriff(e) ein und erhält eine Liste von Links zu Seiten, die diesen Begriff in der URL oder im Inhalt der Seite enthalten. Nun geht es daran, auszusortieren, was für den Benutzer von Bedeutung ist. Die Funktionsweise einer Suchmaschine wird genauer am Beispiel Google <1> (siehe [1]) erklärt. 1.2 Ziele Das Hauptziel der Entwickler von Google war eine qualitativ bessere Suchmaschine zu erschaffen, als die bisher existierenden. Qualität bedeutet hier nicht nur Effizienz (Schnelligkeit mit der Ergebnisse geliefert werden), sondern vor allem Effektivität, d.h. wie gut die Informationen auf den gefundenen Seiten dem entspricht, was der Benutzer gesucht hat. 1.3 System Die Architektur einer Suchmaschine ist sehr komplex. Es gilt grosse Mengen von Daten zu sammeln, passend auszuwerten und dem Benutzer entsprechend anzuzeigen. 1.3.1 Architektur Das Herunterladen der Webseiten wird von verschiedenen sogenannten Crawlern ausgeführt. Zuerst sendet ein URL Server Listen von URL’s zu den Crawlern. Die geholten Seiten werden zum Store Server geschickt, komprimiert und in einem Repository gespeichert. Der Indexer hat verschiedene Aufgaben. Er liest das Repository, dekomprimiert und parst es. Jedes Dokument wird in eine Liste von Wörtern, Hits, konvertiert. Die Hits enthalten sowohl das Wort, wie auch die Position des Wortes im Dokument, Schriftgrösse, Gross- oder Kleinschreibung. Der Indexer schickt diese Hits in Barrels. Weiter speichert der Indexer die geparsten Links in einer Datei (Anchors). Diese Datei enthält die Information von wo der Link auf was verweist und den Text des Links. Der URL Resolver liest die Ankerdatei, verwandelt relative URL’s in absolute und weiter in die einzigartige Identifikationsnummer jeder Seite, die „docID“. Er speichert den Text des Ankers im sogenannten „forward index“ zusammen mit der docID auf die der Link verweist. Zusätzlich generiert er eine Datenbank mit Links, welche aus Paaren von docID’s bestehen (Anfangsdokument auf Enddokument). Diese Datenbank wird gebraucht, um die PageRanks zu berechnen (wird später noch genauer erklärt). Der Sorter nimmt die Barrels (diese sind sortiert nach docID’s) und generiert einen sogenannten „inverted index“ mit Hilfe der „wordID’s“ (eindeutige Komprimierung der Worte). Ausserdem erstellt er einen wordID-Index. Das Programm „DumpLexicon“ verwendet diesen wordID-Index zusammen mit dem bereits bestehenden Lexikon und gestaltet ein erweitertes Lexicon, das wiederum vom Searcher verwendet wird. Der Searcher verwendet das Lexicon und die PageRanks, um Anfragen zu beantworten. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 4 Abbildung 1: Architektur von Google § Repository: enthält den gesamten, komprimierten HTML Inhalt jeder Seite. § Doc Index: enthält Informationen über jedes Dokument. Er ist geordnet nach docID. Die Informationen beinhalten den Status des Dokumentes, einen Zeiger ins Repository und eine Dokumentüberprüfsumme. Wurde das Dokument vom den Crawlern erfasst, enthält es einen Zeiger auf eine Datei docInfo, die URL und Titel enthält. Wenn nicht verweist ein Zeiger auf eine URL Liste, die an den URL Server gesendet wird. § Lexicon: passt ins Memory (256KB zum Zeitpunkt der Verfassung des Artikels [1]). (siehe Abbildung 2c) ) § Hit List: ist eine Liste über das Auftreten eines bestimmten Wortes in einem Dokument. Sie beinhaltet Position, Schriftart und Grösse. Es gibt zwei Arten von Hits: fancy hits und plain hits. Fancy hits beinhalten Treffer in der URL, im Titel, im Ankertext oder im Text. Plain hits sind alles andere. (siehe Abbildung 2a) ) § Forward Index: wird teilweise sortiert in Barrels gespeichert. Jedes Barrel enthält eine Reihe von wordID’s. Wenn ein Dokument Wörter enthält, die in einem bestimmten Barrel vorkommen, wird die docID in diesem Barrel gespeichert, gefolgt von wordID und der Hitliste, die zu diesem Wort gehört. (siehe Abbildung 2b) ) § Inverted Index: enthält dieselben Barrels wie der „Forward Index“ ausser, dass sie vom Sorter bearbeitet wurden. Für jede gültige wordID findet sich im Lexicon ein Zeiger in ein Barrel, in das die wordID fällt. Es zeigt auf eine oder mehrere doc ID’s sowie die dazugehörige Hitliste. (siehe Abbildung 2d) ) Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 5 a) Hit List: Plain: Überschriftgrösse Schriftgrösse Position im Dokument Fancy: Überschriftgrösse 7 (festgelegt) Typ (z.B. URL, Titel...) Position Anchor: Überschriftgrösse Schriftgrösse Typ docID Position in Anchor Anchors b) Forward Barrel: docID wordID wordID Keine wordID docID wordID wordID wordID Keine wordID Anzahl Hitlists: 4 Anzahl Hitlists: 2 Hit Hit Hit Hit Hit Hit Anzahl Hitlists: 3 Anzahl Hitlists: 4 Anzahl Hitlists: 1 Hit Hit Hit Hit Hit Hit Hit Hit c) Lexicon: wordID Anzahl Dokumente: 2 wordID Anzahl Dokumente: 1 wordID Anzahl Dokumente: 4 d) Inverted Index: Abbildung 2: Hit List, Lexicon, Inverted and Forward Barrel docID docID docID docID Anzahl Hits: 3 Anzahl Hits: 2 Anzahl Hits: 1 Anzahl Hits: 4 Hit Hit Hit Hit Hit Hit Hit Hit Hit Hit 1.3.2 Suche Hier nun eine Übersicht der Schritte, die durchlaufen werden, wird eine Anfrage an die Suchmaschine gestellt: 1. Parsen der Anfrage 2. Umsetzen Worte in wordID‘s 3. Suchen aller wordID’s im Lexikon 4. Suchen eines Treffers, der alle wordID’s enthält 5. Herausfinden des “ranks” der Treffer 6. Sortieren der Treffer nach “rank” und Anzeigen der obersten x 1.3.3 PageRank PageRank ist eine objektive Messung der Wichtigkeit einer Seite anhand der Links, die auf diese Seite verweisen. Das ergibt eine Idee der subjektiven Wichtigkeit dieser Seite von den Menschen, die am Web arbeiten, d.h. Internetseiten generieren. Um den PageRank zu berechnen, verwendet man einen Dämpfungsfaktor , die Anzahl der Links, die auf eine Seite zeigen, die Anzahl der Links, die von der Seite weggehen. Dazu gibt es eine spannende Formel, die hier nur der Vollständigkeit wegen aufführt wird. PR(A) = (1-d) + d(PR(T1) / C(T1) + …+ PR(Tn) / C(Tn)) A T1 … Tn d C(T1) PR(A) = = = = = untersuchte Seite Seiten, die auf A verweisen Dämpfungsfaktor, liegt zwischen 0 und 1 Links, die aus der Seite T1 zeigen PageRank von A Eine Seite erreicht somit einen hohen PageRank sowohl, dadurch dass viele Links auf die Seite zeigen, wie auch wenn eine Seite mit hohem PageRank auf diese Seite verweist. So z.B. erhält eine Seite, die von der Yahoo! Homepage verlinkt wurde, eine hohen PageRank. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 6 2 Metasuchmaschinen 2.1 Definition Eine Metasuchmaschine ist ein Programm, dass den eingegebenen Suchbegriff/ Suchbegriffe an mehrere Suchmaschinen in der jeweilig passenden Syntax weitergibt und die erhaltenen Ergebnisse nach eigenen Kriterien wertet, in eine Reihenfolge bringt und dem Benutzer liefert. Als Wissensgrundlage wurden hier die Metasuchmaschinen Metacrawler <2> (siehe [2]) und die deutsche Variante des Metacrawlers: MetaGer <3> (siehe [3]) verwendet. 2.2 Ziele Die Idee liegt recht nahe, ein Programm zu entwickeln, dass die Suchleistung mehrerer Suchmaschinen verbindet und somit hoffentlich ein besseres Ergebnis liefern kann, wie eine Suchmaschine allein. Dadurch das mehrere Suchmaschinen angefragt werden, wird mit grosser Wahrscheinlichkeit in einem weiteren Bereich des Webs gesucht. Wie die gefundenen Ergebnisse allerdings nachher bewertet und in welcher Reihenfolge dem Benutzer angezeigt, liegt im Ermessen der Metasuchmaschine. 2.3 System Den Aufbau einer Metasuchmaschine darzustellen, fällt schon etwas einfacher als bei der Suchmaschine. Das Schwierige hier ist das Zusammenfügen der von den Suchmaschinen gelieferten Treffer. 2.3.1 Architektur MetaCrawler wurde in modularer Art gestaltet. Die Hauptkomponente besteht aus dem User Interface , der Aggregation Engine, dem Parallel Web Interface und dem Harness (übersetzt: Harnisch, Zuggeschirr). § User Interface: übersetzt Benutzeranfragen und –optionen in die entsprechenden Parameter, welche an die Aggregation Engine weitergeschickt werden. § Aggregation Engine: ist verantwortlich von jedem Service die Antworten zu erhalten, diese weiterzuverarbeiten, Duplikate zu entfernen, die Ergebnisse zusammenzuführen und diese dann dem Benutzer zu präsentieren. Dies ist die komplizierteste Komponente. § Parallel Web Interface: lädt die HTML Seiten vom Web sowie sendet Anfragen und empfängt Ergebnisse von jeder angefragten Suchmaschine. § Harness: speichert Informationen über jede verwendete Suchmaschine. Es formatiert Anfragen in die entsprechende Syntax und schickt die Anfrage weiter an das Parallel Web Interface . Diese schickt eine Seite an die Aggregation Engine . Das Harness wurde als eine Sammlung von Modulen implementiert, wobei jedes Modul für einen Suchservice steht. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 7 Abbildung 3: Architektur von MetaCrawler 2.3.2 Suche Im Grunde genommen, kann die Suche einer Metasuchmaschine in 7 Schritte zusammengefasst werden: 1. Entgegennehmen einer Anfrage eines Users 2. Konvertieren der Anfrage in die verschiedene Syntax der Suchmaschinen 3. Auslösen der Anfragen 4. Warten auf die Ergebnisse und parallel dazu Durchsuchen der eigenen Datenbank (falls vorhanden) 5. Analyse der Ergebnisse, Herausfiltern von Duplikaten 6. Zusammenführen der Ergebnisse 7. Liefern der Ergebnisse 2.3.3 Entfernen von Duplikaten Um Duplikate zu entfernen, verwendet MetaCrawler einen ausgeklügelten Algorithmus, der in 3 Schritten erklärt werden kann: 1. Domain? Ist www.croft.com gleich lara.croft.com ? 2. Pfadaliases? www.croft.com/ancient/ verweist oft auf www.croft.com/ancient/index.html Stimmt die Domain überein, der Pfad aber nicht, geht es zu Schritt 3. 3. Titel? Nun werden noch die Dokumenttitel verglichen. Sind sie identisch, wird angenommen, dass es sich um das gleiche Dokument handelt. Eine noch bessere Überprüfung kann durchgeführt, wenn die Seite heruntergeladen und der Text miteinander verglichen werden kann. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 8 2.3.4 Zusammenfügen der Resultatseiten MetaCrawler verwendet einen sogenannten „confidence score“, um zu bestimmen, wie nahe die Referenz zur Anfrage passt. Je höher der „confidence score“, desto relevanter das Dokument. Um diese Punktezahl zu bestimmen, übernimmt MetaCrawler zuerst die Bewertung, die die Suchmaschinen liefern. Die obersten Treffer jedes Services erhalten die höchste Punktzahl. Dann werden Duplikate entfernt, wobei die Punktzahl der mehrfach vorkommenden Referenz mit dieser Menge multipliziert wird. Das bedeutet, dass eine Seite, die von mehreren Services geliefert, eine höhere Punktezahl erhält und vom MetaCrawler in den oberen Rängen der Suchtreffer angezeigt wird. 3 Agenten 3.1 Definition Zu definieren, was einen Agenten auszeichnet, ist nicht einfach, da es eine eindeutige Definition bis heute nicht gibt. Die grundlegende Idee kommt aus der künstlichen Intelligenz. Die Aufgaben, die Agenten heute lösen können oder versuchen zu lösen, sind so vielfältig, dass sich die Eigenschaften je nach Aufgabengebiet ändern. Abbildung 4: Eigenschaften von Agenten Man kann die Eigenschaften jedoch in zwei Kategorien einteilen: § Externe Eigenschaften: beim Zusammenspiel mehrerer Agenten oder bei MenschAgenten-Interaktionen notwendigen Charakteristika § Interne Eigenschaften: für die Vorgänge innerhalb eines Agenten notwendige Eigenschaften Abbildung 4: Eigenschaften von Agenten zeigt einen Überblick über die internen (Kreis) und externen (Stern) Eigenschaften. Der hier vorgestellte Agent heisst CiteSeer <4> (siehe [4], [4], [6] [7] und [8]). 3.2 Ziele Wir haben in den vorhergehenden Kapiteln Suchmaschinen und Metasuchmaschinen besprochen, die versuchen einen grossen Teil des Webs zu indexieren und dem Benutzer Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 9 die besten Informationen zu seiner Suchanfrage zu finden. Dabei spielt es für die Suchmaschinen keine Rolle, was für eine Art von Informationen sie indexieren (z.B. Wettervorhersagen, Newsartikel oder persönliche Homepages). Die Idee zu CiteSeer war, das riesige Angebot an wissenschaftlichen Arbeiten auf dem Web zu indexieren und besonderes Augenmerk auf die Referenzen zwischen den Arbeiten zu legen. Normalerweise enthalten wissenschaftliche Arbeiten viele Referenzen zu vorhergehender oder tiefergreifender Literatur. 3.3 System CiteSeer ist ein sogenannter autonomer „Citation Index“, d.h. die Referenzen werden automatisch verwaltet. Dies bringt einige Vorteile mit sich wie z.B. aktuellere Daten und Reduktion der Unterhaltungskosten. Einer der Knackpunkte eines autonomen „Citation Index“ ist das Entdecken von verschiedenen Arten von Zitaten. Im Folgenden werden maschinelle Methoden betrachtet, die sich mit diesem Problem beschäftigen. 3.3.1 Auffinden von Referenzen Referenzen erscheinen in verschiedenen Formaten: § § § § Paul Coelho (2001) Handbuch des Kriegers des Lichts. Diogenes Verlag AG, Zürich [01] Coelho P. (2001) Handbuch des Krieger des Lichts. Zürich: Diogenes [coel01] P. Coelho. Handbuch des Krieger des Lichts. Diogenes, 2001 usw... Das Problem mag auf Anhieb nicht so schwierig erscheinen. Allerdings tauchen zum einen häufig Fehler auf, wie falsche Jahreszahlen, falsch geschriebene Namen der Autoren. Zum anderen ist es schwierig, die verschiedenen Abschnitte einer Referenz zu unterscheiden. Kommas, Strichpunkte, Punkte dienen verschiedenen Zwecken. Es gibt vier Klassen von Methoden, um solche Referenzen zu erkennen: 1. Edit distance measurement: bestimmt den Unterschied zwischen Zeichenketten. Eine bekannte Form des „edit distance measurement“ ist die „Levenshtein distance“. Dabei wird der Unterschied zweier Zeichenketten dadurch bestimmt, wie viel gelöscht und hinzugefügt werden muss, um die eine Zeichenkette in die andere zu verwandeln. 2. Word frequency / occurrence: basiert auf Statistiken wie oft Worte im allgemeinen in Zeichenketten verwendet werden. 3. Subfields, structure of data: verwendet die Gegebenheit, dass in Referenzen immer die gleichen Informationen geboten werden wie der Titel, der Autor, das Jahr der Veröffentlichung, der Verlag, usw. 4. Probabilistic models: können trainiert werden, um solche Strukturen wie bei 3 im Text zu erkennen. Für tiefergreifende Informationen wird hier auf [4] verwiesen. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 10 3.3.2 Funktionen CiteSeer enthält eine Reihe verschiedenster Funktionen, von denen hier nur die wichtigsten genannt werden: § Indexieren von wissenschaftlichen Dokumenten CiteSeer verwendet Suchmaschinen wie AltaVista <6> für die Suche nach Seiten, die Links zu solchen Dokumenten enthalten (meistens Postscript oder PDF – Dokumente). Als Suchwörter werden Begriffe wie „PDF“, „postscript“, „technical report“, „conference“, „proceedings“, usw. eingegeben. Für die Suche werden mehrere Suchmaschinen verwendet, um einen möglichst grossen Bereich des Webs abzudecken. § Volltextindexierung der Artikel CiteSeer indexiert den gesamten Inhalt eines Dokumentes. Das heisst, das Dokument wird von Postscript oder PDF-Format in Text umgewandelt. Allerdings werden keine sogenannten „stop words“ gespeichert wie „the“, „a“ usw. § Ueberlappende Dokumente Oft gibt es dieselben Dokumente auf verschiedenen Servern oder es existieren mehrere Versionen oder Überarbeitungen desselben Artikels. CiteSeer versucht mit Hilfe einer Datenbank gefüllt mit den Sätzen der Dokumente, diese Revisionen zu erkennen. So werden Artikel nach Auftreten der bereits gespeicherten Sätze durchsucht. Findet man ein hohes Auftreten von diesen Sätzen, wird angenommen, dass die Artikel identisch oder vom gleichen Autor/Team (Revision des Artikels) stammen. § Universeller Artikelzugriff Zu jedem Artikel sind umfassende Informationen vorhanden. Man kann auf jeden Artikel mit einem Schlüsselwort zugreifen, dass aus dem Nachnamen des ersten Autors des Dokumentes, dem Jahr der Veröffentlichung und dem ersten Wort des Titels des Artikels besteht („the“ usw. werden ausgeschlossen). Die Informationen beinhalten Titel, Autor, Zusammenfassung, Zitate und den gesamten Textinhalt, sowie Statistiken. Genauere Informationen sind im Artikel [5] zu finden. 4 Klassifikationen 4.1 Definition Obwohl Methoden entwickelt wurden, Kataloge automatisch zu erstellen, hat man sich im allgemeinen für eine hauptsächlich manuelle Erstellung und Pflege entschieden. Der automatische Ansatz kann der Qualität eines manuellen Kataloges nicht gerecht werden. Das bedeutet, dass jede in einem Katalog aufgeführte Webseite von einem Menschen begutachtet, bewertet und in eine Kategorie eingeteilt wurde. Aus dieser Definition heraus, zeigt sich, dass ein Katalog niemals alle Seiten des Webs aufzeigen kann, weil es viel zu viele Seiten mit schlechtem, sinnlosen - oder wie auch immer man dies nennen möchte Inhalt gibt. Einer der bekanntesten Kataloge ist Yahoo! <5>, der hier auch als Informationsgrundlage gewählt wurde (siehe [9] und [10]). Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 11 4.2 Ziele Aus der Definition sehen wir, dass Kataloge nicht die Indexierung möglichst vieler Seiten und die bestmöglichsten Treffer auf möglichst viele verschiedene Anfragen liefern will. Viel mehr hat ein Katalog zum Ziel die besten Seiten in verschiedenen in die Struktur passende Kategorien zu verwalten. Oder ganz kurz gesagt: sie wollen die guten Seiten aufnehmen. Somit eigenen sich Webkataloge besser zur Suche von Informationen in einem bestimmten Themengebiet als zur Suche einer ganz bestimmten Homepage. 4.3 System Webkataloge funktionieren über eine Dokumentationssprache, die man Klassifikation nennt. Es ist ein Weg, grosse Mengen von Dokumenten in eine strukturierte Form zu bringen. Durch diesen strukturellen Aufbau können in einem Katalog teilweise mehr und schneller relevante Informationen gefunden werden, als in einer Suchmaschine. Falls die Anfrage über den „Wissenshorizont“ des Kataloges hinausgeht, wird meist eine Suchmaschinen zur Unterstützung angefragt. Kataloge werden am Beispiel von Yahoo! erklärt. 4.3.1 Eigenschaften von Klassifikationen Wie bereits erwähnt werden Kataloge mit Hilfe von Klassifikationen geschaffen. Die wichtigsten Klassifikationskriterien werden hier vorgestellt: § Hierarchie (Abbildung 5: Monohierarchie-Polyhierarchie) Web-Kataloge verwenden eine monohierarchische Klassifikation, d.h. eine Klasse kann nur eine übergeordnete Klasse (Superklasse) besitzen. Das Gegenteil dazu nennt sich Polyhierarchie (eine Klasse hat mehr als eine Superklasse). Abbildung 5: Monohierarchie-Polyhierarchie § Dimensionalität (Abbildung 6: Polydimensionalität) Bei der Unterteilung einer Klasse in Unterklassen ergeben sich meist mehrere Kriterien. So entsteht eine polydimensionale Klassifikation. Erlaubt man keine Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 12 Polydimensionalität, muss eine zusätzliche Hierarchieebene eingefügt werden, die die verschiedenen Kriterien voneinander trennt. Abbildung 6: Polydimensionalität § Klassifikationsschema Beim Entwurf eines Klassifikationsschemas kann man auf zwei Arten vorgehen. Die erste Möglichkeit nennt sich analytische Klassifikation (top-down). Man geht von einer Grundgesamtheit von Objekten aus, bestimmt die obersten generellsten Klassen und sucht dann für jede Klasse eine weitere Aufteilung. Diese Variante wird für WWW-Kataloge verwendet. Das Gegenbeispiel dazu nennt sich Facetten- oder synthetische Klassifikation (bottom-up). Zuerst bestimmt man die Merkmale einer Klasse und anschliessend bildet man Klassen durch Kombination der Merkmale. Ein Beispiel hierzu wäre eine Flugreservation (siehe Abbildung 7: Facetten- oder synthetische Klassifikation). Durch die Auswahl je eines Kriteriums pro Facette ergibt sich eine Klasse. Facette 1: Abflugsort A1 Zürich A2 New York A3 Paris A4 Dehli Facette 2: Ankunftsort B1 Frankfurt B2 Bombay B3 Tel Aviv B4 San Francisco Facette 3: Preisklasse C1 Economy C2 Business C3 First Class Abbildung 7: Facetten- oder synthetische Klassifikation Weitere Informationen findet man in [10]. 4.3.2 Erfassung von Webseiten Um bei Yahoo! aufgenommen zu werden, muss man die Seite anmelden. Man kann eine Kategorie für die Seite vorschlagen. Die Seiten werden geprüft und bewertet, aufgenommen oder abgewiesen. Die Mitarbeiter von Yahoo! sind auf ihre verschiedenen verwalteten Gebiete spezialisiert, um den Inhalt der Seite auch fachgerecht beurteilen zu können. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 13 Technisch funktioniert das Ganze auf einem einzigen Rechner. In einem speziellen Programm werden die URL’s, eine Kurzbeschreibung und evt. Kommentare gespeichert. Es macht keinen Sinn, die Webseiten ausführlich zu beschreiben. Einerseits kann sich der Inhalt schnell ändern. Zum anderen kann sich der Benutzer leicht und (fast) kostenlos ein eigenes Bild machen. Regelmässig muss die Qualität, Aktualität und Existenz der Seiten überprüft werden. Dies kann elektronisch geschehen. Allerdings geht die Überprüfung, ob der Inhalt der Webseite noch der Kurzbeschreibung entspricht, nur manuell. 4.3.3 Suche Zu den Informationen kommt man einerseits, wenn man sich durch die Kategorien durchklickt, z.B. Webseiten sucht über Pierce Brosnan, wählt man „Entertainment“, „Movies“, „Actors“, usw... Oder man verwendet die Suchfunktion. Man kann in den Dokumenttiteln und in den Metadaten suchen, wobei man angeben kann, ob in der aktuellen und in darunter liegenden Kategorien oder im gesamten Datenbestand gesucht werden soll. Bei Yahoo! wird die Suchanfrage an Google weitergegeben, sollte nichts oder nur wenig im eigenen Bestand gefunden worden sein. 4.3.4 Ranking Die Treffer werden in alphabetischer Reihenfolge zurückgeliefert. Allerdings heisst das nicht, dass die besten Einträge mit „a“ beginnen. Um die besseren Seiten etwas hervorzuheben, versieht Yahoo! diese Einträge mit dem Bild einer kleinen Sonnenbrille und die ganz neuen mit einem „neu“-Zeichen. Wobei diese Bewertung natürlich wiederum stark vom Bewertenden abhängt. Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 14 5 Vergleich Dieses Kapitel versucht einen Überblick über die 4 vorgestellten Arten des Information Retrieval im Web zu geben. Suchmaschinen Metasuchmaschinen Agenten Google MetaCrawler CiteSeer MetaGer (d) Adresse www.google.com www.metacrawler.com www.csindex.com mesa.rrzn.unihannover.de Entstehungsort Universität Universität Wissenschaftliches Stanford Washington, Seattle Institut Universität Hannover Entstehungsjahr 1997 1995 1997 1998 Probleme für - Netzabdeckung - Reihenfolge der - Beschränkung den Benutzer - „Spam Links“ Ergebnisse der auf - Aktualität der Suchmaschinen wissenschaftliche Treffer - Aktualität der Artikel Treffer Name Probleme für die - PageRank Unterhalter des Services Vorteil Empfohlen Bemerkung Weitere Beispiele Ohne Übertreibung einfach eine wirklich gute Suchmaschine J Kreuz und quer, wenn man die gewünschte Syntax (and, or, ...) anwenden kann Einfache Oberfläche ohne Werbung Hoher Bekanntheitsgrad Alta Vista <6> Lycos <7> Klassifkationen Yahoo! www.yahoo.com Universität Stanford 1994 - Manuelles Anmelden der Webseiten - Suche nach bestimmter Seite evt. negativ - Treffer alphabetisch aufgelistet - Ständiges Überprüfen der Aktualität der Links und der Qualität der Seiten - Verschiedene Syntax der darunter liegenden Suchmaschinen - Formatierungsänderung der Suchmaschinen - Schnelles Liefern Ergebnisse - Werbung Grössere Netzabdeckung durch Verwendung mehrerer Suchmaschinen - Finden der Referenzen Wenn „kreuz und quer“ noch nicht alles liefert... Wissenschaftliche Suche in Artikel, Kategorien, Sitzungsprotokolle, Themengebiet technische Berichte ... Laut wissenschaftlichen Untersuchung eine gute Abdeckung Nicht ganz einfach Findet Yahoo! sich wenig, werden zurechtzufinden Suchergebnisse von Google <1> geliefert Liste von Agenten Excite <8> siehe <14> InfoSeek <9> Web.de <10> Search.com <11> Metafind <12> Dogpile <13> Auf Webseiten wissenschaftliche wurden durch Artikel spezialisiert Personal überprüft Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen Seite 15 6 Ausblick Die verfügbaren Informationen auf dem Internet werden sicherlich auch in Zukunft immer vielfältiger. Seitdem ich mein Studium 1997 an der Uni angefangen habe, ist das Internet auch im Studium anderer Fachrichtungen nicht mehr wegzudenken. Um Vorträge vorzubereiten, geht man nicht mehr in die Bibliothek, sondern sucht sich einen Grossteil der Informationen auf dem Internet zusammen. Genauso ergeht es mir beim Ferien buchen. Das Reisebüro ist eher meine letzte Anlaufstelle, wenn ich denn gar nichts auf dem Internet finden sollte. Ich bin bisher sozusagen noch nie enttäuscht worden. Man findet im Grunde genommen alles auf dem Internet und oft auch Dinge, die man nicht erwartet hätte. Wie wird wohl die Zukunft aussehen? Wie werden wir auf diese riesige Menge von Daten zugreifen können? Sicherlich werden unsere Prozessoren immer schneller, Speicher wird immer billiger, die Leute immer schlauer, wie Probleme gelöst werden können. Aller hier genannten Ideen scheinen mir sinnvoll, wobei ich das Gefühl habe, dass die Agenten noch viel Entwicklungspotential bilden. Bei den Suchmaschinen, Metasuchmaschinen und Klassifikationen spielen Algorithmen, Speicherverfahren usw. die Hauptrolle. Das wird sich sicherlich noch verbessern. Bei der Weiterentwicklung der Agenten hingegen gilt es menschliche Verhaltensmuster zu analysieren, damit sie lernen uns in Zukunft bei unserer täglichen Arbeit zu unterstützen. Ich bin schon neugierig, was auf diesem Gebiet in Zukunft herausgefunden wird – wer weiss, vielleicht bin ich sogar daran beteiligt? 7 Literaturverzeichnis [1] The Anatomy of a Large-Scale Hyptertextual Web Search Engine Sergey Brin, Lawrence Page; Computer Science Departement, Stanford University; 1997 [2] The MetaCrawler Architecture for Resource Aggregation on the Web Erik Selberg, Oren Etzioni; Departement of Computer Science and Engineering University of Washington, Seattle; 1996 [3] Internet Information Retrieval – The Further Development of Meta-Searchengine Technology Wolfgang Sander-Beuerman, Mario Schomburg; Regionales Rechenzentrum Niedersachsen, Institute for Computer Networks and Distributed Systems Hannover; 1998 [4] Autonomous Citation Matching Steve Lawrence, C. Lee Giles, Kurt D. Bollacker; NEC Research Institute, Princeton; 1999 [5] Indexing and Retrieval of Scientific Literature Steve Lawrence, Kurt Bollacker, C. Lee Giles; NEX Research Institute, Princeton [6] Context in Web Search Steve Lawrence; NEC Research Institute, Princeton; 2000 [7] Information Agent Technology for the Internet: A Survey Matthias Klusch; German Research Center for Artificial Intelligence, Saarbrücken [8] Intelligente Softwareagenten Walter Brenner, Rüdiger Zarnekow, Hartmut Wittig, Springer; 1998 [9] Funktionalität von WWW-Katalogen Prof. Dr. Norbert Fuhr, Universität Dortmund [10] Information Retrieval Skript Prof. Dr. Nobert Fuhr, Universität Dortmund Suchmaschinen, Metasuchmaschinen, Agenten und Klassifikationen 8 Abbildungsverzeichnis Abbildung 1: Architektur von Google Abbildung 2: Hit List, Lexicon, Inverted and Forward Barrel Abbildung 3: Architektur von MetaCrawler Abbildung 4: Eigenschaften von Agenten Abbildung 5: Monohierarchie-Polyhierarchie Abbildung 6: Polydimensionalität Abbildung 7: Facetten- oder synthetische Klassifikation 9 Links <1> <2> <3> <4> <5> <6> <7> <8> <9> <10> <11> <12> <13> <14> www.google.com www.metacrawler.com meta.rrzn.uni-hannover.de www.csindex.com www.yahoo.com www.altavista.com www.lycos.com www.excite.com www.infoseek.com web.de www.search.com www.metafind.com www.dogpile.com www.robotstxt.org/wc/active/html/type.html Seite 16