series_dot_product()
Calcula el producto de punto de dos series numéricas.
La función series_dot_product()
toma dos series numéricas como entrada y calcula su producto de puntos.
Syntax
series_dot_product(
series1,
series2)
Sintaxis alternativa
series_dot_product(
Serie,
Numérico)
series_dot_product(
Numérico,
Serie)
Nota
La sintaxis alternativa muestra que uno de los dos argumentos de función puede ser un escalar numérico.
Este escalar numérico se difundirá a un vector cuya longitud es igual a la longitud de la serie numérica correspondiente.
Por ejemplo, series_dot_product([1, 2, 3], 10)
se tratará como series_dot_product([1, 2, 3], [10, 10, 10])
.
Obtenga más información sobre las convenciones de sintaxis.
Parámetros
Nombre | Tipo | Requerido | Descripción |
---|---|---|---|
series1, series2 | dynamic |
✔️ | Matrices de entrada con datos numéricos, que se multiplican por elementos y, a continuación, se suman en un valor de tipo real . |
Devoluciones
Devuelve un valor de tipo real
cuyo valor es la suma sobre el producto de cada elemento de series1 con el elemento correspondiente de series2.
En caso de que la longitud de ambas series no sea igual, la serie más larga se truncará a la longitud de la más corta.
Se omitirá cualquier elemento no numérico de la serie de entrada.
Nota
Si una o ambas matrices de entrada están vacías, el resultado será null
.
Optimización del rendimiento
Para mejorar el rendimiento y reducir los requisitos de almacenamiento al usar esta función, considere la posibilidad de usar la Vector16
directiva de codificación para almacenar vectores de punto flotante que no requieren precisión de 64 bits, como incrustaciones vectoriales de ML. El Vector16
perfil, que utiliza la representación de punto flotante Bfloat16 , puede optimizar significativamente la operación y reducir el tamaño de almacenamiento en un factor de 4. Para obtener más información sobre la Vector16
directiva de codificación, consulte Tipos de directiva de codificación.
Ejemplo
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 |
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de