距离、归一化与高维空间

本节目标

区分相似度与距离的排序方向、样本单位化与特征标准化,理解高维检索为何需要 exact 基线和 ANN 的质量—性能联合评测。

Euclidean 与 Manhattan

欧氏距离:

Manhattan 距离:

前者是直线距离,后者像只能沿坐标轴行走。两者都受尺度影响:若“年收入”数值比“年龄”大几千倍,未缩放时距离几乎由收入决定。

相似度与距离

相似度通常越大越近,距离越小越近。对单位向量:

所以 cosine、dot 和 Euclidean 在单位化数据上可产生等价排序(数值方向不同);未单位化时不成立。

标准化不是向量单位化

  • feature standardization:按数据集每列减均值、除标准差;让不同特征尺度可比。
  • vector normalization:对每个样本向量除以自身范数;让长度为 1。

二者操作轴和目的不同。对 embedding 通常遵循模型说明;对手工结构化特征应根据分布、单位和任务处理。

高维直觉

高维空间难以用二维直觉理解:在一些分布下,随机向量常接近正交,最近与最远距离的相对差异可能缩小,数据也显得稀疏。增加无关维度会给距离加入噪声;更高维不保证更好检索。这些现象依赖分布和度量,不能把“高维距离必然全部相等”当作无条件定律。

“维度灾难”不是说高维一定不能用,而是覆盖空间所需数据快速增长,索引和度量需要利用模型学到的结构。

Exact 与 ANN

  • Exact search:逐个计算所有向量得分,结果精确,成本随库大小增长。
  • Approximate Nearest Neighbor(ANN):用索引少看一部分候选,以可能漏掉真近邻换速度/内存。

ANN 的“准确”应以 exact top-k 为参考测 Recall@k,同时测延迟、吞吐、内存和过滤条件。索引参数要在自己的向量分布上评测。

若 exact 与 ANN 都返回 个唯一结果,可用 衡量 ANN 对精确近邻的召回;它评估索引近似误差,不等于业务相关性 Recall@k。业务评测仍需人工或权威相关集合。

常见误区

  • 只比较平均延迟,不测 ANN recall。
  • 在小样本上用 t-SNE/二维图的邻近关系代替原空间评测。
  • 混用 cosine index 和未按约定归一化的向量。
  • 只看整体 Recall@k,忽略不同语言/长度/领域子组。

练习与自测

  1. 手算 (0,0) 到 (3,4) 的 L1/L2 距离。
  2. 对单位向量恒等式展开平方并验证。
  3. 设计 ANN 实验:固定 query 与 exact ground truth,报告 recall@10 和 P95 延迟。
  • 我能区分标准化与单位化。
  • 我知道单位向量上三种度量的关系。
  • 我能描述 ANN 的质量-速度权衡。

参考资料

资料核验日期:2026-07-14。下一步:Embedding 与语义检索。