series_dot_product()
Oblicza kropkę dwóch serii liczbowych.
Funkcja series_dot_product()
przyjmuje dwie serie liczbowe jako dane wejściowe i oblicza swój produkt kropkowy.
Składnia
series_dot_product(
seria1,
seria2)
Składnia alternatywna
series_dot_product(
Serii,
Liczbowe)
series_dot_product(
Liczbowe,
Serii)
Uwaga
Składnia alternatywna pokazuje, że jeden z dwóch argumentów funkcji może być skalarnym liczbowym.
Ten skalar liczbowy zostanie rozgłaszany do wektora, którego długość jest równa długości odpowiadającej serii liczbowej.
Na przykład series_dot_product([1, 2, 3], 10)
będzie traktowana jako series_dot_product([1, 2, 3], [10, 10, 10])
.
Dowiedz się więcej o konwencjach składniowych.
Parametry
Nazwa | Typ | Wymagane | Opis |
---|---|---|---|
seria1, seria2 | dynamic |
✔️ | Tablice wejściowe z danymi liczbowymi, które mają być mnożone przez element, a następnie sumowane do wartości typu real . |
Zwraca
Zwraca wartość typu real
, którego wartość jest sumą nad produktem każdego elementu serii1 z odpowiadającym elementem serii 2.
W przypadku, gdy obie długości serii nie są równe, dłuższa seria zostanie obcięta na długość krótszej serii.
Każdy element nieliczbowy serii wejściowej zostanie zignorowany.
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 znacznie zoptymalizować operację i zmniejszyć rozmiar magazynu o współczynnik 4. Aby uzyskać więcej informacji na temat Vector16
zasad kodowania, zobacz Typy zasad kodowania.
Przykład
range x from 1 to 3 step 1
| extend y = x * 2
| extend z = y * 2
| project s1 = pack_array(x,y,z), s2 = pack_array(z, y, x)
| extend s1_dot_product_s2 = series_dot_product(s1, s2)
s1 | s2 | s1_dot_product_s2 |
---|---|---|
[1,2,4] | [4,2,1] | 12 |
[2,4,8] | [8,4,2] | 48 |
[3,6,12] | [12,6,3] | 108 |
range x from 1 to 3 step 1
| extend y = x * 2
| extend z = y * 2
| project s1 = pack_array(x,y,z), s2 = x
| extend s1_dot_product_s2 = series_dot_product(s1, s2)
s1 | s2 | s1_dot_product_s2 |
---|---|---|
[1,2,4] | 1 | 7 |
[2,4,8] | 2 | 28 |
[3,6,12] | 3 | 63 |
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla