改进支持向量机的电子邮件分类
张洁
摘 要: 电子邮件分类有利于垃圾邮件的过滤,节省网络资源。为了提高邮件分类的精度,提出了改进支持向量机的电子邮件分类器模型。首先提取电子邮件的原始特征,并采用主成分分析法对特征进行选择,减少特征数量,提高邮件分类效率;然后采用支持向量机建立电子邮件分类器,并对传统支持向量机参数选择方法进行改进,改善邮件分类效果,最后采用邮件分类的标准数据库——UCI进行性能分析。结果表明,改进支持向量机解决了当前电子邮件分类模型的不足,获得了理想的电子邮件分类效果,分类结果可以帮助管理人员拦截垃圾邮件。
关键词: 电子邮件; 分类模型; 特征提取; 垃圾邮件; 主成分分析
中图分类号: TN915.08?34 文献标识码: A 文章编号: 1004?373X(2017)01?0077?03
Abstract: The E_mail classification is conducive to filter out the spam mail and save the network resources. In order to improve the accuracy of the E_mail classification, an E_mail classifier model using improved support vector machine is proposed. The original features of E_mail are extracted, and selected with the principal component analysis to reduce the feature quantity and improve the E_mail classification efficiency. The support vector machine is used to establish the E_mail classifier. The parameter selection method of the traditional support vector machine was improved to perfect the E_mail classification effect. The standard database UCI of the E_mail classification is used to analyze the classification performance. The results show that the improved support vector machine has solved the insufficient of the current E_mail classification model, and obtained the satisfied E_mail classification effect, which can help managers to block the spam mail.
Keywords: E_mail; classification model; feature extraction; spam mail; principal component analysis
0 引 言
随着经济水平的不断提高,家家户户有了计算机,网民越来越多。电子邮件(E_mail)是一种人们在网络上交流的常用工具,受到了人们的广泛关注[1]。网络是一个新兴事件,网络中有大量垃圾邮件,它们不仅浪费网络资源,给人们工作带来困扰,而且给一些不法分子提供了可乘之机,因此,对E_mail进行有效分类找出其中的垃圾郵件具有重要的实际意义[2]。
E_mail与文本有很多相似之处,为此一些学者将文本分类方法引入E_mail分类中,通过分类算法将邮件分为正常邮件和垃圾邮件[3]。同时E_mail是一种半结构化文本,具有自身的特殊性,采用传统文本分类方法用于E_mail分类,分类的精度低,邮件错分现象严重,导致一些正常邮件被拦截,而且一些垃圾邮件没有被过滤掉[4]。近些年来,一些学者将模式识别技术引入到E_mail分类中,首先提取E_mail的原始特征,然后采用K近邻算法和神经网络等建立E_mail分类模型,获得了不错的E_mail分类效果[5]。E_mail的原始特征维数高,若直接输入到K近邻算法和神经网络进行分类,分类时间长、效率低,而且可能存在一些无用特征,对E_mail分类效果产生干扰[6]。特征筛选可以去除无用特征,减少特征数量,提高学习效率[7]。K近邻算法假设E_mail的类别与特征间是线性变化关系,这与实际情况不相符,分类精度要低于神经网络[2]。神经网络虽然可以描述E_mail的类别与特征间的变化关系,但要求样本多,网络结构复杂,当特征维数高时,出现“维数灾”现象的概率高[8]。支持向量机(Support Vector Machine,SVM)是一种新型机器学习算法,避免了“维数灾”现象的出现,且分类效果要优于神经网络,在E_mail分类中得到了广泛的应用[9]。支持向量机参数优化问题一直悬而未解,影响在E_mail分类中的应用范围[10]。
针对当前E_mail分类模型存在的难题,为了提高邮件分类的精度,提出一种改进支持向量机的电子邮件分类器模型(ISVM),结果表明,改进支持向量机获得了良好的电子邮件分类效果,可以满足垃圾邮件处理的要求。
1 E_mail分类模型的工作原理
E_mail分类模型的工作原理如图1所示。从图1可以看出,特征提取和选择是获得较优E_mail分类结果的基础,当前E_mail特征提取和选择研究少,主要采用人工凭经验确定特征的数量,特征选择具有主观性,影响E_mail分类器的构建;E_mail的分类器是获得理想分类结果的关键,虽然SVM可以描述E_mail的变化特点,但如果核函数及参数选择不合理,E_mail分类效果很差,本文采用布谷鸟搜索算法选择SVM的核函数参数,以获得高精度的E_mail分类结果。
2 改进支持向量机
2.1 标准支持向量机
支持向量机根据最优分类超平面将训练样本分开,而且类别之间的间隔最大。对于包含两个样本的训练集,如果超平面可将它们全部分开,表示训练样本集是线性可分的,训练集的数量为那么训练集描述为:其中表示样本输入;表示样本的类别。支持向量机的超平面如图2所示。
基于支持向量机的惩罚参数和径向基核参数影响的性能,本文选择布谷鸟搜索算法确定和的值。
2.2 布谷鸟搜索算法
布谷鸟搜索算法(CS)是一种应用范围很广的智能搜索算法,假设有三种状态,具体如下:
(1) 一只布谷鸟仅下一个蛋,并随机分布于鸟巢中。
(2) 部分较优的鸟巢直接进入到下一代,组成新的鸟巢[11]。
(3) 每一个鸟巢中的布谷鸟蛋被宿主发现的概率是相等的。
将支持向量机参数和编码成为一个鸟巢位置,根据训练样本计算每一组参数的和目标函数值,并选择目标函数值最优者作为当前最优鸟巢,然后对布谷鸟搜索的路径和位置不断迭次,产生新一代的鸟巢,当迭代次数达到最大迭代次数时,最优鸟巢位置对应的和即为找到的最优参数。
3 改进支持向量机的E_mail分类
改进支持向量机的E_mail分类步骤为:
Step1:收集相应数量的E_mail,并进行一些预处理,如删除其中没有意义的数据,将它们转换为相应的格式。
Step2:提取E_mail特征,通过词和类别的互信息量作为E_mail原始特征,对它们进行归一化处理。
Step3:采用主成分分析法对E_mail原始特征进行选择,提取最优的特征子集,并根据特征子集对E_mail训练样本和测试样本进行处理,减少数据规模。
Step4:将训练样本输入到支持向量机进行训练,并采用布谷鸟搜索算法确定最优参数和建立E_mail分类器。
Step5:采用测试样本对E_mail分类器的性能进行测试和分析。
4 实验结果与分析
为了分析ISVM的E_mail分类性能,选择邮件分类的标准数据集——UCI数据库作为研究对象,该数据集共有4 601个样本,每一个样本有58个特征,垃圾邮件的标签为“1”,正常邮件的标签为“0”,在Matlab 2014工具箱编程中实现E_mail分类模型。由于数据库中的样本比较多,随机选择30%的样本进行仿真实验,训练样本和测试样本数量采用31的形式进行划分。采用分类准确率(Precision)、分类召回率(recall)对结果进行分析,具体如下:
5 结 语
为了消除垃圾邮件对人们工作和生活的负面影响,提高电子邮件分类精度,本文提出一种改进支持向量机的电子邮件分类模型,结果表明,改进支持向量机解决了当前电子邮件分类模型存在的不足,获得了理想的电子邮件分类效果,减少了系统分发邮件的工作量,分类结果可以帮助管理人员拦截垃圾邮件,具有广泛的应用前景。
参考文献
[1] 蒲筱哥.Web自动邮件分类技术研究综述[J].情报學报,2009,28(2):233?241.
[2] 刘赫,刘大有,裴志利,等.一种基于特征重要度的邮件分类特征加权方法[J].计算机研究与发展,2009,46(10):1693?1703.
[3] 陈东亮,白清源.基于词频向量的关联邮件分类[J].计算机研究与发展,2009,46(2):464?469.
[4] 吴江宁,刘巧凤.基于图结构的中文邮件表示方法研究[J].情报学报,2010,32(4):618?624.
[5] 王波,黄迪明.遗传神经网络在电子邮件过滤器中的应用[J].电子科技大学学报,2005,34(4):505?508.
[6] 李惠娟,高峰,管晓宏,等.基于贝叶斯神经网络的垃圾邮件过滤方法[J].微电子学与计算机,2005,22(4):107?111.
[7] 陈华辉.一种基于潜在语义索引的垃圾邮件过滤方法[J].计算机应用研究,2000,17(10):17?18.
[8] 宋胜利,王少龙,陈平.面向邮件分类的中文邮件语义表示方法[J].西安电子科技大学学报,2013,40(2):89?97.
[9] 张兢,侯旭东,吕和胜.基于朴素贝叶斯和支持向量机的邮件智能分析系统设计[J].重庆理工大学学报(自然科学版),2010,24(1):77?81.
[10] 陈功平,沈明玉,王红,等.基于内容的邮件分类技术[J].华东理工大学学报(自然科学版),2011,37(6):770?774.
[11] YANG X S, DEB S. Engineering optimization by cuckoo search [J]. International journal of mathematical modeling and numerical optimization, 2010, 11(4): 330?343.
摘 要: 电子邮件分类有利于垃圾邮件的过滤,节省网络资源。为了提高邮件分类的精度,提出了改进支持向量机的电子邮件分类器模型。首先提取电子邮件的原始特征,并采用主成分分析法对特征进行选择,减少特征数量,提高邮件分类效率;然后采用支持向量机建立电子邮件分类器,并对传统支持向量机参数选择方法进行改进,改善邮件分类效果,最后采用邮件分类的标准数据库——UCI进行性能分析。结果表明,改进支持向量机解决了当前电子邮件分类模型的不足,获得了理想的电子邮件分类效果,分类结果可以帮助管理人员拦截垃圾邮件。
关键词: 电子邮件; 分类模型; 特征提取; 垃圾邮件; 主成分分析
中图分类号: TN915.08?34 文献标识码: A 文章编号: 1004?373X(2017)01?0077?03
Abstract: The E_mail classification is conducive to filter out the spam mail and save the network resources. In order to improve the accuracy of the E_mail classification, an E_mail classifier model using improved support vector machine is proposed. The original features of E_mail are extracted, and selected with the principal component analysis to reduce the feature quantity and improve the E_mail classification efficiency. The support vector machine is used to establish the E_mail classifier. The parameter selection method of the traditional support vector machine was improved to perfect the E_mail classification effect. The standard database UCI of the E_mail classification is used to analyze the classification performance. The results show that the improved support vector machine has solved the insufficient of the current E_mail classification model, and obtained the satisfied E_mail classification effect, which can help managers to block the spam mail.
Keywords: E_mail; classification model; feature extraction; spam mail; principal component analysis
0 引 言
随着经济水平的不断提高,家家户户有了计算机,网民越来越多。电子邮件(E_mail)是一种人们在网络上交流的常用工具,受到了人们的广泛关注[1]。网络是一个新兴事件,网络中有大量垃圾邮件,它们不仅浪费网络资源,给人们工作带来困扰,而且给一些不法分子提供了可乘之机,因此,对E_mail进行有效分类找出其中的垃圾郵件具有重要的实际意义[2]。
E_mail与文本有很多相似之处,为此一些学者将文本分类方法引入E_mail分类中,通过分类算法将邮件分为正常邮件和垃圾邮件[3]。同时E_mail是一种半结构化文本,具有自身的特殊性,采用传统文本分类方法用于E_mail分类,分类的精度低,邮件错分现象严重,导致一些正常邮件被拦截,而且一些垃圾邮件没有被过滤掉[4]。近些年来,一些学者将模式识别技术引入到E_mail分类中,首先提取E_mail的原始特征,然后采用K近邻算法和神经网络等建立E_mail分类模型,获得了不错的E_mail分类效果[5]。E_mail的原始特征维数高,若直接输入到K近邻算法和神经网络进行分类,分类时间长、效率低,而且可能存在一些无用特征,对E_mail分类效果产生干扰[6]。特征筛选可以去除无用特征,减少特征数量,提高学习效率[7]。K近邻算法假设E_mail的类别与特征间是线性变化关系,这与实际情况不相符,分类精度要低于神经网络[2]。神经网络虽然可以描述E_mail的类别与特征间的变化关系,但要求样本多,网络结构复杂,当特征维数高时,出现“维数灾”现象的概率高[8]。支持向量机(Support Vector Machine,SVM)是一种新型机器学习算法,避免了“维数灾”现象的出现,且分类效果要优于神经网络,在E_mail分类中得到了广泛的应用[9]。支持向量机参数优化问题一直悬而未解,影响在E_mail分类中的应用范围[10]。
针对当前E_mail分类模型存在的难题,为了提高邮件分类的精度,提出一种改进支持向量机的电子邮件分类器模型(ISVM),结果表明,改进支持向量机获得了良好的电子邮件分类效果,可以满足垃圾邮件处理的要求。
1 E_mail分类模型的工作原理
E_mail分类模型的工作原理如图1所示。从图1可以看出,特征提取和选择是获得较优E_mail分类结果的基础,当前E_mail特征提取和选择研究少,主要采用人工凭经验确定特征的数量,特征选择具有主观性,影响E_mail分类器的构建;E_mail的分类器是获得理想分类结果的关键,虽然SVM可以描述E_mail的变化特点,但如果核函数及参数选择不合理,E_mail分类效果很差,本文采用布谷鸟搜索算法选择SVM的核函数参数,以获得高精度的E_mail分类结果。
2 改进支持向量机
2.1 标准支持向量机
支持向量机根据最优分类超平面将训练样本分开,而且类别之间的间隔最大。对于包含两个样本的训练集,如果超平面可将它们全部分开,表示训练样本集是线性可分的,训练集的数量为那么训练集描述为:其中表示样本输入;表示样本的类别。支持向量机的超平面如图2所示。
基于支持向量机的惩罚参数和径向基核参数影响的性能,本文选择布谷鸟搜索算法确定和的值。
2.2 布谷鸟搜索算法
布谷鸟搜索算法(CS)是一种应用范围很广的智能搜索算法,假设有三种状态,具体如下:
(1) 一只布谷鸟仅下一个蛋,并随机分布于鸟巢中。
(2) 部分较优的鸟巢直接进入到下一代,组成新的鸟巢[11]。
(3) 每一个鸟巢中的布谷鸟蛋被宿主发现的概率是相等的。
将支持向量机参数和编码成为一个鸟巢位置,根据训练样本计算每一组参数的和目标函数值,并选择目标函数值最优者作为当前最优鸟巢,然后对布谷鸟搜索的路径和位置不断迭次,产生新一代的鸟巢,当迭代次数达到最大迭代次数时,最优鸟巢位置对应的和即为找到的最优参数。
3 改进支持向量机的E_mail分类
改进支持向量机的E_mail分类步骤为:
Step1:收集相应数量的E_mail,并进行一些预处理,如删除其中没有意义的数据,将它们转换为相应的格式。
Step2:提取E_mail特征,通过词和类别的互信息量作为E_mail原始特征,对它们进行归一化处理。
Step3:采用主成分分析法对E_mail原始特征进行选择,提取最优的特征子集,并根据特征子集对E_mail训练样本和测试样本进行处理,减少数据规模。
Step4:将训练样本输入到支持向量机进行训练,并采用布谷鸟搜索算法确定最优参数和建立E_mail分类器。
Step5:采用测试样本对E_mail分类器的性能进行测试和分析。
4 实验结果与分析
为了分析ISVM的E_mail分类性能,选择邮件分类的标准数据集——UCI数据库作为研究对象,该数据集共有4 601个样本,每一个样本有58个特征,垃圾邮件的标签为“1”,正常邮件的标签为“0”,在Matlab 2014工具箱编程中实现E_mail分类模型。由于数据库中的样本比较多,随机选择30%的样本进行仿真实验,训练样本和测试样本数量采用31的形式进行划分。采用分类准确率(Precision)、分类召回率(recall)对结果进行分析,具体如下:
5 结 语
为了消除垃圾邮件对人们工作和生活的负面影响,提高电子邮件分类精度,本文提出一种改进支持向量机的电子邮件分类模型,结果表明,改进支持向量机解决了当前电子邮件分类模型存在的不足,获得了理想的电子邮件分类效果,减少了系统分发邮件的工作量,分类结果可以帮助管理人员拦截垃圾邮件,具有广泛的应用前景。
参考文献
[1] 蒲筱哥.Web自动邮件分类技术研究综述[J].情报學报,2009,28(2):233?241.
[2] 刘赫,刘大有,裴志利,等.一种基于特征重要度的邮件分类特征加权方法[J].计算机研究与发展,2009,46(10):1693?1703.
[3] 陈东亮,白清源.基于词频向量的关联邮件分类[J].计算机研究与发展,2009,46(2):464?469.
[4] 吴江宁,刘巧凤.基于图结构的中文邮件表示方法研究[J].情报学报,2010,32(4):618?624.
[5] 王波,黄迪明.遗传神经网络在电子邮件过滤器中的应用[J].电子科技大学学报,2005,34(4):505?508.
[6] 李惠娟,高峰,管晓宏,等.基于贝叶斯神经网络的垃圾邮件过滤方法[J].微电子学与计算机,2005,22(4):107?111.
[7] 陈华辉.一种基于潜在语义索引的垃圾邮件过滤方法[J].计算机应用研究,2000,17(10):17?18.
[8] 宋胜利,王少龙,陈平.面向邮件分类的中文邮件语义表示方法[J].西安电子科技大学学报,2013,40(2):89?97.
[9] 张兢,侯旭东,吕和胜.基于朴素贝叶斯和支持向量机的邮件智能分析系统设计[J].重庆理工大学学报(自然科学版),2010,24(1):77?81.
[10] 陈功平,沈明玉,王红,等.基于内容的邮件分类技术[J].华东理工大学学报(自然科学版),2011,37(6):770?774.
[11] YANG X S, DEB S. Engineering optimization by cuckoo search [J]. International journal of mathematical modeling and numerical optimization, 2010, 11(4): 330?343.