如何在doc2vec DBOW中与段落向量共同训练单词向量?

问题描述 投票:0回答:1

我不明白在DBOW模式(doc2vec)中gensim的dm=0在训练过程中如何涉及单词向量。我知道它默认使用dbow_words=0禁用。但是当我们将dbow_words设置为1时会发生什么?

在我对DBOW的理解中,直接从段落向量预测上下文单词。所以模型的唯一参数是N p维段落向量加上分类器的参数。

但是多个消息来源暗示在DBOW模式下可以共同训练单词和doc向量。例如:

那么,这是怎么做到的?任何澄清将非常感谢!

注意:对于DM,段落向量与单词向量进行平均/连接以预测目标单词。在这种情况下,很明显,单词向量与文档向量同时进行训练。并且有N*p + M*q + classifier参数(其中M是词汇大小和q词向量空间昏暗)。

gensim word2vec doc2vec
1个回答
1
投票

如果设置dbow_words=1,则将skip-gram字矢量训练添加到训练循环中,与正常的PV-DBOW训练交错。

因此,对于文本中的给定目标词,首先使用候选doc-vector(单独)来尝试预测该词,然后对模型和doc-vector进行反向传播调整。然后,每次使用一堆周围的单词,一次一个地以跳过 - 克的方式,尝试预测相同的目标单词 - 进行后续调整。

然后,文本中的下一个目标词获得相同的PV-DBOW加上skip-gram处理,依此类推,依此类推。

作为一些逻辑后果:

  • 训练比普通的PV-DBOW花费更长的时间 - 大约等于window参数
  • 单词向量总体上比训练向量得到更多的总训练注意力,再次通过等于window参数的因子
© www.soinside.com 2019 - 2024. All rights reserved.