处理 doc2vec 培训中的附加信息

Handling additional information in doc2vec training

我想在包含 2 位信息的项目上训练 doc2vec: a) 文本(在法律领域) b) 关键词and/or 引用文中提取的其他法律文本 我希望我的模型能够基本上根据 2 个标准识别相似的文本: a) 文本相似性和 b) keywords/references

的存在

对于这种情况,是否有任何最佳做法? 到目前为止我的想法: - 将文本和 keywords/referenes 连接成一个字符串并在其上训练模型 - 训练两个独立的模型(将产生两个向量:文本和关键字

我假设 'doc2vec' 是指 'Paragraph Vector' 算法在 class Doc2Vec 中的 gensim 实现。

您的两种方法都可能有效并且值得测试。 Doc2Vec class 中没有用于清楚地输入 "other" 数据的工具,但您可以使该数据看起来像额外的词标记,或额外的 tags,因此这些其他值的互相关影响并嵌入到结果向量-space 中。

具体来说,如果您希望 "keywords and/or references" 与整个文本一起建模,而不仅仅是它们可能恰好旁边的普通词(如果它们被附加到文本中) ),你应该特别尝试以下选项中的一个或两个:

  • 使用 PV-DBOW 模式 (dm=0),它不使用词到附近词的影响(在上下文中 window

  • 将关键字或引用作为额外的 tags,除了文档的唯一 ID 标记(这是命名文档向量的 classic 方式)

(如果尝试两个单独的模型,您可能会让基于自然文本的模型仍然使用受 window 影响的 PV-DM 模式,而 keywords/references 的本质上无序的性质将使用PV-DBOW 模式。)