3. IR-Modelle
Rückblick Aufteilung in Dokumente anwendungsabhängig Tokenisierung und Normalisierung sprachabhängig Gesetz von Zipf sagt aus, dass einige Wörter sehr häufig vorkommen; Stoppwörter können eliminiert werden Stamm- und Grundformreduktion führt Beugungen des gleichen Wortes auf kanonische Form zurück Editierdistanz nach Levenshtein misst Ähnlichkeit als Anzahl benötigter Editieroperationen Soundex vereinheitlicht Wörter mit ähnlicher Aussprache 2
Motivation Informationsbedürfnis Nutzer IR-Modell Ergebnis: Anfrage 1. 2. 3. Dokumentensammlung 3
Inhalt 3.1 Boole sches Retrieval 3.2 Vektorraummodell 3.3 Probabilistisches IR 3.4 Statistical Language Models 3.5 Latent Semantic Indexing 3.6 Relevance Feedback 3.7 Query Expansion 4
3.1 Boole sches Retrieval Dokumente werden als Mengen von Termen repräsentiert (äquivalent: Belegung einer Boole schen Variable je Term) Anfragen sind Boole sche Ausdrücke zusammengesetzt aus Termen und Operatoren AND ( ), OR ( ) und NOT ( ) gothenburg AND (amusement OR shopping) AND NOT museum Eindeutige Semantik: Dokument erfüllt Anfrage oder nicht 5
Term-Dokument-Matrix Dokumentensammlung als Term-Dokument-Matrix d 1 d 2 d 3 d 4 d 5 d 6 amusement 1 0 0 1 0 1 park 0 1 0 0 1 0 gothenburg 1 1 1 1 1 0 sweden 1 1 1 1 0 1 museum 0 1 0 1 0 1 shopping 0 0 1 0 0 0 liseberg 1 0 0 1 1 0 art 1 0 0 0 0 1 Bei Boole schem Retrieval nur Werte 0 und 1 6
Boole sches Retrieval (Immer noch) weit verbreitet in der Praxis z.b. Bibliotheken http://opac.sulb.uni-saarland.de 7
Boole sches Retrieval Patentrecherche http://appft.uspto.gov/netahtml/pto/search-bool.html Boole sches Retrieval auch unterstützt von modernen Suchmaschinen (z.b. Google und Bing) 8
Kritik und Erweiterungen Fehlende Rangfolge (ranking) der Treffer als Nachteil Boole sches Retrieval kann erweitert werden durch Operatoren basierend auf Termpositionen (z.b. NEAR) Strukturierung der Dokumente (z.b. Titel, Autoren, Inhalt) erlaubt genauere Spezifikation des Informationsbedürfnisses (z.b. author:knuth AND titel:typsetting) kann zur Bestimmung einer Rangfolge verwendet werden (z.b. höheres Gewicht für Treffer im Titel) Eliminierung von Stoppwörtern und Stammformreduktion 9
3.2 Vektorraummodell Idee: Stelle Anfrage und Dokumente als Vektoren dar; verwende Distanz/Ähnlichkeit zur Anfrage, um Rangfolge der Dokumente zu bestimmen Historischer Ursprung: SMART Projekt an der Cornell University in den 1960ern unter der Leitung von Gerard Salton ACM SIGIR (Fachorganisation für IR) verleiht alle drei Jahre den Gerard Salton Award an verdiente Forscher im Bereich IR Quelle: http://www.cs.cornell.edu 10
Mathematische Grundlagen: Vektorrechnung Vektoren bezeichnen Elemente eines mehrdimensionalen Raumes z.b. der euklidischen Ebene des k-dimensionalen Raumes v = 5 v1 v 2 6 œ R 2 v = S W U v 1. v k T R k X V œ R k R 2 oder This image cannot currently be displayed. 5 2 16 Vektoren lassen sich addieren S T S T S T v 1 u 1 v 1 + u 1 W X W X W X v + ų = U V + U V = U. V. v k. u k v k + u k 5 1 36 5 2 16 5 3 46 11
Mathematische Grundlagen: Vektorrechnung Vektoren lassen sich mit Skalar (reeller Zahl) multiplizieren S T S T v 1 v 1 W X W X v = U 5 6 5 6. V = U. V 2 4 2 v k v k 1 2 Vektoren lassen sich multiplizieren S T S T v 1 u 1 W X W X kÿ v ų = U. V U. V = (v i u i ) v k u i=1 k 5 1 36 5 2 16 5 12
Mathematische Grundlagen: Vektorrechnung Vektoren haben eine Länge S T v 1 ˆ W X ıÿ v = U. V = Ù k vi 2 - v k - i=1 5 2 46 4 2 Ô 18 2 2 Kosinus des Zwischenwinkels zweier Vektoren cos(ų, v) = ų v ų v = ų ų v v 5 1 36 = Ò qk q k i=1 (u i v i ) Ò qk 5 2 16 44.77 0.71 i=1 v2 i i=1 u2 i 13
Dokumente und Anfragen als Vektoren Dokumente und Anfragen als Vektoren in Vektorraum mit einer Dimension pro bekanntem Term q d 1 Idee 1: Binäre Termgewichtung d 2 Vektorkomponente ist 1, wenn der Term vorkommt ansonsten ist der Wert der Vektorkomponente 0 wird oft für Anfrage verwendet Beobachtung: Keine Rolle spielt wie oft ein Term in einem Dokument vorkommt wie viele Dokumente einen Term enthalten 14
Termgewichtung mittels tf.idf Idee 2: Termgewichtung mittels tf.idf Termhäufigkeit (term frequency) des Terms v im Dokument d tf (v, d) Dokumentenhäufigkeit (document frequency) des Terms v df (v) Inverse Dokumentenhäufigkeit (inverse document frequency) des Terms v mit D als Kardinalität der Dokumentenmenge D idf (v) = log D df (v) 15
Logarithmische Dämpfung idf 0 20 40 60 80 100 ohne Dämpfung mit Dämpfung D = 100 0 20 40 60 80 100 df Basis des Logarithmus (z.b. 2 oder 10) spielt keine Rolle 16
Termgewichtung mittels tf.idf am Beispiel d 1 d 2 d 3 d 4 d 5 d 6 amusement 2 0 0 2 0 2 park 0 1 0 0 4 0 gothenburg 3 4 2 1 1 0 sweden 1 1 2 1 0 4 museum 0 2 0 4 0 1 shopping 0 0 1 0 0 0 liseberg 1 0 0 1 4 0 art 2 0 0 0 0 4 df (v) 3 2 5 5 3 1 3 2 idf (v) log(6/3) = 1.00 log(6/2) = 1.58 log(6/5) = 0.26 log(6/5) = 0.26 log(6/3) = 1.00 log(6/1) = 2.58 log(6/3) = 1.00 log(6/2) = 1.58 17
Termgewichtung mittels tf.idf am Beispiel d 1 d2 d3 d4 d5 d6 amusement 2.00 2.00 2.00 park 1.58 6.32 gothenburg 0.78 1.04 0.52 0.26 0.26 sweden 0.26 0.26 0.52 0.26 0.78 museum 2.00 4.00 1.00 shopping 2.58 liseberg 1.00 1.00 4.00 art 3.16 6.32 18
Euklidische Distanz Wie misst man Distanz/Ähnlichkeit zweier Vektoren? Idee 1: Euklidische Distanz q d(q, d) = ˆ ıÿ Ù k (q i d i ) 2 i=1 d Problem: Benachteiligung umfangreicher Dokumente, selbst wenn sie die Terme aus der Anfrage enthalten q d 19
Kosinusähnlichkeit Idee 2: Kosinusähnlichkeit misst den Kosinus des Winkels zwischen dem Anfragevektor und einem Dokumentvektor sim(q, d) = q d q d q k i=1 = (q i d i ) Ò qk Ò i=1 q qk i 2 i=1 d 2 i q d Beobachtung: Dokumentvektor hat Ähnlichkeit 1 zum Anfragevektor, wenn er in die gleiche Richtung zeigt, d.h. genau die Terme der Anfrage enthält 20
Vektorraummodell am Beispiel d 1 d2 d3 d4 d5 d6 amusement 2.00 2.00 2.00 park 1.58 6.32 gothenburg 0.78 1.04 0.52 0.26 0.26 sweden 0.26 0.26 0.52 0.26 0.78 museum 2.00 4.00 1.00 shopping 2.58 liseberg 1.00 1.00 4.00 art 3.16 6.32 q 1.00 1.00 1.00 Betrachte Anfrage amusement park gothenburg 21
Vektorraummodell am Beispiel d 1 d2 d3 d4 d5 d6 amusement 2.00 2.00 2.00 park 1.58 6.32 gothenburg 0.78 1.04 0.52 0.26 0.26 sweden 0.26 0.26 0.52 0.26 0.78 museum 2.00 4.00 1.00 shopping 2.58 liseberg 1.00 1.00 4.00 art 3.16 6.32 q 1.00 1.00 1.00 cos( q, d 1 )= 1.00 2.00 + 1.00 0.78 Ô 2.00 2 +0.78 2 +0.26 2 +1.00 2 +3.16 2 Ô1.00 2 +1.00 2 +1.00 2 0.41 22
Vektorraummodell am Beispiel d 1 d2 d3 d4 d5 d6 amusement 2.00 2.00 2.00 park 1.58 6.32 gothenburg 0.78 1.04 0.52 0.26 0.26 sweden 0.26 0.26 0.52 0.26 0.78 museum 2.00 4.00 1.00 shopping 2.58 liseberg 1.00 1.00 4.00 art 3.16 6.32 q 1.00 1.00 1.00 cos( q, d i ) 0.41 0.55 0.11 0.28 0.51 0.17 Dokumente werden also in der Rangfolge d 2, d 5, d 1, d 4, d 6, d 3 zurückgeliefert 23
Vektorraummodell in der Praxis Effizientere Berechnung der Kosinusähnlichkeit durch normalisierte Speicherung der Dokumentvektoren (dazu später mehr in Kapitel 3) Vereinfachte Implementierung der Kosinusähnlichkeit sim(q, d) = ÿ v œ q tf (v, d) idf (v) mit q und d als Anfrage und Dokument als Multimengen Zahlreiche Variationen der tf.idf-termgewichtung z.b. mit logarithmischer Dämpfung der Termhäufigkeit 24
Zusammenfassung Boole sches Retrieval als frühes, aber immer noch verbreitetes IR-Modell mit zahlreichen Erweiterungen Vektorraummodell stellt Anfrage und Dokumente als Vektoren in gemeinsamen Vektorraum dar tf.idf-termgewichtung berücksichtigt Termhäufigkeit im Dokument und Dokumentenhäufigkeit in Dokumentensammlung Bestimmung einer Rangfolge gemäß Kosinusähnlichkeit zwischen Anfrage- und Dokumentvektor 25
Literatur [1] C. D. Manning, P. Raghavan, H. Schütze: Introduction to Information Retrieval, Cambridge University Press, 2008 (Kapitel 6) 26