2.2.1. Word2Vec:序列建模的理论基础¶
Word2Vec (Mikolov et al., 2013) 的成功建立在一个简单而深刻的假设之上:在相似语境中出现的词语往往具有相似的含义。通过分析海量文本中词语的共现模式,我们可以为每个词学习一个稠密的向量表示,使得语义相近的词在向量空间中距离更近。
Word2Vec主要包含两种模型架构:Skip-Gram和CBOW(Continuous Bag of Words)。Skip-Gram模型通过给定的中心词来预测其周围的上下文词,而CBOW模型则相反,通过上下文词来预测中心词。在推荐系统中,Skip-Gram模型由于其更好的性能表现而被更广泛地采用。
2.2.1.1. Skip-Gram模型详解¶
图2.2.1 Word2Vec Skip-Gram模型示意图¶
在Skip-Gram模型中,给定文本序列中位置\(t\)的中心词\(w_t\),模型的目标是最大化其上下文窗口内所有词语的出现概率。具体而言,对于窗口大小为\(m\)的情况,模型要预测\(w_{t-m}, w_{t-m+1}, \ldots, w_{t-1}, w_{t+1}, \ldots, w_{t+m}\)这些上下文词的概率。
中心词\(w_t\)预测上下文词\(w_{t+j}\)的条件概率定义为:
其中\(v_{w_i}\)表示词\(w_i\)的向量表示,\(V\)是词汇表。这个softmax公式确保了所有词的概率之和为1,而分子中的内积\(v_{w_{t+j}}^T v_{w_t}\)衡量了中心词与上下文词的相似度。
2.2.1.2. 负采样优化¶
直接计算上述softmax的分母需要遍历整个词汇表,在实际应用中计算代价过高。为了解决这个问题,Word2Vec采用了负采样(Negative Sampling)技术。这种方法将原本的多分类问题转化为多个二分类问题:
其中\(\sigma(x) = \frac{1}{1 + e^{-x}}\)是sigmoid函数,\(k\)是负样本数量,\(P_n(w)\)是负采样分布。负采样的直观解释是:对于真实的词对,我们希望增加它们的相似度;对于随机采样的负样本词对,我们希望降低它们的相似度。
这种优化策略不仅大幅提升了训练效率,还为后续推荐系统中的模型训练提供了重要的技术范式。当我们将这一思想迁移到推荐领域时,“词语”变成了“物品”,“句子”变成了“用户行为序列”,但核心的序列建模思想保持不变。