Ähnlichkeitssuche auf XML-Daten Christine Lehmacher Gabriele Schlipköther Übersicht Information Retrieval Vektorraummodell Gewichtung Ähnlichkeitsfunktionen Ähnlichkeitssuche Definition, Anforderungen Probleme Konzept Anfragesprachen XXL XIRQL Literaturangaben 1
Information Retrieval Wiedergewinnung von Daten Datenmengen wachsen rapide Inhaltliche Suche nach semantisch relevanten Dokumenten vage, unsichere Anfragen Gib mir etwas über einen Mann dessen Name klingt wie Gudi und der um 1900 gelebt hat? Datenbanken Anfragemenge genau spezifiziert feste Kalküle Ergebnismenge durch Struktur der Datenbank festgelegt Suchmaschinen Boolsches Retrieval Einfache Suche nach Auftreten von Wörtern in Dokumenten Anfragen verknüpft durch AND, OR und NOT in den meisten IR Systemen und Suchmaschinen eingesetzt Nachteile keine semantische Suche keine Möglichkeit der vagen Suche Ergebnisse sind ungeordnete Mengen kein Ranked Retrieval XML Eigenschaften werden nicht ausgewertet 2
Vektorraummodell Ausgehend von einer endlichen Menge von Termen Dokument und Anfrage werden als Vektoren dargestellt Definition: Sei T = { t 1,..., t n } eine endliche Menge von Termen und D = { d 1,..., d m } eine Menge von Dokumenten. Für jedes Dokument d i D sei zu jedem Term t k T ein Gewicht w i,k R gegeben. Die Gewichte des Dokumentes d i lassen sich zu einem Vektor w i = ( w i,1,..., w i,n ) R n zusammenfassen. Dieser Vektor beschreibt das Dokument im Vektorraummodell... Gewichtungsmethoden Manuelle Gewichtung hoher Arbeitsaufwand abhängig vom Wissenstand und Interessen automatische Methoden der Gewichtung ohne Wörter der Stoppwortliste kontextunabhängige Gewichtung Häufigkeit des Auftreten eines Termes in den gesamten Dokumenten inverse Dokumentenhäufigkeit (idf) 1 idf(j) Kontextabhängige Gewichtung = d(j) Häufigkeit des Auftretens eines Terms innerhalb eines Dokumentes Dokumentenhäufigkeit (TF) Struktur auswerten (Titel höher gewichten, Position im Text) Verknüpfung von kontextunahängigen und kontextabhängigen Wert (tf*idf) Verknüpfung von automatischer und manueller Gewichtung 3
Eine Ähnlichkeitsfunktion s : R Ähnlichkeitsfunktionen n definiere für je zwei Vektoren x, y R einen reellen Ähnlichkeitswert s( x,y). Skalarprodukt linearer Wert Werte hängen von der Anzahl und Größe der einzelnen Werte im Vektor ab abhängig von der euklidische Länge der Dokumentenvektoren Cosinusmaß unabhängig von der euklidischen Länge der Vektoren cos(w, q) = i n n w k = i,k q 1 k n 2 n wi, k k = 1 n R R q 2 k = 1 k Beschränkung der Suchanfrage Websuchmaschinen beschränken sich auf die... Auswertung von Wort- und Termhäufigkeiten Analyse der Linkstruktur zwischen den Dokumenten Websuchmaschinen nutzen keine Eigenschaften von XML Strukturen Komplizierte Suchanfragen 4
Probleme bei der Ähnlichkeitssuche Dokumentenstruktur muss im voraus bekannt sein Problem bei Wortvarianten Verlust der semantischen Information Vagheit der Anfragen textorientierte Informationsbestände Anfrageergebnisse sind ungeordnete Mengen Stark schematisierte, geschlossene XML- Dokumentenkollektionen Anforderungen an die Ähnlichkeitssuche I Relevanz-orientierte Suche Phonetische Ähnlichkeit Kombination von Termgewichtung und strukturellen Bedingungen Automatischen Folgerungen von ähnlichen Termen Verschiedene Datentypen für vage Vorhersagen 5
Anforderungen an die Ähnlichkeitssuche II Mehrgleisiger Informationszugang Programmunterstützte Stichworte fein gegliedertes Verweisverzeichnis Text-retrieval-Suche Domänenspezifisch vergebene XML-Elementnamen Konzept der Ähnlichkeitssuche Ausgangspunkt ist der natürlichsprachige Text Indexierung/Aufbereitung der Daten Das System gibt eine Menge von Dokumenten aus, die relevant sind 6
Anfrageergebnis Recall Präzision Antwortzeit Nutzeraufwand Ergebnispräsentation Abdeckung Anfragesprachen XPATH XML-QL Quilt XIRQL XXL 7
XXL Ranked Retrieval Relevanz-Scores 1. Ermittlung lokal auf Elementbasis für elementare Ähnlichkeitsbedingungen 2. Zusammensetzung zu einem globalen Relevanzmass für ganze Elementpfade bzw. Teilgraphen des XML- Datengraphen 3. Ergebnis:Trefferrangliste Besonderheiten der Anfragesprache XXL Entwicklung einer einfachen Sprache Ontologiegerüst Erweiterung um den Ähnlichkeitsoperator ~ Where -Klausel Operatoren (+,?,*) Wildcards für Elemente (%) und Pfade (#) Knotenvariable As 8
<Land>Deutschland Beispiel <See>Bodensee <Transportmittel>Schiff</Transportmittel> </See> </Land> <Land>Schweiz <Freizeit>Kinopolis <Fahrzeug>Schiff</Fahrzeug> <Transportmittel>alle </Transportmittel> </Freizeit> </Land> Select P Beispiel einer XXL- Anfragesuche I From http://travel.edu/somewhere.xml Where land./see Kino As P And P.# LIKE %Schiffe% And P.#.Personenbeförderung LIKE %Schaufelraddampfer% = Ergebnis: leere Menge, da in keinem Dokument explizit das Wort Schaufelraddampfer auftaucht 9
Select P Anfrage II From http://travel.edu/somewhere.xml Where land.~see AS P And P.#.(-Schiffe)?~ Schiffe And P.#.~Personenbeförderung~ Schaufelraddampfer = Menge von Ähnlichkeitsmaßen, aufgrund des ~ -Operators Ergebnis: 0.32 <See> Bodensee </See> //0.64=0.8*0.8 Indexstrukturen Effiziente Auswertung Erfordert Strukturinformationen Inhaltliche Informationen Indexstrukturen: 1.Elementpfadindex 2.Elementinhaltindex 3.Ontologieindex 10
Elementpfadindex 1. Alle Elementnamen werden einmal gespeichert 2. Zu jedem Elementnamen werden die Elementinstanzen gespeichert 3. Indexinterne Zeiger auf Vorgänger und Nachfolger werden zu jeder Elementinstanz gespeichert Anlegen eines B*-Baumes über die Elementnamen Zugriff auf Vorgänger/Nachfolger Separate Dictionaries für die Elementnamen und die URLs Attribute werden wie Elemente behandelt Elementinhaltsindex Terme für Element- und Attributinhalte werden zusammen mit den entsprechenden tf*idf-werten abgelegt entspricht weitgehend der Indexstruktur, wie sie in den meisten Websuchmaschinen verwendet wird 11
Ontologiebasierte Ähnlichkeit Ontologiegerüst Baum T=(V,E) Knotenmenge V Kantenmenge E Ausschnitt aus einer Ontologie der XML- Suchmaschine Wurzel Transportmittel [1] [1] [2] Landfahrzeuge Wasserfahrzeuge [1] [2] [3] [4] Kanu Tretboot Schiff Fähre 12
Crawlingprozess Tiefe und Dauer des Crawlings richtet sich nach folgenden Kriterien: 1. Füllgrad des Ontologieindex 2. Qualität der Dokumente im Index 3. Klassifikationsergebnisse Ontologie-Crawling Web URL Queue www.link.com ------------ ---------- ------ Crawler DTDs/Schemata Index Ontologie 13
Zusammenfassung Eingeschränkte Websuche erfordert Kombination von traditionellen Information Retrieval mit Ranked Retrieval Suchergebnis nach absteigender Relevanz sortiert Indexstrukturen zur effizienten Auswertung Anfragesprache XXL XIRQL XML Information Retrieval Language Teil des Projektes CARMEN Hypermedia Retreival Engine for XML (HyREX) Zwischensprache zur Implementierung von Anwendungen Inhalts- und Struktur-orientiertes Retrieval Gewichtung bei der Indexierung und Anfragestellung Ranked Retrieval Formulierung von Anfragebedingungen mit Datentypen und ihren vagen Prädikaten Semantischer Relativismus Relevanz orientierte Suche 14
Vergleich zu XXL gleiche Funktionen Gewichtung, Ranked Retrieval Suche ohne Berücksichtigung, ob XML-Element oder Attribut Nicht vorhanden in XIRQL Oberfläche für Endbenutzer Unterschiede zusätzlicher Gatherer bei XIRQL, anstatt Crawlingprozess Datentypen und vage Prädikate vs. Ontologieindex Relevanz-orientierte Suche automatische Erkennung des relevanten Teiles eines Dokumentes Fazit nutzt die XML spezifischen Möglichkeiten besser aus XIRQL Syntax (1) Gewichtung $c$ (contains) $wsum$ Suche nach mehreren Wörtern Datentypen und Vage Prädikate zusätzliche Operatoren in XIRQL $c$ $sounds-like$ $approx$ 15
Semantischer Relativismus author Elementsuche @author Attributsuche ~author übergreifende Suche #pname Datentypsuche XIRQL Syntax (2) Relevanz-orientierte Suche automatische Erkennung des relevanten Teiles eines Dokumentes //#inode [(. $c$ IR ) $and$ (.$ HT )] XML Beispiel Datei <document class= H.3.3 > <author>john Smith</author> <title> XML Retrieval</title> <chapter> <Heading> Introduction</heading> Thist text explains all about XML an IR. </chapter> <chapter> <Heading> Extensible Style Language</heading> <section> <heading> Syntax</heading> </section> <section> <heading> Examples</heading> </section> </chapter> </document> 16
Beispiel - Relevanz orientierte Suche Zusammenfassung Information Retrieval Vektorraummodell, um IR zu realisieren Anforderungen an Dokument- und inhaltsorientiertes Information Retrieval Suche unabhängig von der XML Definition (Attribute - Elemente) Gewichtung, bzw. gewichtete Anfrageergebnisse (Ranked Retrieval) Angabe von vagen Prädikaten erweiterte Datentypen struktureller Relativismus nur die relevanten Teile eines Dokumentes selektieren (relevanz-orientierte Suche) aktuelle Anfragesprachen nicht ausreichend neue Anfragesprachen XXL XIRQL 17
Links und Literatur Sergej Sizov, Anja Theobald, Gerhard Weikum, Ähnlichkeitssuche auf XML-Daten, Datenbankspektrum 1/2001 R.Ferber, Vorlesungsskript, Data Mining und Information Retrieval P.Becker, Vorlesungsskript, Information Retrieval Datenstrukturen und algorithmische Grundlagen XIRQL, A Query Language for Information Retrieval in XML Documents, Norbert Fuhr, Kai Großjohann, Uni-Dortmund, SIGIR 01 September 2001 www:http://www-dbs.cs.uni-sb.de http://www.dcs.gla.ac.uk/keith/preface.html 18