Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
Databricks Runtime 18.1 et versions ultérieures
Calcule le produit interne (produit par points) entre deux vecteurs.
Syntaxe
vector_inner_product(vector1, vector2)
Arguments
-
vector1 :
ARRAY<FLOAT>expression représentant le premier vecteur. -
vector2 :
ARRAY<FLOAT>expression représentant le deuxième vecteur.
Retours
Valeur FLOAT représentant le produit interne des deux vecteurs.
Retourne la valeur 0.0 pour les vecteurs vides. Retourne NULL si l’entrée est NULL ou contient NULL.
Remarques
- Seul
ARRAY<FLOAT>est pris en charge ; d’autres types tels queARRAY<DOUBLE>ouARRAY<DECIMAL>déclenchent une erreur. - Les deux vecteurs doivent avoir la même dimension ; sinon, la fonction déclenche VECTOR_DIMENSION_MISMATCH.
- Pour les vecteurs normalisés, le produit intérieur est égal à la similarité cosinus. Couramment utilisé avec des algorithmes MIPS (Maximum Inner Product Search).
Conditions de l’erreur
Exemples
-- Basic inner product
> SELECT vector_inner_product(array(1.0f, 2.0f, 3.0f), array(4.0f, 5.0f, 6.0f));
32.0
-- Inner product of orthogonal unit vectors
> SELECT vector_inner_product(array(1.0f, 0.0f), array(0.0f, 1.0f));
0.0
-- Inner product with itself (squared L2 norm)
> SELECT vector_inner_product(array(3.0f, 4.0f), array(3.0f, 4.0f));
25.0