Word2Vector
在中,Word2Vector
使用skip-gram
模型来实现。skip-gram
的训练目标是学习词向量表示,这个表示可以很好的预测它在相同句子中的上下文。数学上,给定训练词w_1,w_2,...,w_T
,skip-gram
模型的目标是最大化下面的平均对数似然。

其中V
表示词汇数量。在skip-gram
模型中使用是非常昂贵的,因为计算log p(w_i|w_j)
与V
是成比例的。为了加快Word2Vec
的训练速度,MLlib
使用了分层softmax
,这样可以将计算的复杂度降低为O(log(V))
。
由于涉及神经网络相关的知识,这里先不作分析,后续会补上。要更详细了解可以阅读文献【2】。
参考文献
【1】