CBOW word2vec 中特定单词的向量是什么?

What is vector for specific word in CBOW word2vec?

经典的 CBOW word2vec 看起来像:

这个方案中特定词的向量是什么?它如何从WI和WO矩阵中获得?或者有用的词向量只能从Skip-gram word2vec获得?

关于您显示的图表,WI 矩阵中的每一行都是一个词向量。 (训练后,当你向模型询问'cat'这样的词时,它会找出从0到V的哪个slot存储'cat',然后return WI 矩阵的那一行。)

WI 使用随机的低量级向量进行初始化。 WO 在训练开始时保留为零。在训练期间,WOWI 的各行通过反向传播校正微调反复改进,以使网络的输出层对每个行更具预测性(context)->(word) 训练示例。

对于 skip-gram,您可以将此图中的输入层视为单个上下文输入词的单热编码。对于 CBOW,您可以将此图中的输入层视为具有多词上下文中每个词的计数作为 xi值——大多数为零(稀疏)。在 CBOW 的实践中,每个词都在 WI 中查找,并且它们的词向量被平均以创建隐藏层激活。

skip-gram 和 CBOW 都可以在 WI.

中创建有用的词向量