Explicação matemática

Similaridade do cosseno: por que vetores conseguem recuperar significado

A geometria por trás da recuperação semântica, com um exemplo resolvido.

Menlo Tech · 1 min de leitura · Sem revisão por pares

Do texto aos vetores

Um modelo de embeddings mapeia um trecho de texto para um vetor de números. Textos de significado parecido tendem a ir para direções parecidas. O modelo é aprendido dos dados; a geometria usada para comparar dois vetores é simples.

A fórmula

O numerador é o produto escalar. O denominador divide pelos comprimentos dos dois vetores, então só a direção importa. O valor fica entre −1 e 1, e 1 significa a mesma direção.

Um exemplo resolvido

Use vetores bidimensionais inventados: q = (3, 1), d1 = (6, 2) e d2 = (1, 4). Para d1, o produto escalar é 3·6 + 1·2 = 20, e os comprimentos são √10 e √40, então s = 20 / (√10 · √40) = 1,000. Para d2, o produto escalar é 3·1 + 1·4 = 7 e os comprimentos são √10 e √17, então s = 7 / (√10 · √17) ≈ 0,537. O documento d1 é duas vezes mais longo que q, mas aponta na mesma direção, então é julgado idêntico; d2 aponta para outro lado.

Por que direção e não distância

O comprimento do vetor costuma refletir o tamanho do texto, e não o que ele significa. Comparar direções elimina esse efeito.

O que ela não faz

Similaridade é semelhança, não verdade. Uma etapa de recuperação construída sobre ela gera candidatos; a relevância ainda exige restrições (um imóvel precisa estar ativo, um documento precisa ser permitido) e avaliação.

Os vetores acima são inventados, só para ilustrar. Embeddings reais têm centenas ou milhares de dimensões.

Leitura de fundamentação

Obras de outros autores sobre os métodos de base. Não são publicações da Menlo Tech.

  • Manning, C., Raghavan, P. & Schütze, H. Introduction to Information Retrieval. Cambridge University Press, 2008.

Relacionados

Estudos de caso

Engenharia de Contexto