训练一个 doc2Vec 模型实际需要多少数据?

Sha*_*ngh 6 neural-network gensim doc2vec

我一直在使用gensim 的库来训练 doc2Vec 模型。在尝试了不同的数据集进行训练后,我对 doc2Vec 模型的理想训练数据大小应该是多少感到困惑?

我将在这里分享我的理解。请随时纠正我/建议更改-

  1. 通用数据集上训练——如果我想使用在通用数据集上训练的模型,在特定用例中,我需要对大量数据进行训练。
  2. 在上下文相关数据集上进行训练 - 如果我想在与我的用例具有相同上下文的数据上对其进行训练,通常训练数据的大小可以更小。

但是在这两种情况下,用于训练的单词数量是多少?

一般而言,当误差图达到“肘点”时,我们停止训练 ML 模型,在此进一步训练不会显着降低误差。有没有朝这个方向进行任何研究 - doc2Vec 模型的训练在到达肘部后停止的地方?

goj*_*omo 5

没有绝对的指南 - 这在很大程度上取决于您的数据集和特定的应用程序目标。有一些关于已发表Doc2Vec作品中使用的数据集大小的讨论:

使用 doc2vec 获得良好性能所需的最小数据集大小是多少?

如果您的通用语料库与您领域的词汇量不匹配——包括相同的词,或使用相同意义的词——这是一个无法仅用“大量数据”解决的问题。更多的数据可能只是将词上下文和表示更多地“拉”到通用值,而不是特定于域的值。

您确实需要拥有自己的定量、自动化评估/评分方法,以便您可以衡量使用特定数据和目标的结果是否足够,或者通过更多数据或其他培训调整进行改进。

有时,参数调整可以帮助充分利用瘦数据——特别是,更多的训练迭代或更小的模型(更少的向量维度)有时可以稍微抵消一些小语料库的问题。但是Word2Vec/Doc2Vec确实受益于许多微妙变化的、特定于领域的数据——它是训练期间所有文本示例之间持续的、增量的拔河比赛,有助于最终表示适应有用的排列组合,具有所需的相对距离/相对方向属性。