餘弦相似度計算機(Cosine Similarity)
餘弦相似度 cos θ = (a · b) / (‖a‖ · ‖b‖) 係量度兩個向量「方向幾接近」嘅標準指標 — 同向量長度無關、只關心夾角。值域 [−1, 1]:+1 代表同方向、0 代表正交、−1 代表反方向。本工具支援任意維度 n,並一併輸出角度、餘弦距離(1 − cos θ)同角距離(θ / π)。
Comma, space, semicolon or newline separated. Any dimension n ≥ 1 is supported, but a and b must have the same length.
Examples (click to load)
Enter two non-zero numeric vectors of the same dimension.
cos θ
—
—
Similarity scale
Angle θ: —
Dimension n
—
Dot product a · b
—
‖a‖ · ‖b‖
— · —
Distance metrics
- Cosine distance (1 − cos θ)
- —
- Angular distance (θ / π)
- —
cos θ ∈ [−1, 1]; for non-negative feature vectors (TF-IDF, pixel counts) it usually lands in [0, 1]. Angular distance is a true metric — it obeys the triangle inequality.
Formula
cos θ = (a · b) / (‖a‖ · ‖b‖) = Σᵢ aᵢbᵢ / √(Σᵢ aᵢ²) · √(Σᵢ bᵢ²)
- · 輸入要求:兩個向量維度需相同;每個元素都係有限實數;至少一個元素非零(零向量無方向,cos θ 未定義)。
- · 尺度不變:將任一向量乘以正常數 k,cos θ 不變。所以可用於比較「長短不一」嘅 embedding 或 word-count 向量。
- · 餘弦距離 d_cos = 1 − cos θ,值域 [0, 2];對於正向量(如 TF-IDF、像素計數)只會落喺 [0, 1]。
- · 角距離 d_θ = arccos(cos θ) / π,值域 [0, 1],係單位球面上嘅真 metric — 滿足三角不等式(d_cos 一般不滿足)。
- · 同 Pearson 相關係數嘅關係:當兩個向量分別減去平均值後再計 cos θ,結果就等於 Pearson r。
- · 來源:Manning, Raghavan & Schütze《Introduction to Information Retrieval》(CUP 2008)§6.3;Wikipedia: Cosine similarity。
Frequently asked
餘弦相似度同歐氏距離(Euclidean distance)邊個好?
視乎你想量度「方向相近」定「位置相近」:(1) 對 NLP / TF-IDF / embedding:通常用 cosine — 因為文件嘅 word count 同文件長度有強相關,cos θ 嘅尺度不變性可以將「短文章 + 長文章」公平比較。例如 [1,1] 同 [100,100] cos θ = 1,但歐氏距離大成 100√2。(2) 對「位置」有絕對意義嘅特徵(例如 GPS 座標、像素位置):用歐氏距離。(3) 經 ℓ2-normalisation 之後嘅向量 (‖v‖=1),兩者係單調等價:‖a − b‖² = 2(1 − cos θ),所以排序結果一樣 — 呢個就係 OpenAI / Sentence-BERT 等 embedding 設計成 normalised 嘅原因。
點解我嘅 cosine 數值好高(例如 0.9+)但 retrieved 結果好差?
常見原因:(1) **向量空間維度過高 + 稀疏**(high-dim sparse):好多 dim 都係 0,少數共現嘅 dim 可以將 cos θ 推得好高,但其實只係 IDF 高嘅詞重疊。解決:用更好嘅 vectorizer(BM25、dense embedding)或者過濾停用詞 / 高頻特徵;(2) **集中性**(concentration of measure):高維 random vectors 嘅 cos θ 都係細數,但 trained embedding 通常聚埋一坨,0.7–0.95 可能只係 baseline。解決:睇相對排名而唔係絕對門檻;(3) **冇做 dimensionality matching** — 如果一個向量係 sparse 一個 dense,數值對唔上;(4) embedding 同你嘅 domain 唔 match — 例如用通用 NLP embedding 去搵醫學文獻。
係咪一定要 ℓ2-normalise 個向量先算 cosine?
數學上:唔需要 — cos θ 公式已經除咗 ‖a‖·‖b‖,所以未 normalise 嘅向量答案完全相同。實務上:通常會預先 normalise,因為:(1) 之後可以直接用 dot product 嚟搵 nearest neighbours — `<a, b>` = cos θ — 配合 FAISS、ScaNN 等 ANN 索引快好多;(2) 避免重複計算 ‖v‖;(3) 一啲庫(例如 PyTorch `F.cosine_similarity`)內部都係先 normalise 再做 dot product。如果你嘅 pipeline 已經 normalise(OpenAI embeddings、CLIP、Sentence-BERT 都係),就毋須再 normalise。
Related tools
百分比計算機
百分比、加減百分比、變化率三合一。
最大公因數/最小公倍數計算機
輸入 2 至 6 個正整數,即時得出最大公因數(HCF/GCD)同最小公倍數(LCM),並列出輾轉相除法步驟。
平均數計算機(平均/中位/眾數)
輸入一組數字,同時計到平均數、中位數、眾數、極差,連同標準差、方差同總和。
一元二次方程式解算機
輸入 ax² + bx + c = 0 嘅三個係數,即時得到實根或複根、判別式同頂點。
密碼強度(位元熵)計算機
輸入密碼,估算位元熵、暴力破解所需時間同強度等級。所有計算喺瀏覽器內完成。
科學記號 ↔ 十進制轉換
輸入十進制數字或者科學記號,得到對方表示方式同有效數字、數量級等資訊。
排列組合(nPr / nCr)計算機
計排列 P(n,r)、組合 C(n,r) 同階乘 n!,常用於概率、抽獎、密碼組合題目。
標準差/方差計算機
輸入一組數字,計平均值、中位數、樣本/總體方差同標準差,附逐步公式。
三角形計算機(SSS / SAS / ASA)
由 3 邊、2 邊 1 角或 2 角 1 邊解三角形其餘部分、面積同周長(正/餘弦定律)。
畢氏定理計算機
已知直角三角形任意兩邊(兩條直角邊或一條直角邊加斜邊),即時求第三邊、面積、周長同兩個非直角嘅角度。
圓形計算機(半徑/直徑/周長/面積)
輸入半徑、直徑、周長或面積任一個,即時計另外三個 — 設計、工程、家居皆用得着。
羅馬數字轉換器
阿拉伯數字(1–3999)與羅馬數字 (I, V, X, L, C, D, M) 雙向換算 — 適用於排版、書名章節、考試補習。
直線斜率與方程計算機(由兩點求 y = mx + b)
輸入兩個點 (x₁, y₁) 同 (x₂, y₂),即時計斜率、y 截距、直線方程、兩點距離同中點 — 初中、高中數學常用。
生日悖論計算機
輸入人數 n,即時計算房間入面至少兩人同一個生日嘅機率 — 經典生日問題。
對數計算機(log / ln / log₂ / 任意底)
計算 logₐ(x) — 自動顯示自然對數 ln、常用對數 log₁₀、二進對數 log₂ 同自訂底,並列出換底公式步驟。
Z 分數(標準分)計算機
輸入觀測值、平均數同標準差,計 Z 分數同對應嘅常態分布百分位/概率。
螢幕像素密度(PPI)計算機
輸入解析度同對角線吋數,計螢幕嘅像素密度(PPI)、實際闊/高、點距同總像素。
香港六合彩中獎機率計算機
輸入注數同揀號方式(單式/複式/膽拖),計到頭獎、二獎到安慰獎嘅實際中獎機率。
小數轉分數計算機
輸入小數(包括循環小數),即刻轉換做最簡分數同混合分數。
球體體積與表面積計算機
輸入球體嘅半徑、直徑、表面積或者體積,即刻計返其餘三個量,加埋大圓周長同大圓面積。
圓柱體積與表面積計算機
輸入半徑同高,計算圓柱體體積 (π r²h)、側面積、底面積同總表面積。
排列 nPr 計算機
輸入 n 同 r,計算 nPr(有順序揀 r 個項目嘅排列數),同 n! / r! 比較。
質因數分解計算機
輸入任何 2 至 10¹² 嘅正整數,即時分解成質因數連乘式,並列出所有正因數同因數和。
幾何平均數計算機
輸入一組正數,計算幾何平均(n 個數之積開 n 次方),同對應嘅算術平均一齊比較 — 適合年化回報率、成長率同比率。
費氏數列計算機(第 n 項)
輸入 0 至 1500 嘅整數 n,即時用 BigInt 計到 F(n)、F(n−1)、相鄰比例(收斂到黃金比例 φ),同前 30 項完整序列。
骰子點數機率計算機
揀骰子數量、骰面(d4/d6/d8/d10/d12/d20)同目標點數,計算掟到該總和、最少/最多嘅機率。
等差數列計算機
輸入首項 a、公差 d 同項數 n,計算第 n 項 aₙ 同前 n 項總和 Sₙ = n/2·(2a + (n − 1)d)。
抽樣調查樣本數計算機
輸入信心水平、誤差範圍同預期比例(可選母體大小),計算問卷調查所需樣本數。
等比數列求和計算機
輸入首項 a、公比 r 同項數 n,計算等比數列前 n 項之和;公比小於 1 時亦可計算無限項之和。
圓錐體積與表面積計算機
輸入底半徑與高度,即時得出圓錐體積、斜高、側面積、底面積、總表面積。
音名頻率計算機
輸入音名(C、C♯、D…)、八度同調音標準 A4 (預設 440 Hz),用 f = A4 × 2^((n − 69)/12) 算頻率 (Hz)、波長同 MIDI 編號。
線性插值計算機(內插/外推)
輸入兩個已知點 (x₁, y₁) 同 (x₂, y₂),再輸入目標 x,即時用 y = y₁ + (x − x₁)(y₂ − y₁)/(x₂ − x₁) 估算對應嘅 y;自動標示內插同外推。
梯形面積計算機
輸入梯形上底、下底同高度,即時計算面積、中位線同周長(已知斜邊或角度時)。
二項分布機率計算機
輸入試驗次數 n、單次成功機率 p 同想要嘅成功次數 k,計算 P(X = k)、P(X ≤ k)、P(X ≥ k) 同分布嘅平均、標準差。
皮爾遜相關係數計算機
貼上兩組數據(X 同 Y),計算皮爾遜相關係數 r、決定係數 r²、最佳擬合直線斜率同截距、樣本均值同標準差。
平均數信賴區間 (CI) 計算機
輸入樣本平均、樣本標準差、樣本大小同信心水平,用 t 或 z 分布計樣本平均數嘅信賴區間、誤差範圍同標準誤。
Cohen's d 效應值計算機
輸入兩組嘅平均數、標準差同樣本量,計算 Cohen's d 同 Hedges' g 效應值,並按 Cohen 1988 標準分類為極細/細/中/大效應。
取餘數(Modulo)計算機
輸入被除數 a 同除數 n,計算 a mod n 嘅商同餘數,並同時列出「向下取整」(floor,數學定義)、「向零取整」(trunc,C/JavaScript %)同「Euclidean」三種結果以揭示負數時嘅差別。
chmod 權限轉換器(八進制 ↔ rwx)
揀 user / group / other 嘅讀 / 寫 / 執行權限,即時得到八進制(如 755)同符號(如 rwxr-xr-x)兩種表示法。
向量大小與方向計算機(2D / 3D)
輸入 2D 或 3D 向量分量(x, y, z),計算向量大小、單位向量同方向角。
百分誤差計算機(Percent Error / Percent Difference)
輸入實驗值同理論值(accepted value),即時計算百分誤差、絕對誤差同帶符號嘅相對誤差;亦可切換到 percent difference 模式比較兩個冇真值參考嘅量度結果。
泊松分佈機率計算機
輸入平均事件率 λ 同事件數 k,計算 P(X = k)、P(X ≤ k)、P(X ≥ k)、平均值、變異數、標準差,用於排隊論、客服中心、罕見事件預測等場景。
貝氏定理機率計算機(Bayes’ Theorem)
輸入先驗機率 P(A)、靈敏度 P(B|A) 同假陽性率 P(B|¬A),由貝氏定理計算後驗機率 P(A|B),常用於醫療檢測、垃圾郵件偵測、AI 分類決策分析。
圓弧長度與扇形面積計算機
輸入圓嘅半徑同圓心角(度或弧度),計算對應嘅弧長 s = r·θ、扇形面積 A = ½·r²·θ 同弦長,適用於幾何作業、機械加工同建築佈局。
矩陣行列式計算機(2×2 同 3×3)
輸入 2×2 或 3×3 矩陣嘅每個元素,即時用 ad − bc 同沿首列展開(cofactor expansion)求行列式 det(A),並顯示矩陣可逆性同每步小行列式,方便溫線性代數。
向量點積(內積)計算機(2D / 3D)
輸入兩個 2D 或 3D 向量,即時計算點積、夾角、純量投影同向量投影,並提示是否正交、平行或反向。
對稱百分比差異計算機(Percent Difference)
輸入兩個數值,計算對稱百分比差異 |a − b| / ((|a| + |b|) / 2),同時對照常見嘅百分比變化 (b − a)/a,避免實驗報告同新聞數字溝亂。
向量叉積計算機(Cross Product, 3D)
輸入兩個三維向量 a、b,計算叉積 a × b、結果向量嘅長度(等於平行四邊形面積)同夾角 sin θ,廣泛用於物理力矩、計算幾何同 3D 圖形學。
兩點距離計算機(2D / 3D 歐氏距離)
輸入平面或空間中嘅兩個點座標,用歐氏距離公式 √Σ(Δᵢ)² 計算直線距離、各軸差值同中點,方便幾何作業、CAD 量度同 GIS 平面距離。
變異係數計算機(Coefficient of Variation, CV)
輸入一組數值,計算變異係數 CV = σ / μ × 100%(標準差除以均值),用嚟比較唔同單位或量級嘅資料離散程度,常見於實驗重複性同投資組合風險評估。
中位數同四分位數計算機(Median, Q1, Q3, IQR)
輸入一組數值,工具排序後計算中位數、第一/第三四分位數、四分位距 IQR 同 1.5×IQR 離群值界限(Tukey 法),係統計箱形圖嘅核心摘要。
調和平均數計算機(Harmonic Mean)
輸入一組正數,計算調和平均 HM = n / Σ(1/xᵢ) 同對應嘅算術/幾何平均,常用於平均速度、平均比率、平均 P/E 等「分母性質」嘅數據。
Shannon 熵計算機(資訊熵)
輸入一組類別嘅機率或頻次,計算 Shannon 熵 H = −Σ pᵢ log₂ pᵢ(bits)、最大可能熵同歸一化熵,用於資訊理論、機器學習決策樹同密碼分析。
正多邊形計算機(面積、內角、半徑)
輸入正 n 邊形嘅邊數 n 同邊長 s,工具一次計算內角、外角、內切圓半徑、外接圓半徑、面積同周長,覆蓋三角形、正方形、五邊形、六邊形以至高邊數。
卡塔蘭數計算機(Catalan Number Cₙ)
輸入 n,計算第 n 個卡塔蘭數 Cₙ = (2n)! / ((n+1)! · n!) — 計算機科學常用,數括號配對、二叉樹形狀、Dyck 路徑等組合問題嘅標準解。
RMSE / MAE 預測誤差計算機
輸入一組實際值同對應預測值,工具同時計算 MAE、MSE、RMSE、R² 同 MAPE,用於機器學習回歸評估、銷售預測同實驗對比,仲會講解三個指標嘅敏感度差異。
二元一次方程組求解(Cramer's Rule)
輸入 ax + by = e 同 cx + dy = f 嘅 6 個係數,工具用 Cramer 法則計算 x, y、行列式 D 同分類情況(唯一解 / 無解 / 無窮多解),同步顯示步驟方便檢查作業。
至少一次機率計算機(1 − (1 − p)ⁿ)
輸入單次事件機率 p 同重複次數 n,工具計算「至少出現一次」嘅機率 1 − (1 − p)ⁿ、預期次數 np,以及達到目標機率所需嘅試驗次數 — 適用於抽獎、Gacha、A/B 測試、安全冗餘設計。