Klassische Retrievalmodelle 3. Klassische Retrievalmodelle • zentrales Problem des IR: welche Dokumente sind relevant, welche nicht? • wird üblicherweise mit Hilfe eines Rankingalgorithmus entschieden: – bringt Dokumente bezüglich einer Anfrage in eine Reihenfolge: sehr relevant bis wenig relevant – geht von bestimmten Voraussetzungen aus, was Relevanz angeht • ein Retrievalmodell wird definiert durch diese zugrundeliegenden Voraussetzungen Einführung in Information Retrieval 74 Retrieval Modell ein Retrievalmodell besteht (formal) aus: • einer Menge D von Repräsentationen für die Dokumente • einer Menge Q von Repräsentationen für die Benutzeranfragen • einer Rankingfunktion, die jedem Anfrage/Dokumentpaar eine reelle Zahl (das Ranking) zuweist, nach der Dokumente sortiert werden: R : Q × D → IR Einführung in Information Retrieval 75 Klassisches Textretrieval • Dokumente können auf viele verschiedene Arten repräsentiert werden: Schlagworte, Menge aller enthaltenen Worte, Volltext, usw. • wir gehen davon aus, daß Dokumente und Anfragen durch Schlüsselwörter (Terme) beschrieben werden Einführung in Information Retrieval 76 Darstellung Darstellung der Dokumente durch Vektoren: d~1 d~2 .. d~n t1 t2 t3 t4 w1,1 w1,2 w1,3 w1,4 w2,1 w2,2 w2,3 w2,4 .. .. .. .. wn,1 wn,2 wn,3 wn,4 . . . tk · · · w1,k · · · w2,k . . . .. · · · wn,k • die wi,j bezeichnen Gewichte, auf die später eingegangen wird Einführung in Information Retrieval 77 Boolesches Modell 3.1. Boolesches Modell • alle Gewichte wi,j sind entweder 0 oder 1 • in einer Anfrage können Terme mit den Booleschen Operatoren UND (∧), ODER (∨) oder NICHT (¬) verknüpft werden • Beispiel: Q = ta ∧ (tb ∨ ¬tc) Einführung in Information Retrieval 78 Ranking • die Rankingfunktion R bildet nur auf 0 oder 1 ab • Auswertung nach den normalen Regeln der Booleschen Algebra: ◦ R(ti, d~j ) = wj,i ◦ R(q1 ∧ q2, d~j ) = R(q1, d~j ) ∧ R(q2, d~j ) ◦ R(q1 ∨ q2, d~j ) = R(q1, d~j ) ∨ R(q2, d~j ) ◦ R(¬q, d~j ) = ¬R(q, d~j ) Einführung in Information Retrieval 79 Vorteile • einfach zu implementieren • stellt keine hohen Anforderungen an Rechner Einführung in Information Retrieval 80 Nachteile • die Größe der Antwortmenge ist schwer zu kontrollieren (Bsp: ta ∧ tb: 100.000 Treffer, ta ∧ tb ∧ tc: 0 Treffer) • R ist eigentlich keine echte Rankingfunktion, da nur zwischen relevant (1) und nicht relevant (0) unterschieden wird (zu starke Trennung) • Terme können nicht gewichtet werden Einführung in Information Retrieval 81 Fazit • Boolesches Retrieval ist für IR nicht besonders gut geeignet • stammt aus der Zeit als Rechner noch nicht besonders leistungsfähig waren Einführung in Information Retrieval 82 Vektormodell 3.2. Vektormodell • Vektormodell ist nicht von heute auf morgen entstanden • wir gehen verschiedene Stufen durch: – Koordinatenmatching – term frequency (TF) – inverse document frequency (IDF) – vollständiges Vektormodell Einführung in Information Retrieval 83 Koordinatenmatching 3.2.1. Koordinatenmatching • einfach zählen, wieviel gesuchte Terme in einem Dokument vorkommen: je mehr, desto besser • ist eine Art Zwischenstufe zwischen Booleschem ∧ und Booleschem ∨ • Anfragen werden ebenfalls als Vektor repräsentiert: ~qi = (qi,1, qi,2, . . . , qi,k ) • Rankingfunktion sieht folgendermaßen aus: k X ~ qi,l · wj,l R(~qi, dj ) = l=1 Einführung in Information Retrieval 84 Beispiel Einführung in Information Retrieval 85 Beispiel R(eat, d6) = 1 R(hot porridge, d1) = 2 R(hot porridge, d2) = 1 R(hot porridge, d4) = 1 R(hot porridge, d5) = 1 Einführung in Information Retrieval 86 Vor-/Nachteile • mächtiger als Boolesches Modell, hat aber drei entscheidende Nachteile • berücksichtigt nicht die Häufigkeit von Termen in Dokumenten • berücksichtigt nicht die Seltenheit von Termen über alle Dokumente • lange Dokumente werden bevorzugt Einführung in Information Retrieval 87 TF/IDF 3.2.2. TF/IDF • Beheben der ersten beiden Nachteile mit – TF (term frequency) Faktor: wie häufig taucht ein Term ti innerhalb eines Dokuments dj auf? – IDF (inversed document frequency) Faktor: in wievielen Dokumenten taucht ein Term ti auf? • Gewichte wj,i in Dokumentvektoren werden nun so berechnet: wj,i = rj,i · wi ↑ ↑ TF-Faktor IDF-Faktor Einführung in Information Retrieval 88 TF-Faktor • Was für TF-Faktoren benutzt man? • viele verschiedene Ansätze: ◦ rj,i = 1 ◦ rj,i = fj,i ◦ rj,i = 1 + loge(fj,i) (rj,i = 0 für fj,i = 0) (fj,i gibt die Anzahl von Term ti in Dokument dj an) Einführung in Information Retrieval 89 IDF-Faktor • Was für IDF-Faktoren benutzt man? • auch hier wieder verschiedenen Ansätze: ◦ wi = f1 i ◦ wi = loge(1 + fn ) i (fi gibt die Anzahl der Dokumente an, in denen ti auftritt) Einführung in Information Retrieval 90 weitere TF/IDF Varianten • es gibt noch Dutzende von anderen Varianten, wie z.B. fj,i ◦ rj,i = (c + (1 − c) max f ) i j,i i) ◦ wi = loge( n−f fi • im Allgemeinen unterscheidet sich die Qualität der verschiedenen Varianten nicht stark voneinander (Zobel, Moffat 1998) Einführung in Information Retrieval 91 TFxIDF Heuristik • Rankingfunktion wird TFxIDF Heuristik genannt, wenn fj,i monoton steigend und fi monoton fallend eingeht TF R R IDF fi f j,i Einführung in Information Retrieval 92 Beispiel R(eat, d6) = 1.95 R(hot porridge, d1) = 3.26 R(hot porridge, d2) = 1.10 R(hot porridge, d4) = 1.39 R(hot porridge, d5) = 1.87 Einführung in Information Retrieval 93 Was gibt es noch zu sagen? • wir haben jetzt zwar die Gewichte modifiziert, aber immer noch die gleiche Formel: k X ~ R(~qi, dj ) = qi,l · wj,l l=1 • große Dokumente werden gegenüber kleinen Dokumenten bevorzugt Einführung in Information Retrieval 94 Vektormodell 3.2.3. vollständiges Vektormodell • im Vektormodell wird Ähnlichkeit der Vektoren berechnet • zwei Ansätze – Euklidischer Abstand – Richtung Einführung in Information Retrieval 95 Euklidischer Abstand t1 q d t2 R(~q, d~j ) = = Einführung in Information Retrieval 1 Distanz(~q, d~j ) 1 v u uP t k |q − d |2 j,l l=1 l 96 Euklidischer Abstand • da Anfrage im Regelfall viel kleiner sein wird als Dokument haben wir jetzt gegenteiliges Problem • je größer ein Dokument, desto unähnlicher zur Anfrage wird es sein • Verfahren ist also nicht geeignet Einführung in Information Retrieval 97 Richtung t1 q d t2 • je kleiner der Winkel, desto ähnlicher sind Anfrage und Dokument • da alle Komponenten in allen Vektoren > 0, haben wir nur Winkel zwischen 0◦ und 90◦ • je größer Winkel θ, desto kleiner cos θ • je kleiner Winkel θ, desto größer cos θ Einführung in Information Retrieval 98 Winkelberechnung • es gilt: ~x ◦ ~y cos θ = |~x| · |~y | mit |~x| = v u u u X u u t k l=i x2k • Rankingfunktion im Vektormodell: ~j ~ q ◦ d R(~q, d~j ) = |~q| · |d~j | Einführung in Information Retrieval 99 Beispiel • |d~j | ist oben mit Wd gekennzeichnet • |~q| für eat“ ist 1.95 ” • |~q| für hot porridge“ ist 1.77 ” R(eat, d6) = 0.71 R(hot porridge, d1) = 0.66 R(hot porridge, d2) = 0.359 R(hot porridge, d4) = 0.355 R(hot porridge, d5) = 0.44 Einführung in Information Retrieval 100 Probabilistisches Modell 3.3. Probabilistisches Modell • kurzer Ausflug in die Wahrscheinlichkeitstheorie • für probabilistisches Modell sind bedingte Wahrscheinlichkeiten nötig • Vorwissen über das Ergebnis eines Zufallsexperiments beeinflußt Gesamtwahrscheinlichkeit Einführung in Information Retrieval 101 Beispiel • Freund wirft 2 (nicht gezinkte) Münzen, eine Münze zeigt Kopf, die andere sieht man nicht. Was ist Wahrscheinlichkeit, daß beide Kopf zeigen? K Z Einführung in Information Retrieval K 1 4 Z 1 4 K 1 4 Z 1 4 102 Wahrscheinlichkeitstheorie • S ist die Menge aller möglichen elementaren Ereignisse im Beispiel: S = { K/K, K/Z, Z/K, Z/Z } • eine Untermenge von S nennt man schlicht ein Ereignis Beispiel: A = mindestens eine Zahl S K/Z K/K Z/K Einführung in Information Retrieval A Z/Z 103 Bedingte Wahrscheinlichkeiten • P (A|B) bezeichnet die Wahrscheinlichkeit für das Ereignis A unter der Bedingung, daß das Ereignis B eingetreten ist • P (A|B) = P P(A∩B) (B) , wobei P (A ∩ B) die Wahrscheinlichkeit dafür ist, daß A und B eingetreten sind • da wir wissen, daß B eingetreten ist beziehen wir uns nicht mehr auf S, sondern auf B Einführung in Information Retrieval 104 Beispiel • für unser Beispiel haben wir: – A = beide Münzen zeigen Kopf – B = mindestens eine Münze zeigt Kopf S K/Z Z/Z Z/K K/K B A • P (A ∩ B) = 14 • P (B) = 34 • P (A|B) = 14 / 34 = 13 Einführung in Information Retrieval 105 Bayes Theorem • Bayes Theorem ist auf Formel für bedingte Wahrscheinlichkeit abgeleitet • kann die Berechnung bestimmter bedingter Wahrscheinlichkeiten vereinfachen P (A|B) = P P(A∩B) (B) P (B|A) = P P(A∩B) (A) (B|A) ⇒ P (A|B) = P (A)·P P (B) Einführung in Information Retrieval 106 Zusammenhang mit IR • Was hat das alles mit IR zu tun? • probabilistisches Modell untersucht Zusammenhang zwischen Suchtermen und der Relevanz eines Dokuments Einführung in Information Retrieval 107 Relevanz von Dokumenten • vier Fälle werden unterschieden: Term enthalten Dokument ist relevant nicht relevant True Positives False Positives ( Gute Treffer“) ( Falscher Alarm“) ” ” False Negatives True Negatives Term n. enthalten ( Hier fehlt ( Keine Antwort ist ” ” etwas“) auch eine Antwort“) Einführung in Information Retrieval 108 Relevanz von Dokumenten • wann ist Term gut geeignet um Relevanz eines Dokuments zu bestimmen? True Positives • wenn der Anteil False Positives True Negatives groß ist und der Anteil False Negatives • wir wählen als Gewicht wi eines Terms ti: P (Dok. relevant|Term ist da) wi = P (Dok. nicht relevant|Term ist da) · P (Dok. nicht relevant|Term ist nicht da) P (Dok. relevant|Term ist nicht da) Einführung in Information Retrieval 109 Berechnung der Wahrscheinlichkeiten • wie berechnet man diese Wahrscheinlichkeiten? • P (Dok. (nicht) relevant|Term ist (nicht) da) ist schwierig zu berechnen • P (Term ist (nicht) da|Dok. (nicht) relevant) ist (mit Hilfe des Benutzers) sehr viel leichter zu berechnen Einführung in Information Retrieval 110 Berechnung der Wahrscheinlichkeiten • wir geben Benutzer eine Reihe von Dokumenten zur Auswahl (z.B. solche die mit Vektormodell bestimmt wurden) • Benutzer sagt uns welche davon relevant und welche nicht relevant sind • Wahrscheinlichkeiten können dann aus den jeweiligen Anzahlen der Dokumente abgeschätzt werden Einführung in Information Retrieval 111 Anzahl Dokumente n t da ft t nicht da n − ft Einführung in Information Retrieval Anzahl Dokumente relevant nicht relevant R n−R Rt ft − R t R − Rt n − ft − (R − Rt) 112 Abschätzung P (Dok. relevant|Term ist da) wi = P (Dok. nicht relevant|Term ist da) · P (Dok. nicht relevant|Term ist nicht da) P (Dok. relevant|Term ist nicht da) P (Term ist da|Dok. relevant) = P (Term ist da|Dok. nicht relevant) · P (Term ist nicht da|Dok. nicht relevant) P (Term ist nicht da|Dok. relevant) t·(n−ft−(R−Rt )) = R(f t−Rt)·(R−Rt ) Einführung in Information Retrieval 113 Bedeutung • wi > 1 unterstützt die Hypothese, daß bei Vorhandensein von Term Dokument relevant ist • wi < 1 unterstützt die Hypothese, daß bei Vorhandensein von Term Dokument nicht relevant ist • wi = 1 bedeutet, daß Term keinen Einfluß auf Relevanz hat Einführung in Information Retrieval 114 Gewichtung • Ranking im probabilistischen Modell unterscheidet sich von den anderen Modellen, daß Anfrage nicht direkt eingeht • Benutzer steuert Anfragen über Feedback • Rankingfunktion sieht also so aus: R(q, dj ) = Y ti∈dj wi • da nur Ranking, aber keine absoluten Zahlen gefordert sind, wird oft R(q, dj ) = X ti∈dj log(wi) benutzt Einführung in Information Retrieval 115 Kaltstart • wie bereits angesprochen, wird probabilistisches Ranking oft auf Ergebnisse von Vektormodellanfrage angewendet • man kann aber auch probabilistische Anfragen ohne Hilfe anderer Modelle durchführen • für den ersten Durchlauf wird angenommen: P (Term ist da|Dok. relevant) = 0.5 P (Term ist da|Dok. nicht relevant) = fnt • mit den r relevantesten Dokumenten wird dann iterativ weitergemacht Einführung in Information Retrieval 116 Gesamtfazit 3.4. Fazit • Boolesches Modell ist schwächstes Modell, Hauptproblem: kein Ranking • kontrovers, ob prob. Modell oder Vektormodell besser – Croft: nach Experimenten ist prob. Modell besser – Salton & Buckley: legen andere Maße an, zeigen Gegenteil • man nimmt an, daß im allgemeinen Fall Vektormodell etwas besser ist Einführung in Information Retrieval 117