餘弦相似度(Cosine Similarity)是什麼?

餘弦相似度是一種衡量兩個非零向量之間夾角餘弦值的度量方法,常用於評估文本或資料點之間的相似程度。|本頁含完整原理、應用場景、iPAS 考試重點與 3 個常見問答。

英文
Cosine Similarity
主題標籤
統計方法、機器學習、推薦系統
考點定位
非 iPAS 核心術語
最後更新
2026/07/29
餘弦相似度(Cosine Similarity)是什麼? 統計方法機器學習
術語快查

搜尋意圖: 如果你在找「餘弦相似度 是什麼」或「餘弦相似度 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。

TL;DR: 餘弦相似度是一種衡量兩個非零向量之間夾角餘弦值的度量方法,常用於評估文本或資料點之間的相似程度。

實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。

下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。

你有沒有遇過兩段文字長短不同,卻想知道它們有多像?

你可以把餘弦相似度想成「看兩個向量方向像不像」:它不太管長度,只看方向是否接近。

它很重要,因為文本、向量和語意搜尋常需要比相似程度,餘弦相似度在這種場景特別好用,也常是向量檢索的第一個排序標準。

容易混淆

餘弦相似度 vs 歐氏距離 vs 內積

餘弦相似度:看方向,不太看長度

歐氏距離:看兩點物理上隔多遠

內積:會受方向和長度一起影響

最關鍵的區別:餘弦相似度重點是「方向一致不一致」。

記住這句就好

方向像不像,比長短更重要。

實際案例

語意搜尋

前:只靠關鍵字,字不同就找不到

後:把查詢和文件轉成向量,再用餘弦相似度找最接近的內容

推薦相似文章

前:文章長度不同,直接比字數沒意義

後:用向量方向判斷主題是否接近,再推相似內容

算法與應用

餘弦相似度常和嵌入表示、向量資料庫、語義搜尋、Word2Vec 一起出現

它會先把資料轉成向量,再用夾角來比較相似性

在實務上,是否要先正規化向量,會影響它和內積的關係

中英對照與常見說法

說法 出現場合
餘弦相似度 台灣正式用語
余弦相似度 簡體寫法
Cosine Similarity 英文原名
夾角餘弦 強調幾何意義時的說法
相似度(similarity) 泛稱,向量檢索脈絡下多半就是指餘弦相似度

公式與實際算一次

兩個向量 A 與 B 的餘弦相似度定義為:

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

分子是內積,分母是兩個向量長度的乘積。實際算一次:

A = [1, 2, 3],B = [2, 4, 6]

步驟 計算 結果
內積 A · B 1×2 + 2×4 + 3×6 28
‖A‖ √(1 + 4 + 9) 3.742
‖B‖ √(4 + 16 + 36) 7.483
相似度 28 ÷ (3.742 × 7.483) 1.0

結果剛好是 1,因為 B 就是 A 乘以 2,兩個向量方向完全相同。這正是餘弦相似度的關鍵性質:它只看方向,不看長度

值域是 -1 到 1。1 代表方向相同,0 代表垂直(無關),-1 代表方向相反。用在文字嵌入時實務上很少出現負值,因為多數嵌入模型的輸出落在相近的區域。

跟其他距離的取捨

度量 看的是 適合
餘弦相似度 方向 文字嵌入、向量檢索,因為文件長短不該影響主題相似度
歐氏距離 絕對位置 座標、影像特徵等長度本身有意義的情境
內積 方向加上長度 推薦系統,長度可以編碼熱門程度
Jaccard 相似度 集合重疊比例 標籤、關鍵字這類集合型資料

一個常被忽略的等價關係:向量先做 L2 正規化之後,內積就等於餘弦相似度,歐氏距離的排序也跟餘弦相似度一致。所以多數向量資料庫的做法是入庫前先正規化,之後統一用內積算,速度最快。

情境判斷

Q1(直覺題): 兩段文字長度差很多,但主題很像,餘弦相似度還能有效嗎?

→ 可以,因為它主要看方向,不太在意長短。

Q2(判斷題): 如果兩個向量很長,餘弦相似度就一定比較高嗎?

→ 不一定,長度不是它最在意的事,方向才是。

常見問題

餘弦相似度一定介於 0 到 1 嗎?

不一定,若允許負向量,範圍可以到 -1 到 1。

文字比對一定要用餘弦相似度嗎?

不一定,但它是最常見也最直觀的方法之一。

它和關鍵字比對差在哪?

關鍵字比對看字面,餘弦相似度看語意向量的方向。