五厂面经真题集拼多多面经高频拼多多真题大模型面试词向量速答 · 约 5 分钟更新 2026-09-29

word2vec 的原理?为什么向量空间距离近的 token 语义相近?

一句话结论

word2vec 用 CBOW 或 Skip-gram 学习词的上下文关系,训练后输入矩阵成为词向量;共现相似的词会预测相似上下文,梯度因此把它们推近。

先这样答

结论是,word2vec 通过预测上下文学习 token 的向量表示。训练结束后,输入矩阵就是词向量。向量空间中距离近的 token,通常拥有相似的语义。

它有两种结构。CBOW 用上下文预测中心词。Skip-gram 用中心词预测上下文。两种结构的训练目标不同,但都在利用词语的共现关系学习表示。

为什么距离近的 token 语义相近?因为共现相似的词,会被要求预测相似的上下文分布。训练过程中,梯度会把它们推向向量空间中相近的区域。这里使用了分布假设:语义相似的词,上下文分布也相似。模型没有直接读取词的定义,而是从上下文关系中得到这种相似性。这个思路也构成了 embedding 检索的理论地基。

面试官会怎么追问

  • 「CBOW 和 Skip-gram 分别在预测什么?」 CBOW 根据上下文预测中心词。Skip-gram 根据中心词预测上下文。两者都通过词语共现关系学习向量。

  • 「为什么训练后要取输入矩阵作为词向量?」 word2vec 训练时会学习输入矩阵中的表示。训练结束后,这个输入矩阵就提供了每个 token 的向量。后续可以用这些向量表示 token 之间的关系。

  • 「向量距离近为什么能表示语义相近?」 共现相似的词会面对相似的预测任务。梯度会把它们调整到相近区域。这个结论建立在分布假设上,也就是语义相似意味着上下文分布相似。

回答的坑

  • 不要把 CBOW 说成用中心词预测上下文,那是 Skip-gram 的方向。

  • 不要说模型直接理解了词义,距离接近来自相似的共现上下文和训练梯度。

这家公司的面经实录

—— 本题完 ——