我知道Python中已经有了PV-DBOW(段落向量)的实现(gensim),但我对如何自己实现它感兴趣。PV-DBOW的官方论文解释如下:另一种方法是在输入中忽略上下文单词,但强制模型在输出中预测从段落中随机抽样的单词。实际上,这意味着在每次随机梯度下降迭代中,我们会对一个文本窗口进行采样,然后从文本窗口中随机抽样一个单词,并根据段落向量形成分类任务。根据论文所述,单词向量不会被存储,PV-DBOW被称为与word2vec中的skip gram工作方式相似。
Skip-gram是在word2vec参数学习中解释的。 在skip gram模型中,单词向量被映射到隐藏层。 执行此映射的矩阵在训练期间更新。 在PV-DBOW中,隐藏层的维度应为一个段落向量的维度。当我想要将样本示例的单词向量与段落向量相乘时,它们应具有相同的大小。 单词的原始表示大小为(词汇量大小×1)。如何进行映射以获得正确的大小(段落维数×1)在隐藏层中。当未存储单词向量时,如何执行此映射? 我假设由于word2vec参数学习中的方程式26,单词和段落表示在隐藏层中应具有相同的大小。
Skip-gram是在word2vec参数学习中解释的。 在skip gram模型中,单词向量被映射到隐藏层。 执行此映射的矩阵在训练期间更新。 在PV-DBOW中,隐藏层的维度应为一个段落向量的维度。当我想要将样本示例的单词向量与段落向量相乘时,它们应具有相同的大小。 单词的原始表示大小为(词汇量大小×1)。如何进行映射以获得正确的大小(段落维数×1)在隐藏层中。当未存储单词向量时,如何执行此映射? 我假设由于word2vec参数学习中的方程式26,单词和段落表示在隐藏层中应具有相同的大小。