series_cosine_similarity()
Dotyczy: ✅Microsoft Fabric✅✅
Oblicz podobieństwo cosinusowe dwóch wektorów liczbowych.
Funkcja series_cosine_similarity()
przyjmuje dwie serie liczbowe jako dane wejściowe i oblicza podobieństwo cosinusu.
Składnia
seria series_cosine_similarity(
1 serii,
2, [
*wielkość1, [
*wielkość2]])
Dowiedz się więcej na temat konwencji składni.
Parametry
Nazwisko | Type | Wymagania | opis |
---|---|---|---|
seria1, seria2 | dynamic |
✔️ | Tablice wejściowe z danymi liczbowymi. |
wielkości 1, wielkość2 | real |
Opcjonalna wielkość pierwszego i drugiego wektora odpowiednio. Wielkość jest pierwiastek kwadratowy produktu kropki wektora z samym sobą. Jeśli wielkość nie zostanie podana, zostanie obliczona. |
Zwraca
Zwraca wartość typureal
, którego wartość jest podobieństwem cosinus serii1 z serii 2.
W przypadku, gdy długość obu serii nie jest równa, dłuższa seria zostanie obcięta do długości krótszej serii.
Wszystkie nieliczbowe elementy serii wejściowej zostaną zignorowane.
Uwaga
Jeśli jedna lub obie tablice wejściowe są puste, wynikiem będzie null
.
Optymalizacja wydajności
Aby zwiększyć wydajność i zmniejszyć wymagania dotyczące magazynu podczas korzystania z tej funkcji, rozważ użycie Vector16
zasad kodowania do przechowywania wektorów zmiennoprzecinkowych, które nie wymagają dokładności 64 bitów, takich jak osadzanie wektorów uczenia maszynowego.
Vector16
Profil, który wykorzystuje reprezentację zmiennoprzecinkową Bfloat16, może znacząco zoptymalizować operację i zmniejszyć rozmiar magazynu o współczynnik 4. Aby uzyskać więcej informacji na Vector16
temat zasad kodowania, zobacz Typy zasad kodowania.
Przykład
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 |