19.03.2014 Aufrufe

Boolesche- und Vektorraum- Modelle Retrieval Modelle Klassen ...

Boolesche- und Vektorraum- Modelle Retrieval Modelle Klassen ...

Boolesche- und Vektorraum- Modelle Retrieval Modelle Klassen ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Das Kosinus-Ähnlichkeitsmaß<br />

• Kosinus-Ähnlichkeit misst den Kosinus<br />

t 3<br />

des Winkels zwischen zwei Vektoren.<br />

• Dies ist das Skalarprodukt normalisiert θ 1<br />

durch die Vektorlänge.<br />

t<br />

r r<br />

D<br />

∑ ( ⋅<br />

1<br />

d<br />

Q<br />

• q w ij w iq<br />

)<br />

j<br />

i = 1<br />

CosSim(d =<br />

j<br />

, q) = r r<br />

θ<br />

t<br />

2 t<br />

2<br />

2 t<br />

d j ⋅ q<br />

1<br />

∑ w ij ⋅ ∑ w iq<br />

i = 1 i = 1<br />

t 2 D 2<br />

D 1 = 2T 1 + 3T 2 + 5T 3 CosSim(D 1 , Q) = 10 / √(4+9+25)(0+0+4) = 0.81<br />

D 2 = 3T 1 + 7T 2 + 1T 3 CosSim(D 2 , Q) = 2 / √(9+49+1)(0+0+4) = 0.13<br />

Q = 0T 1 + 0T 2 + 2T 3<br />

D 1 is 6 mal besser als D 2 wenn die Kosinusähnlichkeit verwendet wird, aber nur 5<br />

mal besser bei Verwendung des Skalarprodukts.<br />

Naive Implementierung<br />

• Berechne für jedes Dokument der Sammlung D einen tf-idf -<br />

gewichteten Vektor d j mit Länge |V| (V=Vokabular).<br />

• Konvertiere die Anfrage in einen tf-idf-gewichteten Vektor q.<br />

• Für jedes d j in D<br />

berechne Wert (Score) s j = cosSim(d j, q)<br />

• Sortiere Dokumente nach abnehmendem Score.<br />

• Präsentiere dem Anwender die besten Dokumente.<br />

Zeitkomplexität: O(|V|·|D|) Schlecht für größere V <strong>und</strong> D !<br />

|V| = 10,000; |D| = 100,000; |V|·|D| = 1,000,000,000<br />

25<br />

26<br />

Kommentare zum <strong>Vektorraum</strong>-Modell<br />

• Einfacher, mathematisch basierter Ansatz.<br />

• Berücksichtigt sowohl lokale (tf) als auch globale<br />

(idf) Wortauftretenshäufigkeiten.<br />

• Liefert Ergebnisse, die nicht unbedingt alle<br />

Suchbegriffe enthalten.<br />

• Liefert eine geordnete Liste.<br />

• Neigt trotz offensichtlicher Schwächen dazu, in<br />

der Praxis ziemlich gut zu arbeiten.<br />

• Ermöglicht eine wirkungsvolle Implementierung<br />

für große Dokumentensammlungen.<br />

Probleme mit <strong>Vektorraum</strong>-<strong>Modelle</strong>n<br />

• Fehlende semantische Informationen (z.B. Wortbedeutung,<br />

Negation).<br />

• Fehlende syntaktische Informationen (z.B. Phrasenstruktur,<br />

Wortreihenfolge, Bereichsinformationen).<br />

• Setzt Termunabhängigkeit voraus (ignoriert z.B. Synonyme).<br />

• Weniger Kontrolle als im booleschen Modell (z.B., die<br />

Forderung, dass ein Term im Dokument erscheinen muss).<br />

– Bei gegebener Anfrage mit zwei Termen “A B” könnte es sein, dass<br />

ein Dokument, dass A häufig enthält, aber B gar nicht, einem<br />

Dokument, dass sowohl A <strong>und</strong> B enthält, aber weniger häufig,<br />

vorgezogen wird.<br />

27<br />

28

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!