Chapter 相似度度量(Similarity Measures)
1. 欧氏距离 (Euclidean Distance) —— 绝对位置的度量
欧氏距离是最基础的 $L_2$ 范数。它衡量的是 $n$ 维空间中两个点之间的直线距离。
数学表达
深度理解
- 物理意义:两点间的位移矢量长度。
- 局限性:对特征的量级(Scale)极其敏感。如果特征未经过归一化,数值大的维度将主导距离计算。
- 面试陷阱:在高维空间下,由于数据分布稀疏,欧氏距离的区分度会显著下降(维度灾难)。
2. 余弦相似度 (Cosine Similarity) —— 方向的共鸣
余弦相似度通过计算向量夹角的余弦值,衡量两个向量在方向上的指向是否一致。
数学表达
深度理解
- 物理意义:衡量的是“形状”而非“大小”。在文本处理中,它能有效忽略文档长度(词频总量)的差异。
- 与欧氏距离的转换:
若对向量进行 $L_2$ 归一化(即 $|\mathbf{x}| = 1, |\mathbf{y}| = 1$),则欧氏距离的平方为: 结论:归一化后,最小化欧氏距离等价于最大化余弦相似度。
3. 皮尔逊相关系数 (Pearson Correlation) —— 消除偏见的利器
皮尔逊系数用于衡量两个变量之间的线性相关性,是推荐系统(如协同过滤)的首选。
数学表达
深度理解
- 数学本质:中心化(Mean-centering)后的余弦相似度。
- 平移不变性:通过减去均值 $\bar{x}$,它能自动校准不同用户的打分尺度(例如:打分严苛的用户 vs 打分宽松的用户)。
4. Jaccard 相似度 —— 集合重叠的艺术
用于衡量离散集合之间的相似性。
数学表达
深度理解
- 典型应用:在目标检测(Object Detection)中,衡量预测框 (BBox) 与真实框相似度的 IoU 指标,其数学本质就是 Jaccard 相似度。
- 适用场景:One-hot 编码的稀疏特征、用户购买物品清单的相似度。
5. 总结与选型指南
| 度量方法 | 核心属性 | 对量级敏感? | 典型场景 |
|---|---|---|---|
| 欧氏距离 | 空间位移 | 是 | 聚类、低维几何数据 |
| 余弦相似度 | 向量方向 | 否 | NLP、Embedding 检索 |
| 皮尔逊系数 | 线性趋势 | 否 | 协同过滤、消除用户偏好偏置 |
| Jaccard | 集合重叠度 | 否 | 文本去重、目标检测 IoU |