餘弦相似度

🤖 Cosine Similarity Calculator

Compute the cosine similarity of two vectors to measure how closely their directions agree. Common in text matching, recall and embedding comparison.

📐 計算公式 / 原理
cos θ = (Σaᵢbᵢ) / (√Σaᵢ² · √Σbᵢ²)
餘弦相似度取值範圍 [−1,1],1 為同向、0 為正交、−1 為反向。因為做了模長歸一化,它對向量整體縮放不敏感,適合比較長度差異很大的文本或特徵向量;若需要同時反映模長差異應改回歐氏距離。

📐 計算公式與說明

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

取值 −1 到 1,越接近 1 越相似。

📚 深度解析:餘弦相似度

💡 常見使用場景

x=(1,2,2), y=(2,4,4):‖x‖=3,‖y‖=6,內積=2+8+8=18 → cos=18/(3×6)=1,兩向量同向(實際 y=2x),完全相似。

❓ 常見問題(FAQ)

餘弦為負說明什麼?
說明兩向量夾角大於 90°,語義傾向相反(如反義句、對立情感)。多數相似度場景只取非負區間,需按業務決定是否保留負值。
為什麼先歸一化?
歸一化後模長均為 1,餘弦=內積,便於用內積加速檢索(如 FAISS);且消除向量長度對相似度的影響,聚焦方向。