Calculadora de Similaridade de Vetores
Calcule distância e similaridade entre vetores numéricos usando métodos incluindo cosseno, euclidiano, jaccard e muito mais.
Entrada
Saída
Leia-me
O que é similaridade de vetores?
Similaridade de vetores mede o quão parecidos dois vetores são em um espaço multidimensional. Vetores são listas ordenadas de números que representam pontos de dados — eles aparecem em embeddings de aprendizado de máquina, sistemas de recomendação, processamento de linguagem natural, reconhecimento de imagens e computação científica. Comparar dois vetores informa o quão próximos ou relacionados os pontos de dados subjacentes são.
Dois conceitos principais são utilizados:
- Similaridade: Uma pontuação indicando o quão parecidos dois vetores são. Valores mais altos geralmente significam mais similares (por exemplo, similaridade de cosseno de 1 significa direção idêntica).
- Distância: Uma medida de quão distantes dois vetores estão. Valores mais baixos geralmente significam mais similares (por exemplo, distância euclidiana de 0 significa vetores idênticos).
Descrição da ferramenta
Esta ferramenta calcula a similaridade ou distância entre dois vetores numéricos usando mais de 50 métodos bem conhecidos da teoria da informação, estatística e geometria. Insira dois vetores, escolha um método na aba de similaridade ou distância, e o resultado é calculado instantaneamente no seu navegador.
Exemplos
Entrada
Vetor A: 1, 2, 3
Vetor B: 4, 5, 6| Método | Resultado |
|---|---|
| Similaridade de cosseno | 0.9746318461970762 |
| Distância euclidiana | 5.196152422706632 |
| Distância de Manhattan | 16.5 |
Formatos de entrada aceitos
Todos os seguintes são equivalentes:
1, 2, 3
[1, 2, 3]
(1 2 3)
1;2;3Recursos
- 50+ métodos — escolha entre distâncias (Euclidiana, Manhattan, Chebyshev, Cosseno, Kullback-Leibler, Jensen-Shannon, e mais) ou similaridades (Cosseno, Jaccard, Dice, Tanimoto, e mais)
- Entrada flexível — aceita valores separados por vírgula, espaço ou ponto-e-vírgula com ou sem colchetes
- Resultados instantâneos — toda computação é executada no lado do cliente sem envio de dados para um servidor
Métodos suportados
Métodos de similaridade
| Método | Descrição |
|---|---|
| Cosseno | Mede o ângulo entre dois vetores; amplamente utilizado em PNL e sistemas de recomendação |
| Kumar-Hassebrook | Similaridade generalizada combinando Jaccard e cosseno |
| Dice | Duas vezes a interseção dividida pela soma das contagens de elementos |
| Tanimoto | Coeficiente de Jaccard estendido para vetores contínuos |
| Interseção | Soma dos mínimos elemento a elemento |
| Czekanowski | Razão de duas vezes a soma dos mínimos pela soma total |
| Motyka | Interseção dividida pela soma de todos os elementos |
| Kulczynski | Média harmônica de razões semelhantes a precisão e recall |
| Corda ao Quadrado | Baseado nas raízes quadradas dos produtos dos elementos |
| Pearson | Coeficiente de correlação linear entre os dois vetores |
Métodos de distância
| Método | Descrição |
|---|---|
| Euclidiana | Distância em linha reta no espaço n-dimensional |
| Euclidiana ao Quadrado | Distância euclidiana sem a raiz quadrada |
| Manhattan (Quarteirão) | Soma das diferenças absolutas elemento a elemento |
| Chebyshev | Diferença absoluta máxima em todas as dimensões |
| Canberra | Distância de Manhattan ponderada sensível a valores próximos a zero |
| Sørensen | Soma das diferenças absolutas dividida pela soma de todos os valores |
| Gower | Média normalizada das diferenças absolutas |
| Soergel | Razão das diferenças absolutas pelos máximos elemento a elemento |
| Lorentziana | Soma dos logaritmos naturais das diferenças absolutas mais um |
| Clark | Distância ponderada usando diferenças absolutas sobre somas |
| Wave Hedges | Soma das diferenças absolutas dividida pelos máximos elemento a elemento |
| Czekanowski | Forma de distância do coeficiente Czekanowski |
| Motyka | Forma de distância do coeficiente Motyka |
| Kulczynski | Forma de distância do coeficiente Kulczynski |
| Tanimoto | Forma de distância do coeficiente Tanimoto |
| Ruzicka | Complemento da similaridade Ruzicka |
| Produto Interno | Produto escalar negativo como medida de distância |
| Média Harmônica | Distância baseada em médias harmônicas de pares de elementos |
| Jaccard | Proporção de componentes não correspondentes |
| Dice | Forma de distância do coeficiente Dice |
| Fidelidade | Baseada na raiz quadrada dos produtos dos elementos (relacionada a Bhattacharyya) |
| Bhattacharyya | Mede sobreposição entre duas distribuições de probabilidade |
| Hellinger | Raiz quadrada da distância Bhattacharyya |
| Matusita | Raiz quadrada da metade da soma das diferenças ao quadrado das raízes quadradas |
| Corda ao Quadrado | Forma de distância do coeficiente Corda ao Quadrado |
| Pearson | Forma de distância do coeficiente de correlação Pearson |
| Neyman | Divergência tipo chi-quadrado |
| Ao Quadrado | Distância chi-quadrado ao quadrado |
| Simétrica Probabilística | Versão simétrica da divergência chi-quadrado |
| Divergência | Distância ao quadrado duplamente ponderada |
| Simétrica Aditiva | Média das divergências chi-quadrado de Neyman e Pearson |
| Kullback-Leibler | Divergência teórica da informação entre distribuições |
| Jeffreys | Divergência Kullback-Leibler simétrica |
| Divergência K | Divergência assimétrica baseada na distribuição média |
| Topsøe | Duas vezes a divergência Jensen-Shannon |
| Jensen-Shannon | Versão suavizada e simétrica de Kullback-Leibler |
| Diferença de Jensen | Baseada na desigualdade de Jensen para funções convexas |
| Taneja | Divergência da média aritmética-geométrica |
| Kumar-Johnson | Baseada em diferenças ao quadrado de potências pares |
| Interseção | Complemento da similaridade de interseção |
| Média (Quarteirão + Chebyshev) | Média das distâncias de Manhattan e Chebyshev |
Como funciona
A ferramenta analisa cada entrada de vetor em uma sequência de números, remove colchetes opcionais e divide por vírgulas, espaços ou ponto-e-vírgula. Em seguida, passa ambas as matrizes para a função selecionada da biblioteca ml-distance, que realiza o cálculo em JavaScript puro. Ambos os vetores devem ter o mesmo número de dimensões; caso contrário, a ferramenta exibe um erro de validação.
Limitações
- Alguns métodos (por exemplo, Kullback-Leibler, Bhattacharyya) exigem que todos os valores sejam estritamente positivos e somem 1 (distribuições de probabilidade). Usar vetores arbitrários pode produzir
InfinityouNaN, que a ferramenta trata como um erro de computação. - Vetores muito grandes (milhares de dimensões) são suportados, mas podem causar um breve atraso dependendo do método escolhido.