CosineSimilarity
(Cosinus-Ähnlichkeit): Gibt die Ähnlichkeit zwischen zwei Einbettungsvektoren als Zahl zwischen -1 (entgegengesetzt) und 1 (ähnlich) zurück.
Format
CosineSimilarity ( v1 ; v2 )
Parameter
v1
und v2
– jeder Textausdruck, jedes Textfeld oder Containerfeld, das Einbettungsvektoren enthält.
Zurückgegebener Datentyp
Zahl
Ursprung in Version
21.0
Beschreibung
Diese Funktion gibt ein Maß für die Ähnlichkeit zwischen zwei Einbettungsvektoren unter Verwendung der Cosinus-Methode zurück. Bei der Einbettung von Vektoren ist die Cosinus-Ähnlichkeit ein nützliches Maß dafür, wie ähnlich zwei Textwerte wahrscheinlich sind. Die Ergebnisse reichen von -1 bis 1 (einschließlich), wobei Werte näher an 1 eine höhere semantische Ähnlichkeit, 0 keine Ähnlichkeit und -1 Unähnlichkeit anzeigen.
Wenn v1 und v2 Text sind, müssen sie in Form von JSON-Arrays vorliegen. Die Vektoren müssen auch die gleichen Abmessungen haben (die Anzahl der Elemente in den Arrays muss gleich sein). Normalerweise verbessert die Verwendung von Einbettungsvektoren als binäre Containerdaten jedoch die Leistung.
Hinweise
-
Normalisierte Einbettungsvektoren sind erforderlich. Alle Einbettungsvektoren müssen aus demselben Modell generiert werden, um Kompatibilität und Leistung zu gewährleisten. Das Mischen von Einbettungsvektoren aus verschiedenen Modellen wird nicht unterstützt.
Beispiel 1
CosineSimilarity ( "[-0.043686170000000003333, 0.042094484000000001456, ... ]" ; "[-0.049242082999999998993, 0.040926795000000001923, ... ]" )
gibt .90848158767415143622 für ein bestimmtes Modell zurück.
Beispiel 2
CosineSimilarity ( v1 ; v2 )
gibt .54682693950088512302 für ein bestimmtes Modell zurück, wenn die Felder v1 und v2 Einbettungsvektoren für den Text „Claris“ bzw. „Claire“ enthalten.