【问题标题】:How to do supervised learning with Gensim/Word2Vec/Doc2Vec having large corpus of text documents?如何使用具有大量文本文档的 Gensim/Word2Vec/Doc2Vec 进行监督学习?
【发布时间】:2020-05-10 11:16:05
【问题描述】:
我有一组带有标签(喜欢/不喜欢)的文本文档(2000+)。每个文档包含 200 多个单词。
我正在尝试对这些文档进行监督学习。
我的方法是:
- 对语料库中的每个文档进行向量化。假设我们有 2347 个文档。
- 我可以有 2347 行带有标签的行。喜欢为 1,不喜欢为 0。
- 在 2347 行数据集上使用任何 ML 分类监督模型训练。
如何向量化和创建这样的数据集?
【问题讨论】:
标签:
python
nlp
gensim
word2vec
doc2vec
【解决方案1】:
您可以尝试使用Doc2Vec。这将允许您将每个文档映射到维度为 N 的向量。然后您可以使用任何监督学习算法来训练这些 N 特征。
here 提到了 doc2vec 的其他替代方案。也可以尝试使用 TF-IDF 平均 Word2Vec 向量方法。
另外,请确保在应用 doc2vec 或 word2vec 之前应用适当的文本清理。诸如大小写规范化、停用词删除、标点符号删除等步骤。这实际上取决于您的数据集。了解更多here
如果您希望预测喜欢/不喜欢,我还建议从您的数据中设计一些特征。这取决于您的数据和问题,但一些示例是
- 大写单词的比例
- 俚语存在与否
- 表情符号是否存在
- 文本语言
- 文本的情感 - 虽然这是一个全新的话题
我希望这会有所帮助...