- Categorias:
VECTOR_COSINE_SIMILARITY¶
Calcula a similaridade do cosseno entre dois vetores.
A similaridade do cosseno é baseada no ângulo entre dois vetores em um espaço multidimensional; a magnitude dos vetores não é considerada. O valor de similaridade do cosseno é o produto interno dos vetores dividido pelo produto de seus comprimentos. A similaridade do cosseno está sempre no intervalo [-1, 1]. Por exemplo, vetores idênticos têm uma similaridade de cosseno de 1, dois vetores ortogonais têm uma similaridade de 0, e dois vetores opostos têm uma similaridade de -1.
- Consulte também:
- VECTOR_INNER_PRODUCT , VECTOR_L1_DISTANCE , VECTOR_L2_DISTANCE , Incorporações de vetor 
Sintaxe¶
VECTOR_COSINE_SIMILARITY( <vector>, <vector> )
Argumentos¶
- vector
- O valor VECTOR para calcular o ângulo. 
- vector
- O valor VECTOR para calcular o ângulo. 
Retornos¶
Retorna um valor FLOAT, no intervalo [-1, 1] que indica a similaridade do cosseno entre os dois vetores de entrada.
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 chama a chama VECTOR_COSINE_SIMILARITY para encontrar o vetor mais próximo de [1,2,3].
SELECT a, VECTOR_COSINE_SIMILARITY(a, [1,2,3]::VECTOR(FLOAT, 3)) AS similarity
  FROM vectors
  ORDER BY similarity DESC
  LIMIT 1;
+-------------------------+
| [1, 2.2, 3] | 0.9990... |
+-------------------------+