doc2vec 的分层训练:如何为同一文档的句子分配相同的标签?

HMK

给doc2vec中的一堆句子分配相同的标签有什么作用?我有一个文档集合,我想使用 gensim 学习向量以进行“文件”分类任务,其中文件是指给定 ID 的文档集合。我有几种标记方法,我想知道它们之间有什么区别,哪种最好 -

  • 取一个文档 d1,doc1为标签分配标签并进行训练。为他人重复

  • 取一个文档 d1,doc1为标签分配标签然后将文档标记为句子并为其标签分配标签doc1,然后使用完整文档和单个句子进行训练。为他人重复

例如(忽略句子没有被标记) -

Document -  "It is small. It is rare" 
TaggedDocument(words=["It is small. It is rare"], tags=['doc1'])
TaggedDocument(words=["It is small."], tags=['doc1'])
TaggedDocument(words=["It is rare."], tags=['doc1'])
  • 与上面类似,但也为每个句子分配一个唯一的标签doc1完整文档包含所有句子标签以及doc1

例子 -

Document -  "It is small. It is rare" 
TaggedDocument(words=["It is small. It is rare"], tags=['doc1', 'doc1_sentence1', 'doc1_sentence2'])
TaggedDocument(words=["It is small."], tags=['doc1', 'doc1_sentence1'])
TaggedDocument(words=["It is rare."], tags=['doc1', 'doc1_sentence2'])

我还有一些额外的分类标签要分配。那么最好的方法是什么?

五条毛

你可以做到这一切!将相同的标签分配给多个文本与将这些文本组合成一个更大的文本并为其分配该标签的效果几乎相同。细微的区别在于Doc2Vec有上下文窗口的模式 – PV-DM ( dm=1)。使用单独的文本,永远不会有跨越句子结尾/开头的上下文。

事实上,asgensim的优化代码路径对文本大小有 10,000 个标记的限制,将较大的文档拆分为子文档,但有时需要重复它们的标签作为解决方法。

你特别提出的,训练完整文档和文档片段都可以,但也会使'doc1'标签的文本量(因此训练注意力/个人预测示例)加倍, 与更窄的 per-sentence 标签相比。您可能想要,也可能不想要 - 它可能会影响每个的相对质量。

什么最好是不清楚的 - 这取决于你的语料库和最终目标,所以应该通过实验来确定,并有一个明确的最终评估,这样你就可以自动化/系统化对最好的严格搜索。

不过,有一些相关的注意事项:

  • Doc2Vec 对于每个文档至少有十几个或更多单词的文档,往往效果更好。
  • 'words'需要被标记化-一个列表的串,不是一个字符串。
  • 它受益于大量不同的数据,特别是如果您正在训练一个更大的模型——更独特的标签(包括重叠的标签)和多维向量——您将需要更多的数据来避免过度拟合。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

doc2vec 的分层训练:如何为同一文档的句子分配相同的标签?

来自分类Dev

继续训练Doc2Vec模型

来自分类Dev

将Doc2Vec句子合并为段落向量

来自分类Dev

建立学习曲线以训练doc2vec嵌入

来自分类Dev

doc2vec:从推断文档中提取文档

来自分类Dev

如何从gensim Doc2Vec获取单词向量?

来自分类Dev

如何测量Doc2vec模型的准确性?

来自分类Dev

如何在 doc2vec 模型中使用预训练的 word2vec 向量?

来自分类Dev

doc2vec-python中doc2vec训练和infer_vector()的输入格式

来自分类Dev

如何使用 doc2vec 为 enron 数据集分配标签

来自分类Dev

如何使用 doc2vec 模型计算一个或几个词与文档的相似度?

来自分类Dev

如何在gensim中加载预训练模型并对其进行训练doc2vec?

来自分类Dev

如何在gensim中加载预训练模型并对其进行训练doc2vec?

来自分类Dev

