我应该在使用 word2vec 的词向量之前对其进行规范化吗?

机器算法验证 自然语言 word2vec 词嵌入
2022-02-12 06:17:02

在用 word2vec 训练词向量之后,在将它们用于某些下游应用程序之前将它们归一化会更好吗?即标准化它们的优点/缺点是什么?

1个回答

当下游应用只关心词向量的方向时(例如,他们只关注两个词的余弦相似度),然后进行归一化,而忽略长度。

但是,如果下游应用程序能够(或需要)考虑更明智的方面,例如单词重要性或单词使用的一致性(见下文),那么规范化可能不是一个好主意。


来自Levy 等人,2015 年(实际上,大多数关于词嵌入的文献):

向量在用于相似度计算之前被归一化为单位长度,使余弦相似度和点积等效。

同样来自威尔逊和沙克尔,2015 年

词嵌入的大多数应用不是探索词向量本身,而是探索它们之间的关系,以解决例如相似性和词关系任务。对于这些任务,发现使用归一化的词向量可以提高性能。因此,词向量长度通常被忽略。

归一化相当于失去了长度的概念。也就是说,一旦你对词向量进行归一化,你就会忘记它们在训练阶段之后的长度(范数,模块)。

但是,有时值得考虑词向量的原始长度。

Schakel 和 Wilson,2015 年观察到一些关于词向量长度的有趣事实:

在相似上下文中始终使用的单词将由比在不同上下文中使用的相同频率的单词更长的向量表示。

不仅方向,而且词向量的长度都携带重要信息。

词向量长度与词频相结合,是衡量词重要性的有用方法。