在应用 word2vec 时,我是否应该在每年比较余弦值时将它们标准化?

When applying word2vec, should I standardize the cosine values within each year, when comparing them across years?

我是一名研究员,我正在尝试应用 NPL 来理解某些词义的时间变化。 到目前为止,我已经在训练中获得了几年具有相同参数的训练嵌入(word2vec,sgn)。 例如,如果我想测试单词 A 和单词 B 的余弦相似度在 5 年内的变化,我是否应该只计算它们并绘制余弦值?

我问这个问题的原因是我发现总体余弦值(当年所有可能对的平均值)在 5 年内不同。 **例如,1990:0.21、1991:0.19、1992:0.31、1993:0.22、1994:0.31。这是否意味着在某些年份,所有单词都比其他年份更相似??

根据我有限的理解,我认为向量在逻辑函数中是奇数,所以它们应该不会受到语料库大小的显着影响?我是否有必要标准化(每年所有对的)余弦值,以便我可以比较多年来的相对排名变化?或者只相信原始余弦值并比较它们多年?

一般来说,您不应将 cosine-similarities 视为模型之间具有可比性的 绝对 度量。也就是说,您不应将“0.7”cosine-similarity 视为与“70%”相似的任何东西,而是选择一些任意的“70%”阈值以跨模型使用。

相反,它只是单个模型中的一个度量 space - 其有效 'scale' 受所有参数和训练数据的影响。

一个小练习可能有助于说明这一点:使用完全相同的数据,训练 100d 模型,然后训练 200d 模型。然后查看一些单词对,或与 nearest-neighbors 并排的单词 cosine-similarity。

如果 training/data 足够多,通常相同的 highly-related 个词会彼此 nearest-neighbors。但是 cosine-similarity 值的有效范围会非常不同。如果您在一个模型中选择了一个特定的阈值作为意思,“足够接近以提供一些其他分析”,那么相同的阈值将 not 在另一个模型中就足够了。每个模型都是它自己的世界,由训练数据和参数以及训练期间显式或隐式随机性的一些来源引起。 (word2vec 算法的几个部分使用随机抽样,但任何高效的 multi-threaded 训练都会在 training-order via host OS thread-scheduling 变幻莫测中遇到任意差异。)

如果您的参数相同,并且语料库 very-alike 在每个可测量的内部比例中,这些影响可能会最小化,但永远不会消除。

例如,即使人们预期的词义完全相同,一年的训练数据可能包含更多关于 'war' 或 'politics' 或某些 medical-topic 的讨论。在那种情况下,训练更新中的迭代、交错 tug-of-war 将意味着来自该过度代表域的词对最终模型词位置的影响更大 push-pull——本质上是最终 space 的扭曲子区域因为 更精细 区分了一些地方,因此 * 在 less-updated 区域中进行了更粗略的区分。

也就是说,您不应期望任何 global-per-model 比例因子(正如您暗示的那样可能适用)来纠正任何 model-to-model 差异。不同数据和训练 运行 的影响要微妙得多,并且可能会以不同方式影响不同 'neighborhoods' 的单词。

相反,当比较不同的模型时,更稳定的比较依据是相对排名relative-proportions尊重他们 closeness-to-others。文字是移入还是移出彼此的 top-N 邻居? A 与 B 的距离是否比 C 与 D 的距离更近?等等

即便如此,您也可能需要注意完整词汇表中的差异:如果 A 和 B 在第一年是彼此最近的邻居,但在第二年它们之间挤了 5 个其他词,那么任何词的意思都是 真的改变了吗?或者可能仅仅是因为这些其他词在第 1 年甚至没有得到适当的代表来获得任何位置,或者之前在附近有 'noisier' 个位置? (随着单词变得越来越稀有,它们在 运行 运行 中的位置将更加特殊,基于它们的少数用法示例,以及 run-to-run 'noise' 的其他来源的影响。)

将所有此类分析限制在 very-well-represented 字词中可以最大限度地减少将 noise-in-the-models 误解为有意义的内容。 Re-running 多次建模,使用相同的参数或 slightly-different 个参数,或 slightly-different 训练数据子集,并查看哪些比较适用于这些变化,也可能有助于确定哪些观察到的变化是稳健的,与方法论的伪影,例如来自 run-to-run 的抖动或其他采样效应。

之前关于比较 word-vectors 跨不同来源语料库的类似问题的一些回答可能对您有其他有用的想法或警告: