更好地过滤维基百科编辑的方法

时间:2012-02-14 12:19:27

标签: artificial-intelligence wikipedia text-processing spam-prevention text-analysis

当您通过Wikipedia article观看特定RSS channel的新闻时, 它没有过滤信息而烦人,因为大多数编辑都是垃圾邮件, 故意破坏,小编辑等。

我的方法是创建过滤器。我决定删除所有不包含贡献者昵称但仅由贡献者的IP地址识别的编辑,因为大多数此类编辑都是垃圾邮件(尽管有一些很好的贡献)。这对于正则表达式来说很容易。 我还删除了包含vulgarisms和其他典型垃圾邮件关键字的修改。

您是否知道使用算法或启发式方法,正则表达式,AI,文本处理技术等更好的方法?该方法应该能够检测不良帖子(轻微编辑或故意破坏),并且应该能够逐步了解什么是好/坏贡献并更新其数据库。

谢谢

1 个答案:

答案 0 :(得分:1)

您可以在此处采用许多不同的方法,但传统上使用Naive bayesian classifiers实现了增量学习的垃圾邮件过滤器。就个人而言,我更喜欢更容易实现Winnow2算法(详情可在此paper中找到)。

首先,您需要从要分类的文本中提取要素。不幸的是,维基百科RSS提要似乎并不特别适合机器,因此您可能需要进行一些预处理。或者,您可以直接使用Mediawiki API或查看this page底部链接的其中一个机器人框架是否对您有所帮助。

理想情况下,您最终会得到一个已添加的单词列表,已删除的单词,可以从中计算的各种统计数据以及编辑的元数据。我想功能列表看起来像这样:

  • editComment: wordA(wordA出现在编辑评论中)
  • -wordB(wordB已从文章中删除)
  • +wordC(wordC添加到文章中)
  • numWordsAdded: 17
  • numWordsRemoved: 22
  • editIsMinor: Yes
  • editByAnIP: No
  • editorUsername: Foo

您认为可能有助于区分好编辑和坏编辑。

提取完功能后,使用它们训练Winnow / Bayesian分类器非常简单。