Skip to main content

Similarité cosinus (Cosine Similarity)

POUR AGENT IAChatGPTClaude

Métrique mathématique qui mesure l'angle entre deux vecteurs dans un espace multidimensionnel. Elle indique le degré de proximité sémantique entre deux textes, allant de -1 (opposés) à +1 (synonymes complets), en ignorant la longueur des phrases.

1. Vue d'ensemble du concept et de sa finalité

Imaginez deux boussoles. Si les deux aiguilles pointent vers le nord, l'angle entre elles est nul et leurs directions coïncident parfaitement. Si l'une pointe vers le nord et l'autre vers l'est, l'angle est de 90 degrés.

La similarité cosinus (Cosine Similarity) agit comme une telle boussole pour les réseaux de neurones :

  • Elle prend deux vecteurs (les coordonnées numériques représentant le sens de deux phrases).
  • Elle mesure l'angle qui les sépare dans l'espace sémantique.
  • Elle retourne une valeur comprise entre 0.0 et 1.0 (ou entre -1 et 1), où 1.0 indique une affinité sémantique absolue.

C'est une formule mathématique fondamentale sur laquelle reposent la recherche par fichiers dans ChatGPT, Notion AI ainsi que les bases de données vectorielles.

2. Géométrie intuitive du sens

^ Concept de la nourriture
         │
         │      / Texte A : « Acheter du pain frais »
         │     /
         │    / ) angle proche de 0° -> cosinus ≈ 0,96
         │   /
         │  /---- Texte B : « Une viennoiserie de boulangerie »
         │
         │
         │─────────────────────────────> Concept de l'informatique (IT)
         │                                Texte C : « Écrire un script en Python »
         │                                (angle de 90° -> cosinus ≈ 0,04)

3. Pourquoi l'angle prime sur la longueur absolue

En géométrie traditionnelle, plus une ligne est longue, plus son extrémité est éloignée. Si nous mesurions la distance euclidienne classique :

  1. Le mot « voiture » (vecteur court).
  2. Un article Wikipédia de 10 pages sur la construction automobile (vecteur très long contenant de nombreux mots).

La distance euclidienne considérerait ces éléments comme distincts, simplement parce que l'un est court et l'autre long. Or, le cosinus évalue uniquement la direction vectorielle des idées, reconnaissant que les deux textes sont entièrement dédiés au transport.

4. Échelle comparative des scores de similarité cosinus

Score de similaritéSignificationExemple de paire de phrases
0.90 – 1.00Synonyme direct ou doublon« Comment changer une roue » ↔ « Instructions de montage d'un pneu »
0.75 – 0.89Lien contextuel étroit« Carte de crédit » ↔ « Taux d'intérêt sur un prêt »
0.40 – 0.70Lien tangentiel lointain« Smartphone Apple » ↔ « Batterie pour véhicule électrique »
0.00 – 0.30Absence totale de lien« Culture de fraises » ↔ « Clés SSH cryptographiques »

5. Conclusion pratique pour l'utilisateur

Lorsque vous configurez la recherche dans une base de connaissances ou un chatbot d'entreprise, vous rencontrez souvent le paramètre similarity_threshold = 0.75. Vous savez désormais qu'il s'agit d'un filtre basé sur le cosinus, qui exclut tous les documents dont l'angle de divergence par rapport à la requête utilisateur dépasse la marge d'erreur tolérée.

/ Questions fréquentesSchema.org FAQPage

FAQ: Similarité cosinus (Cosine Similarity)

Parce que la distance euclidienne dépend du nombre de mots : un long paragraphe sur les chats et le mot court « chaton » auront des longueurs de vecteurs différentes et sembleront éloignés. La similarité cosinus ne regarde que la direction du vecteur (la thématique commune), neutralisant ainsi totalement la différence de longueur des textes.
/ Liens internes
Tous les termes