Bedeutung als Nähe: die semantische Suche
Vektoren dienen auch dazu, ein Dokument über seine Bedeutung wiederzufinden, ohne ein einziges Wort mit der Frage zu teilen.
ZielErklären, wie eine Ähnlichkeitssuche funktioniert und was sie von einer Stichwortsuche unterscheidet.
Was für ein Wort gilt, gilt auch für einen Satz oder einen Absatz. Ein Modell kann für einen ganzen Abschnitt einen Vektor erzeugen, der dessen Bedeutung zusammenfasst. Zwei Abschnitte, die mit unterschiedlichen Wörtern dasselbe behandeln, erhalten nahe beieinanderliegende Vektoren.
Das ist die Grundlage der semantischen Suche. Für jeden Abschnitt Ihrer Dokumente wird im Voraus ein Vektor berechnet. Wenn Sie eine Frage stellen, wird deren Vektor berechnet und es werden die nächstgelegenen Abschnitte gesucht, in der Regel über die Kosinus-Ähnlichkeit, die den Winkel zwischen zwei Vektoren misst.
Stichwortsuche: «Kündigung» findet keinen Vertrag, in dem von «vorzeitiger Beendigung des Mandats» die Rede ist.
Semantische Suche: Die Frage zur Kündigung findet den Abschnitt über die vorzeitige Beendigung, weil beide Bedeutungen nahe beieinanderliegen.
Die Nähe bezieht sich auf die Bedeutung, nicht auf die genauen Wörter.
Ihre Grenzen
- Sie kann einen Abschnitt liefern, der thematisch passt, im entscheidenden Punkt aber falsch ist, zum Beispiel einen anderen Artikel desselben Vertrags.
- Zahlen, Daten und exakte Referenzen findet man besser über Stichwörter. Gute Systeme kombinieren beides.
- Die Qualität hängt davon ab, wie die Dokumente in Abschnitte zerlegt werden.
Quellen
- Mikolov, Chen, Corrado et al. (2013). Efficient Estimation of Word Representations in Vector Space. arXiv-Preprint. arxiv.org/abs/1301.3781
- Devlin, Chang, Lee et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding. NAACL-HLT 2019, p. 4171–4186. doi.org/10.18653/v1/N19-1423