- Categorias:
VECTOR_L2_DISTANCE¶
Calcula a distância L2 entre dois vetores.
Distância L2, também conhecida como distância euclidiana, é uma medida da distância entre dois vetores em um espaço vetorial. A distância é calculada tirando a raiz quadrada da soma das diferenças quadradas dos elementos do vetor. A distância pode ser um valor zero ou maior. Se a distância for zero, os vetores serão idênticos. Uma distância maior indica que os vetores estão mais distantes.
- Consulte também:
VECTOR_INNER_PRODUCT , VECTOR_COSINE_SIMILARITY , VECTOR_L1_DISTANCE , Incorporações de vetor
Sintaxe¶
VECTOR_L2_DISTANCE( <vector>, <vector> )
Argumentos¶
vector
O valor VECTOR para calcular a distância.
vector
O valor VECTOR para calcular a distância.
Retornos¶
Retorna a distância entre os dois vetores de entrada como um valor FLOAT.
Notas de uso¶
Devido às otimizações computacionais nas funções de comparação de vetores, os erros de ponto flutuante podem ser um pouco maiores do que o normal (ou seja, cerca de 1e-4).
Exemplos¶
Este exemplo usa a função VECTOR_L2_DISTANCE para determinar quais vetores na tabela estão mais próximos entre si entre as colunas a
e 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_L2_DISTANCE(a, b) FROM vectors;
+------+
| 2.3 |
|------|
| 6.95 |
+------+