Klassisches Information Retrieval

27.10.2011

Jan Schrader

Information Retrieval (IR) ●





„Information retrieval (IR) is finding material (usually documents) of an unstructured nature (usually text) that satisfies an information need from within large collections (usually stored on computers).“ (nach [2]) Abgrenzung zu Information Filtering (Pull vs. Push) Abgrenzung zu Empfehlungssystemen (keine Benutzerpräferenzen)

Infromation Retrieval (IR) (2) Informationsbedürfniss

Formalisierung

Anfrage

Anfragesprache

Index

Ähnlichkeitsbestimmung

1

Dokument1

2

Dokument2

...

...

n

DokumentN

Boolesches Retrieval ●



Inspiriert von der Booleschen Algebra UND

ODER

NICHT

A, B → true

A,B → true

A → false

A,-B → false

A,-B → true

-A → true

-A,B → false

-A,B → true

-A,-B → false

-A,-B → false

Alle Gesetze zur Booleschen Algebra nutzbar

Boolesches Retrieval (2) ●

Seit den 1950er Jahren



Indexieren per Hand



Es gibt nur die Werte 0 (falsch) und 1 (wahr)



● ●

Wörter der Anfrage werden mit Boolschen Operatoren (UND, ODER, NICHT, ()) verknüpft Kein relevance ranking Komplizierte Anfragen → z.B. falsche Klammerung

Boolesches Retrieval (3) ●

Beispiel: –

(Jaguar ODER Puma) UND Raubkatze UND NICHT (Auto ODER Schuhe)



Antwortmenge schwer zu kontrollieren



Keine Häufigkeiten bzw. Gewichtungen möglich



Zu schwach (x1 ODER x2 ODER … ODER xN)



Zu stark (x1 UND x2 UND … UND xN)

Erweitertes Boolesches Retrieval ●

● ●

● ●



Anfrage und Dokumenten Terme werden gewichtet [0...1] (→ Fuzzy Logik) Woher kommen die Gewichte? Ranking Fuktion z.B. AND_MIN(w1,w2), OR_MAX(w1,w2), NOT_MINUS(1 - w1) Auch + *, Paice, P-Norm, Operatoren möglich Trotz weiterer Operatoren kann man Fälle konstruieren die gegen die Intuition laufen Immer noch schlechte Retrieval Qualität

Erweitertes Boolesches Retrieval ●

Beispiel: q = ((w1 ODER w2 ODER w3) UND (w4 ODER w5)) ODER w6 0,9 0,2 0,5

0,5

0,3

W1

W2

0,2 W3

0,2

0,1

0,2

0,9

w4

W5

W6

Vektorraummodell ● ●

1960er „erfunden“ von Salton in Harvard/Cornell Dokumente und Anfragen als Punkte im ndimensionalen Vektorraum



Suche nach ähnlichen Vektoren



Ähnlichkeitsmaße notwendig



Anschaulich



Gute Retrieval Ergebnisse

Klassisches probabilistisches Modell ● ●

Nach Robertson/Sparck Jones 1976 Schätzung der Wahrscheinlichkeit, dass ein Dokument d für eine Anfrage q relevant ist



P(d|q) wird berechnet



Unabhängigkeit der Terme wird vorausgesetzt



Bietet keine Verbesserungen



Deshalb nur experimenteller Charakter

Ähnlichkeitsmaße ●

Skalarprodukt:



Beispiel: D1: (0) D2: (2) A: (3)→ sk(D1,A) = 2



[3]

(5)

(1)

(0)→ sk(D2,A) = 16

(1)

(5)

(2)

Kosinusmaß:

[3]



Normiertes Skalarprodukt (mehr Rechenzeit nötig)



Wertebereich (-1,...,1) (→ Übereinstimmung in %)



Berücksichtigt nicht die Länge der Vektoren



Schwer im Mehrdimensionalen zu veranschaulichen

Ähnlichkeitsmaße (2) ●

Dice Koeffizient:

D1 = {t1,t3,t4} D2 = {t1,t2,t4,t5,t6}

(2*2)/(3+5)=4/9=0,44 [3] ●

Normiert zwischen [0...1]



Jaccard Koeffizient 2/6=1/3=0,33 [3]



Distanzmaße möglich (z.B. Manhattan Distanz)

TF-IDF ●



tf = Termfrequenz



N = Anzahl der Dokumente

– df (t i)

= Anzahl Dokumente in denen t vorkommt



Auch normiert möglich



Bevorzugt lange Dokumente



Bei Einfügen eines neuen Dokuments sollte der gesamte Index neu erstellt werden

SMART ●

Seit den 1960er Jahren von Salton entwickelt



Eine der ersten Suchmaschinen



Inzwischen Version 11



Bevorzugt kurze Dokumente

OKAPI (BM25) ●

Familie von Suchfunktionen



Bietet Platz für Parameteroptimierung



Normiert über unterschiedlich Textlängen [0]





f(qi,D) = Termfrequenz, |D| = Länge von D in Wörtern, avgdl = Durchschnittslänge Gewöhnlich k1 = 2.0, b = 0.75

Divergence from Randomness (DFR) ● ●

Ähnlich TF-IDF “The more the divergence of the within-document term-frequency from its frequency within the collection, the more the information carried by the term t in the document d”. [http://terrier.org/]



TF = TF in Sammlung, tf = TF in Dokument, p = 1/Anzahl Dokumente in Sammlung, q = 1-p

Terrier (Terabyte Retriever) ●

Open source Suchmaschine entwickelt in Glasgow



Geschrieben in Java z.Z. Version 3.5



Bietet verschiedene Retrieval Ansätze

[http://terrier.org/]

Literatur Verzeichnis ● ●





Wikipedia :) [0] Ricardo Baeza-Yates und Bertheir Ribeiro-Neto: Modern Information Retrieval (1999) [1] http://nlp.stanford.edu/IRbook/html/htmledition/irbook.html [2] http://www2.inf.fh-rheinsieg.de/~pbecke2m/retrieval/ [3]