Freigeben über


series_cosine_similarity()

Gilt für: ✅Microsoft Fabric

Berechnen Sie die Kosinusähnlichkeit zweier numerischer Vektoren.

Die Funktion series_cosine_similarity() verwendet zwei numerische Datenreihen als Eingabe und berechnet ihre Kosinusgleichheit.

Syntax

series_cosine_similarity( Reihe1, Datenreihe2, [*magnitude1, [*magnitude2]])

Erfahren Sie mehr über Syntaxkonventionen.

Parameter

Name Type Erforderlich Beschreibung
Series1, Series2 dynamic ✔️ Eingabearrays mit numerischen Daten.
Größe1, Größe2 real Optionale Größe des ersten und zweiten Vektors. Die Größe ist die Quadratwurzel des Punktprodukts des Vektors mit sich selbst. Wenn die Größe nicht angegeben wird, wird sie berechnet.

Gibt zurück

Gibt einen Wert vom Typ real zurück, dessen Wert die Kosinusähnlichkeit der Datenreihe1 mit Datenreihe2 ist. Falls beide Datenreihenlängen nicht gleich sind, wird die längere Datenreihe auf die Länge der kürzeren abgeschnitten. Alle nicht numerischen Elemente der Eingabereihen werden ignoriert.

Hinweis

Wenn ein oder beide Eingabearrays leer sind, lautet nulldas Ergebnis .

Optimieren der Leistung

Bei verbesserter Leistung und reduzierten Speicheranforderungen bei verwendung dieser Funktion sollten Sie die Vector16 Codierungsrichtlinie zum Speichern von Gleitkommavektoren verwenden, die keine Genauigkeit von 64 Bit erfordern, z. B. ML-Vektoreinbettungen. Das Vector16 Profil, das die Bfloat16-Gleitkommadarstellung nutzt, kann den Vorgang erheblich optimieren und die Speichergröße um den Faktor 4 reduzieren. Weitere Informationen zur Codierungsrichtlinie Vector16 finden Sie unter den Codierungsrichtlinientypen.

Beispiel

datatable(s1:dynamic, s2:dynamic)
[
    dynamic([0.1,0.2,0.1,0.2]), dynamic([0.11,0.2,0.11,0.21]),
    dynamic([0.1,0.2,0.1,0.2]), dynamic([1,2,3,4]),
]
| extend cosine_similarity=series_cosine_similarity(s1, s2)
s1 s2 cosine_similarity
[0.1,0.2,0.1,0.2] [0.11,0.2,0.11,0.21] 0.99935343825504
[0.1,0.2,0.1,0.2] [1,2,3,4] 0.923760430703401