![]() |
![]() |
![]() |
![]() |
In diesem Modell kann man auch
einfache Anfragen des
Booleschen Retrieval als Spezialfälle darstellen.
Dadurch lässt sich der Zusammenhang
zwischen den beiden Verfahren verdeutlichen. Dazu erlaubt man
als Gewichte nur die Werte 0 und 1 , man verwendt also wi{0,1}n wobei wi,j=1 gilt, wenn
Term j im Dokument
i auftritt, und
wi,j=0 bedeutet,
dass Term j im Dokument
i nicht auftritt.
Das selbe Verfahren verwendet man, um eine Anfrage aus
mit AND verknüpften Termen zu repräsentieren: An den Stellen
der Terme, die in der Anfrage vorkommen, wird in einem Anfragevektor
q{0,1}n eine 1 gesetzt, an den anderen Stellen eine
0 . Die
zur Anfrage gehörenden
Dokumente sind dann genau die, bei denen
an allen Stellen, an denen im Anfragevektor eine 1 steht, auch im Dokumentvektor eine 1 steht.
Um eine Anfrage aus mit OR verknüpften Termen zu bearbeiten, werden die Anfrage- und Dokumentvektoren genauso konstruiert wie bei der AND Anfrage. Allerdings wird eine andere Ähnlichkeitsfunktion verwendet: ein Dokument gehört bereits zur Anfrage, wenn an einer einzigen Stelle, an der im Anfragevektor eine 1 steht, auch im Dokumentvektor eine 1 steht.
Man kann diese Operationen mit Hilfe des Skalarprodukts der Vektoren definieren:
Eine aus r durch AND verknüpften Termen
bestehende Anfrage kann jetzt
mit Hilfe des Skalarproduktes so ausgedrückt werden:
Das Dokument mit dem Gewichtsvektor
wi=(wi,1,...,wi,n){0,1}n gehört zur Anfrage
q=(q1,...,qn)
{0,1}n wenn wi·q=r gilt. Formal lässt sich das so
schreiben:
Entsprechend gehört ein Dokument mit dem
Gewichtsvektor wi=(wi,1,...,wi,n){0,1}n zu einer aus r durch OR verknüpften
Termen bestehenden Anfrage, wenn wi·q>=1 gilt:
Diese Darstellung des Booleschen Retrieval im Vektorraummodell ist allerdings nur für die einfachen Anfragen möglich, bei denen alle Terme mit AND oder alle Terme mit OR verknüpft sind. Anfragen, in denen sowohl AND Verknüpfungen als auch OR Verknüpfungen vorkommen und die eventuell noch durch Klammern komplex geschachtelt sind, lassen sich nicht so einfach darstellen.
Die oben beschriebenen Darstellungen der einfachen Booleschen Operationen bestehen also im Kern aus dem Skalarprodukt und einer Schwellenfunktion, die die Aufgabe hat, aus einem reellwertigen (bzw. ganzzahligen) Ergebnis das gewünschte binäre Resultat zu erzeugen. Bei AND ist die Schwelle maximal, bei OR ist sie minimal.
Lässt man die Schwellenfunktion weg, erhält man einen durch das Skalarprodukt gegebenen Ähnlichkeitswert. Er gibt an, wieviele Terme in der Anfrage und in dem jeweiligen Dokument übereinstimmen. Durch den Ähnlichkeitswert können die Dokumente in eine Rangfolge gebracht werden; dabei stehen die Dokumente, die in vielen Termen mit der Anfrage übereinstimmen, weit oben in der Rangfolge und die, die in nur wenigen Dokumenten übereinstimmen, an deren Ende. Die Ausgabe der Resultate in einer solchen Rangfolge ist in einem Information Retrieval System im Allgemeinen sehr viel nützlicher als eine Ausgabe als ungeordnete Menge, besonders wenn viele Treffer gefunden wurden. Sie bietet den Nutzenden zuerst die in diesem Maß als am wichtigsten eingeschätzten Dokumente an und sortiert als weniger wichtig eingeschätzte Dokumente ans Ende der Ausgabe. Dabei ist es aber natürlich entscheidend, dass diese Sortierung den Einschätzungen der Nutzenden entspricht, da erwartet werden muss, dass Nutzende nach einer Reihe von für sie unwichtigen Treffern die weiteren Dokumente nicht mehr beachten.
Die geschilderten Verfahren sind natürlich nicht auf die
Wertemenge {0,1} beschränkt. Das Skalarprodukt kann auch mit
reellen Zahlen berechnet werden, also für Dokument- und
Anfragevektoren aus
![]() |
![]() |
![]() |
![]() |