衡量嵌入的相似度

现在,任何一对样本都有嵌入。相似度测量采用这些嵌入,并返回衡量其相似度的数字。请注意,嵌入只是数字向量。如需找出两个向量 \(A = [a_1,a_2,...,a_n]\) 和 \(B = [b_1,b_2,...,b_n]\)之间的相似度,有三种相似度指标可供选择,如下表所示。

衡量含义公式与提高相似度的关系
欧几里得距离矢量结束值之间的距离 \(\sqrt{(a_1-b_1)^2+(a_2-b_2)^2+...+(a_N-b_N)^2}\) 减少
余弦矢量之间的角度余弦 \(\theta\) \(\frac{a^T b}{|a| \cdot |b|}\) 增加
点产品余弦乘以两个矢量的长度 \(a_1b_1+a_2b_2+...+a_nb_n\) \(=|a||b|cos(\theta)\) 增加。也会随着矢量长度而增加。

选择相似性指标

与余弦相反,点积与向量长度成正比。这一点很重要,因为训练集中经常出现的示例(例如,热门 YouTube 视频)往往具有较长长度的嵌入向量。 如果您想掌握热门程度,请选择点式商品。不过,这样做可能会降低相似度指标的偏差。为了平衡这种偏差,您可以增加指数值以 \(\alpha\ < 1\) 计算点积为 \(|a|^{\alpha}|b|^{\alpha}\cos(\theta)\)。

为了更好地了解矢量长度如何改变相似度测量,请将矢量长度归一化为 1,您会注意到三个测量值彼此成比例。

证据:相似度衡量比例
将 a 和 b 归一化为 \(||a||=1\) 和 \(||b||=1\)后,这三项措施相关联:
  • 欧几里得距离 = \(||a-b|| = \sqrt{||a||^2 + ||b||^2 - 2a^{T}b} = \sqrt{2-2\cos(\theta_{ab})}\)。
  • 点积 = \( |a||b| \cos(\theta_{ab}) = 1\cdot1\cdot \cos(\theta_{ab}) = cos(\theta_{ab})\)。
  • 余弦 = \(\cos(\theta_{ab})\)。
因此,所有这三种相似度衡量都是等效的,因为它们与 \(cos(\theta_{ab})\)成正比。