WEKA文本挖掘分析垃圾邮件分类模型

业务背景

电子邮件的应用变的十分广泛,它给人们的生活带来了极大的方便,然而,作为其发展的副产品——垃圾邮件,却给广大用户、网络管理员和ISP(Internet服务提供者)带来了大量的麻烦。垃圾邮件问题日益严重,受到研究人员的广泛关注。 垃圾邮件通常是指未经用户许可,但却被强行塞入用户邮箱的电子邮件。对于采用群发等技术的垃圾邮件,必须借助一定的技术手段进行反垃圾邮件工作。目前,反垃圾邮件技术主要包括:垃圾邮件过滤技术、邮件服务器的安全管理以及对简单邮件通信协议(SMTP)的改进研究等。 

WEKA文本分词预处理

首先对于训练集文件夹中的两类邮件文档进行分析,可从不同角度自动化分析两类文件特征,编写算法,构建分类模型。

首先设置工作目录,并且读取分类后的文本文件

可以看到垃圾邮件和非垃圾邮件的频数直方图​

 ​

然后对得到的原始语料进行分词处理 得到词频矩阵文件

 ​

得到各个词频的分类直方图​

得到词频矩阵后 对数据进行分类器的建模

2. 对corpus中的attribute进行分析,找出对于分类有贡献的attribute(即那些词只出现在positive中,那些词只出现在negative中,哪些词在两个类别里都出现)

3. 找出区分positive和negative的分类规则(即哪些词在一起出现的时候会导致分类器判断的结果为positive,哪些词在一起出现的时候会导致分类器判断的结果为negative)

从结果可以看出cell efficiengcy however breast rates 和cell这些词对最后的分类结果有较大的影响 如有however的一般为负面词 。

WEKA文本分词结果比较

下面得到每个分类器的准确度和混淆矩阵:

NaiveBayes


Logistic​
J48
RandomForest​
SVM​
OneR​

结语

基于判别方法的垃圾邮件过滤在现代研究中引起比较少的关注 ,结果很清楚地表明,基于随机森林、SVM模型的分类方法相对于传统的方法,在垃圾邮件的过滤方面,可以有效地提高正确率和准确率。


可下载资源

关于作者

Kaizong Ye拓端研究室(TRL)的研究员。在此对他对本文所作的贡献表示诚挚感谢,他在上海财经大学完成了统计学专业的硕士学位,专注人工智能领域。擅长Python.Matlab仿真、视觉处理、神经网络、数据分析。

本文借鉴了作者最近为《R语言数据分析挖掘必知必会 》课堂做的准备。

​非常感谢您阅读本文,如需帮助请联系我们!

 
QQ在线咨询
售前咨询热线
15121130882
售后咨询热线
0571-63341498

关注有关新文章的微信公众号


永远不要错过任何见解。当新文章发表时,我们会通过微信公众号向您推送。

技术干货

最新洞察

This will close in 0 seconds