Cosine Similarity
La similarité cosinus mesure le cosinus de l'angle entre deux vecteurs, en ignorant leur longueur ; elle est largement utilisée pour le calcul de similarité entre vecteurs de texte.
Objectif
Compare la direction du vecteur plutôt que sa norme, permettant de comparer équitablement documents longs et courts.
Mécanisme
sim(A,B) = (A·B) / (|A|×|B|) = Σ(A_i×B_i) / (sqrt(ΣA_i²)×sqrt(ΣB_i²)). Le résultat va de -1 à 1 (de 0 à 1 pour les vecteurs de texte non négatifs). 1 signifie direction identique ; 0 signifie orthogonal (sans lien).
Cas d’usage
- Recherche de documents similaires
- Similarité d'items dans les recommandations
- Similarité sémantique de vecteurs de mots
- Métrique de distance pour le clustering
Exemples
- entrée
[1,0,1] vs [1,1,1]Output0.816Angle of about 35°
Erreurs courantes
- Unnormalized vectors cause computation overflow
- Apply L2 normalization in advance or use a numerically stable implementation
Termes associés
TF-IDF
TF-IDF (fréquence de terme - fréquence inverse de document) mesure l'importance d'un mot pour un document : les mots fréquents dans le document mais rares dans le corpus reçoivent des poids élevés. GLOSSAIRE
Bag of Words
Le modèle sac de mots représente le texte comme un vecteur de fréquences de mots non ordonné, ignorant la grammaire et l'ordre des mots ; c'est la représentation fondatrice de la classification et de la recherche de textes. GLOSSAIRE
Jaro-Winkler Distance
La distance de Jaro-Winkler est un raffinement de la distance de Jaro qui pondère les préfixes communs, la rendant plus adaptée à l'appariement de chaînes courtes comme les noms de personne où le préfixe compte. GLOSSAIRE