检索指标的选择,首先取决于“向量长度是否承载语义”。余弦相似度比较的是两个向量的夹角,关注方向是否一致;欧氏距离衡量两点在向量空间中的直线距离,方向和长度都会影响结果。两者看似只是公式不同,实际对应着不同的建模假设。
当 Embedding 的语义主要体现在方向上,而向量模长可能受文本长度、表达强弱或模型输出尺度影响时,余弦相似度通常更稳妥。它会弱化长度差异:两段篇幅不同、但主题接近的文本,仍可能得到较高相似度。这也是语义检索中常见的取向,尤其适合查询与文档长度不对称的场景。
欧氏距离则保留了模长信息。如果向量长度本身被设计为有意义的信号,那么直接使用欧氏距离能够保留这种差异;但若长度只是模型输出的附带变化,它可能把“尺度不同”误判成“语义更远”,让检索排序偏离真实意图。
一个关键判断点是归一化。把每个向量缩放到相同长度后,欧氏距离与余弦相似度的排序会变得高度一致:在单位向量条件下,夹角越小,欧氏距离也越小。此时选择哪一种,更多是索引、打分接口和工程链路的统一问题,而不是语义能力的根本差异。
因此,实践中不应先问“哪个指标更先进”,而应先检查向量是否归一化、模长是否有业务含义,并用真实查询观察排序结果。若目标是找“意思相近”的内容,优先验证余弦相似度或归一化后的距离;若长度也应参与判断,再审慎保留欧氏距离。指标不是独立的开关,它必须与 Embedding 的训练方式、预处理和最终排序规则一起评估。
参与讨论
暂无评论,快来发表你的观点吧!