Sie haben jetzt Einbettungen für beliebige Beispiele. Eine Ähnlichkeitsmessung verwendet diese Einbettungen und gibt eine Zahl zurück, mit der die Ähnlichkeit gemessen wird. Denken Sie daran, dass Einbettungen einfach Vektoren von Zahlen sind. Für die Ermittlung der Ähnlichkeit zwischen zwei Vektoren \(A = [a_1,a_2,...,a_n]\) und \(B = [b_1,b_2,...,b_n]\)stehen drei Messwerte zur Verfügung, die in der Tabelle unten aufgeführt sind.
Messen | Bedeutung | Formel | Beziehung zur zunehmenden Ähnlichkeit |
---|---|---|---|
Euklidischer Abstand | Abstand zwischen Vektorendes | \(\sqrt{(a_1-b_1)^2+(a_2-b_2)^2+...+(a_N-b_N)^2}\) | Verringert |
Kosinus | Kosinuswinkel \(\theta\) zwischen Vektoren | \(\frac{a^T b}{|a| \cdot |b|}\) | Zunahme |
Punktprodukt | Kosinus multipliziert mit der Länge beider Vektoren | \(a_1b_1+a_2b_2+...+a_nb_n\) \(=|a||b|cos(\theta)\) | Steigert. Wird auch mit der Länge von Vektoren größer. |
Ähnlichkeitsmessung auswählen
Im Gegensatz zum Kosinus ist das Punktprodukt proportional zur Vektorlänge. Das ist wichtig, da Beispiele, die sehr häufig im Trainings-Dataset enthalten sind (z. B. beliebte YouTube-Videos), in der Regel Einbettungsvektoren mit langen Längen haben. Wenn Sie Interesse wecken möchten, wählen Sie „Punktprodukt“ aus. Das Risiko besteht jedoch darin, dass beliebte Beispiele den Ähnlichkeitsmesswert verzerren können. Wenn Sie diese Abweichung ausgleichen möchten, können Sie die Länge auf einen Exponenten erhöhen, \(\alpha\ < 1\) um das Punktprodukt als \(|a|^{\alpha}|b|^{\alpha}\cos(\theta)\)zu berechnen.
Um besser zu verstehen, wie sich die Vektorlänge auf die Ähnlichkeitsmessung auswirkt, normalisieren Sie die Vektorlängen auf 1 und beachten Sie, dass die drei Maße zueinander proportional werden.
- Euklidischer Abstand = \(||a-b|| = \sqrt{||a||^2 + ||b||^2 - 2a^{T}b} = \sqrt{2-2\cos(\theta_{ab})}\).
- Punktprodukt = \( |a||b| \cos(\theta_{ab}) = 1\cdot1\cdot \cos(\theta_{ab}) = cos(\theta_{ab})\).
- Kosinus = \(\cos(\theta_{ab})\).