我们如何将博客上的帖子归类为不适合16岁以下的未成年人阅读?

2024-09-24 04:18:04 发布

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

更新:如何对游戏或博客等公共论坛上的任何文本进行分类,以便在发布之前过滤贬损性评论/文本

原件:“ 我想从推特(或任何相关文本)中过滤掉成人内容

对于垃圾邮件检测,我们有检查特定文本是垃圾邮件还是火腿的数据集

对于成人内容,我找到了要使用的数据集(摘录如下):

arrBad = [
'acrotomophilia',
'anal',
'anilingus',
'anus',
.
. etc.
.
'zoophilia']

问题

如何使用该数据集筛选文本实例? "


Tags: 数据文本游戏内容评论分类垃圾邮件论坛
3条回答

我认为这是一个文本分类问题,因为使用单词黑名单通常无法很好地对全文进行分类。黑名单不起作用的主要原因是你会有很多误报(一个例子:你的名单中包含“性感”一词,光是这个词还不足以将文档标记为成人文档)。要做到这一点,您需要一个培训集,其中的文档标记为“成人内容”,其他文档标记为“工作安全”。下面是我要做的:

  1. 检查是否可以使用现有的带标签的数据集。你需要 每个类都有数千个文档
  2. 如果找不到,创建一个。例如,您可以创建一个scraper并下载Reddit内容。例如读取Text Classification of NSFW Reddit Posts
  3. 使用NLTK构建文本分类器。如果你不知道怎么做,读:Learning to Classify Text

您可能对TextRazor之类的内容感兴趣。通过使用他们的API,您可以对输入文本进行分类

例如,您可以选择删除所有输入文本,其中包含一些您不想要的类别或关键字

这可以看作是一个二进制文本分类问题。您应该收集包含“成人内容”的文档以及不包含成人内容的文档(“通用”)。例如,您在列表中包含的单词/短语可能出现在“通用”文档中,“她想成为珠穆朗玛峰顶上的第一个女孩”这句话中的“顶上的女孩”。你需要得到“成人内容”文档和“通用”文档中每个单词/短语出现的次数的计数向量

我建议你考虑使用像朴素贝叶斯这样的算法(在你的情况下应该相当好)。但是,如果你想捕获使用每个短语的上下文,那么你也可以考虑支持向量机算法(但是这将涉及调整很多复杂的参数)。p>

相关问题 更多 >