word2vec算法中两个超点之间的最大欧几里得距离是多少?

时间:2018-07-12 13:16:36

标签: math machine-learning nlp deep-learning word2vec

我一直在考虑使用Word2vec解决问题。 我知道您可以使用余弦距离,这意味着如果超点相同,则最小距离可以为0或1,因为在最大情况下余弦跨度为[-1,1]。 最小欧氏距离也是如此。 我的问题是在实践中,两个单词在使用word2vec将它们投影到同一超空间中时可以达到的最大欧几里得距离是多少?可以用数学估算吗?从理论上讲是无限的吗?

2 个答案:

答案 0 :(得分:1)

训练过程并不一定要限制单词向量的结束位置,因此我认为两个单词之间的欧氏距离可能会变得任意大。

但是,它们只会随着任意多次的训练合格而变得任意大,并且可能仅在某些极端训练语料库上才会变得更大。正常的语言多样性和有限的训练次数意味着在实践中向量不会离原点太远。

对词向量进行单位归一化是很常见的,因此在进行逐词比较之前,它们的大小均为1.0(因此在“单位超球”上)。如果您已完成此标准化:

  • 尽管欧几里得距离和余弦距离将是不同的值,但是无论您使用哪种方式,最近邻居的等级都将相同

  • 对于两个在超球面上彼此相对的点,两个矢量之间的最大距离为2

答案 1 :(得分:-1)

这至少取决于向量的维数。即使将其标准化为0-1,最大距离也将是sqrt(n),其中n是您在向量中选择的维数。因此,即使在这种情况下,它也将是无限的。