使用n对文本文档进行分类

2024-05-16 21:34:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在做一个项目,在这个项目中,我接收电子邮件,使用电子邮件包剥离邮件正文,然后我想用体育、政治、科技等标签对它们进行分类。。。在

我已经成功地从我的邮件中删除了邮件正文,现在我正打算开始分类。我做了一个典型的情感分析分类例子,使用move_nureviews语料库将文档分为正面和负面评论。在

我只是想知道如何将这种方法应用到我的项目中?我可以创建多个类,如体育、科技、政治、娱乐等。?我碰到了一个路障,正在寻找一个正确的方向。在

如果这不是一个合适的问题,所以我很乐意删除它。在

编辑:大家好,我看到这篇文章有点受欢迎,我确实成功地完成了这个项目,以下是GitHub Repo项目中代码的链接: https://github.com/codyreandeau/Email-Categorizer/blob/master/Email_Categorizer.py


Tags: 项目move电子邮件email邮件分类标签政治
2条回答

文本分类的任务是一个有监督的机器学习问题。这意味着您需要标记数据。当你处理电影审查问题时,你使用+1/-1标签来训练你的情绪分析系统。在

回到你的问题上来:

  1. 如果您的数据有标签,请以同样的方式处理问题。我建议你使用scikit学习库。你可以从这里得到一些启示:Scikit-Learn for Text Classification

  2. 如果你没有标签,你可以尝试无监督的学习方法。如果您对有多少个类别(称为K)有任何线索,可以尝试使用KMeans方法。这意味着,根据邮件的相似程度将它们分为K类。类似的电子邮件最终也会变成相似的桶。然后用手检查集群,并拿出一个标签。将新邮件分配到最相似的群集。如果您需要KMeans的帮助,请查看以下快速方法:Text Clustering Recipe

建议:给电子邮件贴标签比你想象的要容易得多。例如,Gmail允许您导出包含文件夹信息的电子邮件。如果你已经对你的电子邮件进行了分类,你就可以利用这一点。在

要创建分类器,您需要一个包含所要查找的类的训练数据集。在您的情况下,您可能需要:

  1. 创建自己的数据集
  2. 使用预先存在的数据集

brown corpus是一篇具有开创性的文本,包含了您所谈论的许多类别。这可能是一个起点,可以帮助您使用诸如gensim这样的包对电子邮件进行分类,以找到语义上相似的文本。在

一旦你对邮件进行分类,你就可以训练一个系统来预测每封看不见的邮件的标签。在

相关问题 更多 >