Hotdry.

Article

超越余弦相似度:语义距离度量的数学基础与嵌入质量诊断

从向量空间几何缺陷出发,探讨如何构建具备传递性、尺度不变性与语义单调性的语义距离度量,并给出嵌入质量诊断的可操作参数。

2026-05-13ai-systems

在基于嵌入的机器学习系统中,余弦相似度长期占据主导地位。这种度量通过计算向量夹角的余弦值来评估语义相似性,其数学简洁性与计算效率使其成为信息检索、语义搜索和跨模态对齐的默认选择。然而,随着嵌入模型表达能力的增强和应用场景的多样化,余弦相似度的根本局限日益凸显:它将向量范数视为噪声而予以丢弃,却忽视了范数可能承载的关键语义信号。

向量分解:方向与范数的语义分工

从几何视角审视,任意非零嵌入向量 x ∈ ℝᵈ 均可唯一分解为范数与方向的乘积:x = ‖x‖ · ,其中 = x/‖x‖ 位于单位超球面 𝕊ᵈ⁻¹ 上。余弦相似度仅保留方向分量:cos_sim (x, y) = = cos (θ),其中 θ 为两向量夹角。

这种分解揭示了一个关键洞察:向量范数 ‖x‖ 与方向 可能分别编码不同类型的语义信息。研究表明,范数常映射为确定性、显著性或信息增益 —— 长向量往往对应模型高度确信或信息丰富的输入,而短向量则反映不确定性或语义模糊性。余弦相似度通过将所有向量投影到单位球面,彻底抹除了这种径向变化,将 "高置信度的匹配" 与 "低置信度的巧合" 视为等价。

余弦相似度的三大失效模式

1. 嵌入空间的各向异性

预训练语言模型(如早期 BERT)产生的嵌入往往高度各向异性:绝大多数向量聚集在一个狭窄的锥形区域内。这导致任意两个无关句子的余弦相似度都可能高达 0.9 以上,严重削弱区分能力。这种现象源于过参数化架构和欠正则化的训练目标,导致嵌入输出呈现低秩特性。

2. 词频诱导的相似度扭曲

高频词在嵌入空间中往往靠近原点,而低频词分布更为分散。这造成一种系统性偏差:即使语义上更接近,高频词与目标词的余弦相似度也可能低于低频词。形式化表述为 cos_sim (w_high-freq, w') < cos_sim (w_low-freq, w'),即使前者语义关联更强。

3. 高维空间中的中心节点现象

在高维嵌入空间中,少数 "中心节点" 向量会与大量其他向量表现出异常高的相似度,破坏最近邻搜索的可靠性。余弦相似度通过聚焦角度而非幅度,虽在一定程度上缓解了距离集中问题,却加剧了中心节点效应 —— 某些向量因其方向特性而频繁出现在各类查询的 Top-K 结果中。

范数感知相似度框架

针对上述局限,研究者提出了一系列将范数信息重新纳入考量的度量方法。

** 缩放相似度(Scaled Similarity)** 引入权重参数 α ∈ [0,1] 来平衡角度与径向分量:

scaled_sim(x, y) = α·cos_sim(x, y) + (1-α)·(‖x‖ + ‖y‖)

当 α 趋近于 1 时退化为标准余弦相似度;当 α 降低时,范数差异对相似度评分的贡献增大。

** 词旋转距离(Word Rotator's Distance, WRD)** 采用更精细的分解策略:

WRD(x, y) = |‖x‖ - ‖y‖| + λ·arccos(cos_sim(x, y))

其中 λ 平衡范数差异与角度差异。WRD 在词汇相似性和语义检索任务中展现出优于纯余弦方法的性能。

** 查询库归一化(QueryBank Normalization, QB-Norm)** 则采取后处理策略,对余弦相似度进行基于查询的 z 分数归一化:

s̃(q, d) = (cos_sim(q, d) - μ_q) / σ_q

其中 μ_q 和 σ_q 是查询 q 与背景语料库中各文档余弦相似度的均值与标准差。这种方法无需重新训练模型即可改善排序质量。

嵌入质量诊断的可操作参数

在实际部署中,可通过以下指标诊断嵌入质量与度量选择是否适配:

各向异性指数:计算语料库中所有嵌入对的平均余弦相似度。若该值超过 0.8,表明空间严重各向异性,需考虑后处理白化或主成分移除。

范数 - 语义相关性:计算向量范数与人工标注置信度 / 信息量的 Spearman 相关系数。若 ρ > 0.3,表明范数承载有效语义信号,应使用范数感知度量。

中心节点检测:统计每个向量作为其他向量 Top-K 近邻的次数分布。若存在若干向量的出现频率超过平均值的 5 倍标准差,则存在中心节点问题,需引入 QB-Norm 或重新训练。

频率 - 相似度相关性:按词频分层抽样,检验高频词与低频词在相似度分布上是否存在系统性差异。若存在,表明存在频率偏差,需调整相似度计算方式。

从公理化视角重构语义度量

理想的语义距离度量应满足以下公理:

  1. 传递性:若 d (a,b) < ε 且 d (b,c) < ε,则应有 d (a,c) < f (ε),其中 f 为可控的误差放大函数。
  2. 尺度不变性:对输入进行线性缩放不应改变语义相似性判断。
  3. 语义单调性:若人类标注的语义相似度 A > B,则度量值应满足 sim (A) > sim (B)。

余弦相似度满足尺度不变性,但在各向异性空间中违反语义单调性。范数感知度量通过引入径向信息,有望在保持尺度控制的同时恢复单调性。

实践建议

对于正在构建语义检索系统的工程师,建议采取以下决策路径:

首先,通过计算嵌入范数的分布(均值、方差、偏度)评估范数信息量。若范数分布呈现明显偏态或存在长尾,表明模型在训练中对不同输入产生了差异化的置信度响应,此时应保留范数信息。

其次,在检索任务中实施 A/B 测试,比较余弦相似度与 WRD 或缩放相似度的 Top-K 命中率。若后者显著提升,则表明当前嵌入空间存在方向 - 范数耦合的语义信号。

最后,对于跨模态系统(如 CLIP 风格的图文对齐),务必检验不同模态嵌入的范数分布是否匹配。模态间的范数差异会导致相似度计算偏向某一模态,需通过 QB-Norm 或模态特定的归一化予以校正。

向量范数不是噪声,而是信号。理解并利用这一信号,是构建更鲁棒、更可解释、更高性能的嵌入系统的关键一步。


参考来源

  1. You, K. (2025). Semantics at an Angle: When Cosine Similarity Works Until It Doesn't. arXiv:2504.16318v2.
  2. Zhou, K., et al. (2022). Problems with Cosine as a Measure of Embedding Similarity for High Frequency Words. ACL 2022.
  3. Bogolin, S.-V., et al. (2022). Cross Modal Retrieval with Querybank Normalisation. CVPR 2022.
  4. Yokoi, S., et al. (2020). Word Rotator's Distance. EMNLP 2020.

ai-systems

内容声明:本文无广告投放、无付费植入。

如有事实性问题,欢迎发送勘误至 i@hotdrydog.com