将 doc2vec 段落表示映射到训练后的类标签

来自分类Dev

Doc2Vec 模型在符号中拆分文档标签

来自分类Dev

如何以可读(csv 或 txt)格式逐行获取 doc2vec 或 sen2vec 训练的向量?

来自分类Dev

如何在gensim 0.11.1中从Doc2Vec获取文档向量?

来自分类Dev

如何在 doc2vec 中找到文档中最相似的术语/单词?

来自分类Dev

gensim预训练的模型可以用于doc2vec模型吗?

来自分类Dev

Gensim:加载预训练的 doc2vec 模型时出错?

来自分类Dev

python错误:“'numpy.ndarray'对象在训练doc2vec时没有属性'words'”

来自分类Dev

为什么在训练 gensim doc2vec 时使用 TaggedBrownCorpus

来自分类Dev

Doc2Vec:编码文档和未见文档之间的相似性

来自分类Dev

Gensim的Doc2Vec most_like文档结果集中是否有限制?

来自分类Dev

是否可以追溯单词到doc2vec中的原始文档?

来自分类Dev

来自整个 doc2vec 模型的词向量与来自特定文档的词向量

来自分类Dev

Doc2Vec 一般情感分析的数据集

来自分类Dev

如何组合 doc2vec 的 PV-DM 和 PV-DBOW 方法生成的向量?

来自分类Dev

为什么gensim Doc2Vec为同一句子提供不同的向量?

Related 相关文章

  1. 1

    doc2vec 的分层训练:如何为同一文档的句子分配相同的标签?

  2. 2

    继续训练Doc2Vec模型

  3. 3

    将Doc2Vec句子合并为段落向量

  4. 4

    建立学习曲线以训练doc2vec嵌入

  5. 5

    doc2vec:从推断文档中提取文档

  6. 6

    如何从gensim Doc2Vec获取单词向量?

  7. 7

    如何测量Doc2vec模型的准确性?

  8. 8

    如何在 doc2vec 模型中使用预训练的 word2vec 向量?

  9. 9

    doc2vec-python中doc2vec训练和infer_vector()的输入格式

  10. 10

    如何使用 doc2vec 为 enron 数据集分配标签

  11. 11

    如何使用 doc2vec 模型计算一个或几个词与文档的相似度?

  12. 12

    如何在gensim中加载预训练模型并对其进行训练doc2vec?

  13. 13

    如何在gensim中加载预训练模型并对其进行训练doc2vec?

  14. 14

    将 doc2vec 段落表示映射到训练后的类标签

  15. 15

    Doc2Vec 模型在符号中拆分文档标签

  16. 16

    如何以可读(csv 或 txt)格式逐行获取 doc2vec 或 sen2vec 训练的向量?

  17. 17

    如何在gensim 0.11.1中从Doc2Vec获取文档向量?

  18. 18

    如何在 doc2vec 中找到文档中最相似的术语/单词?

  19. 19

    gensim预训练的模型可以用于doc2vec模型吗?

  20. 20

    Gensim:加载预训练的 doc2vec 模型时出错?

  21. 21

    python错误:“'numpy.ndarray'对象在训练doc2vec时没有属性'words'”

  22. 22

    为什么在训练 gensim doc2vec 时使用 TaggedBrownCorpus

  23. 23

    Doc2Vec:编码文档和未见文档之间的相似性

  24. 24

    Gensim的Doc2Vec most_like文档结果集中是否有限制?

  25. 25

    是否可以追溯单词到doc2vec中的原始文档?

  26. 26

    来自整个 doc2vec 模型的词向量与来自特定文档的词向量

  27. 27

    Doc2Vec 一般情感分析的数据集

  28. 28

    如何组合 doc2vec 的 PV-DM 和 PV-DBOW 方法生成的向量?

  29. 29

    为什么gensim Doc2Vec为同一句子提供不同的向量?

热门标签

归档