Catégories :

Fonctions de similarité vectorielle

VECTOR_INNER_PRODUCT

Calcule le produit interne de deux vecteurs.

Le produit interne (également appelé produit de points ou produit scalaire) multiplie deux vecteurs. Le résultat représente la direction combinée des deux vecteurs. Les vecteurs similaires donnent lieu à des produits internes plus importants que les vecteurs dissemblables.

Voir aussi :

VECTOR_L2_DISTANCE , VECTOR_COSINE_SIMILARITY , Intégrations vectorielles

Syntaxe

VECTOR_INNER_PRODUCT( <vector>, <vector> )
Copy

Arguments

vector

Première valeur VECTOR.

vector

Deuxième valeur VECTOR.

Renvoie

Renvoie un VECTOR qui est le produit interne des deux vecteurs fournis en entrée.

Notes sur l’utilisation

  • En raison d’optimisations de calcul des fonctions de comparaison de vecteurs, les erreurs en virgule flottante peuvent être légèrement plus importantes que d’habitude (par exemple, environ 1e-4).

Exemples

Cet exemple utilise la fonction VECTOR_INNER_PRODUCT pour déterminer quels vecteurs de la table sont les plus proches l’un de l’autre entre les colonnes a et b :

CREATE TABLE vectors (a VECTOR(FLOAT, 3), b VECTOR(FLOAT, 3));
INSERT INTO vectors SELECT [1.1,2.2,3]::VECTOR(FLOAT,3), [1,1,1]::VECTOR(FLOAT,3);
INSERT INTO vectors SELECT [1,2.2,3]::VECTOR(FLOAT,3), [4,6,8]::VECTOR(FLOAT,3);

-- Compute the pairwise inner product between columns a and b
SELECT VECTOR_INNER_PRODUCT(a, b) FROM vectors;
Copy
+------+
| 6.3  |
|------|
| 41.2 |
+------+