如果只对文档进行训练并推断句子,doc2vec 是否有用

Can doc2vec be useful if training on Documents and inferring on sentences only

我正在使用 gensim 的 Doc2vec 训练一些文档。

我有两种类型的输入:

  1. 全英文维基百科:维基百科文本的每篇文章被视为一篇 doc2vec 培训文件。 (总共约 550 万篇文章或文档)
  2. 一些与我的项目相关的文档是从一些网站上手动准备和收集的。 (大约 15000 个文档)。
    其中每个文档的大小约为 100 个句子。

另外,我想用这个模型来推断句子的大小(10~20个字)。

我要求澄清我的方法。
对文档进行训练(每个文档的大小约为 100 个句子)然后推断新句子的方法是否正确。 ?

或者,我应该只训练句子而不训练文档,然后推断新句子吗?

每个语料库和项目目标都不同。您对较大的文档进行训练然后推断较短的句子的方法似乎可行,但您必须尝试看看效果如何,然后反复测试较短的训练文档(如单个句子或句子组)是否效果更好,为了您的特定目标。

请注意,gensim Doc2Vec 推理通常从非默认参数中获益——尤其是更多 steps(比微小的默认值 5)或更小的起始 alpha(更像是 0.025 的训练默认值),尤其是在较短的文档上。而且,根据原始模型元参数,该推断也可能更好或更差。

另请注意,实施限制意味着长度超过 10,000 个标记的文本在 gensim Word2Vec/Doc2Vec 训练中被静默截断。 (如果你有更长的文档,你可以将它们拆分成少于 10K-token 的子文档,然后对每个子文档重复 tags,以模拟使用更长文档进行训练的效果。)