Cosine Similarity

La cosine similarity è una metrica che misura il coseno dell'angolo tra due vettori in uno spazio multidimensionale. Nelle applicazioni AI, quantifica quanto due contenuti siano semanticamente simili: un punteggio di 1,0 significa che i vettori puntano in direzioni identiche (similarità massima); 0 significa che sono perpendicolari (nessuna similarità); −1 significa che puntano in direzioni opposte (dissimilarità massima). Per gli embedding testuali vincolati a valori positivi, i punteggi tipicamente variano da 0 a 1.

Come Funziona

Dati due vettori A e B, la cosine similarity è:

cos(θ) = (A · B) / (||A|| × ||B||)

Il prodotto scalare A · B misura l'allineamento; dividere per il prodotto delle norme dei vettori normalizza per la lunghezza. Questa normalizzazione è la proprietà distintiva della cosine similarity: confronta la direzione, non la magnitudine.

In pratica: si embeddano due testi usando lo stesso modello di embedding, si calcola la cosine similarity sui vettori risultanti e il punteggio indica quanto il contenuto sia correlato nello spazio semantico. I database vettoriali eseguono questo calcolo su larga scala su milioni di vettori archiviati usando algoritmi per vicini approssimati.

Quando Usare Cosine Similarity vs. Altre Metriche

Metrica Cosa misura Quando preferirla
Cosine similarity Allineamento direzionale (significato) Recupero testo/embedding — normalizzata per lunghezza, stabile tra diverse dimensioni documentali
Distanza euclidea (L2) Distanza assoluta Embedding di immagini, casi in cui la magnitudine porta informazioni
Prodotto scalare Allineamento senza normalizzazione Quando gli embedding sono già normalizzati a unità (equivalente al coseno)

Per la maggior parte dei casi d'uso NLP e RAG, la cosine similarity è il default perché gli embedding testuali codificano il significato nella direzione, non nella magnitudine. Un tweet breve e un lungo articolo sullo stesso argomento avranno una cosine similarity simile rispetto a una query; la distanza euclidea penalizzerebbe la differenza di magnitudine del vettore causata dalla lunghezza.

Casi d'Uso Comuni

  • Vector search — classificare i documenti recuperati per cosine similarity rispetto al vettore di query.
  • Ricerca semantica — filtrare i candidati sotto una soglia minima di similarità prima di presentare i risultati.
  • Rilevamento duplicati — segnalare i record CRM con cosine similarity superiore a 0,95 come probabili duplicati.
  • Ricerca ibrida — i punteggi coseno vengono combinati con i punteggi BM25 per parole chiave tramite somma pesata.

Termini Correlati

L'Approccio di Knowlee

Knowlee usa la cosine similarity come segnale di rilevanza primario quando recupera il contesto degli account dal knowledge graph. I risultati del recupero sono classificati per punteggio di similarità e viene applicata una soglia minima per evitare di portare in superficie contesto vagamente correlato che diluirebbe il segnale passato al modello di generazione. Per come il recupero basato sulla similarità si traduca in business intelligence durevole, vedi The Enterprise Knowledge Graph Moat.