我是tensorflow和word2vec的新手。我刚刚研究了word2vec_basic.py,它使用Skip-Gram算法训练模型。现在,我想使用CBOW算法进行训练。如果我简单地反转train_inputstrain_labels,就可以实现吗?

最佳答案

我认为CBOW模型不能简单地通过翻转train_inputs中的train_labelsSkip-gram来实现,因为CBOW模型体系结构将周围单词的向量之和作为一个单独的实例用于分类器进行预测。例如,您应该一起使用[the, brown]来预测quick,而不是使用the来预测quick

python - Tensorflow:Word2vec CBOW模型-LMLPHP

要实现CBOW,您必须编写一个新的generate_batch生成器函数并汇总周围单词的向量,然后再应用逻辑回归。我写了一个示例,您可以引用:https://github.com/wangz10/tensorflow-playground/blob/master/word2vec.py#L105

关于python - Tensorflow:Word2vec CBOW模型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37394970/

10-11 10:39