朱俚治 朱梧檟 侯爱莲
摘要:为了改进已有邮件过滤算法的不足之处,提出一种新的邮件过滤算法。以往的大部分过滤算法采用的都是邮件属性精确匹配算法,并未使用模糊匹配思想,因此邮件的漏检率较高,并且发现未知邮件的效率较低。针对以往邮件过滤算法中漏检率比较高的不足之处,文中提出的邮件过滤算法的改进思路是:首先使用传统的黑白名单过滤技术对已知的邮件进行分类,那些是正常邮件,那些是垃圾邮件。在此基础之上使用相似性算法来计算未知邮件与已知邮件的相似度,从而达到对未知邮件分类目的,最后使用MMTD算法对的邮件相似度的好坏做出衡量,并且以此为邮件过滤提供有效的依据,经过以上的三个步骤之后,最后进行邮件的过滤。
关键词:垃圾邮件;MMTD;相似性
中图分类号:TP301.6文献标识码:A
Abstract:The widely used mail attributes exact matching algorithm does not use fuzzy matching ideas, so the rate of missed messages is high and the efficiency of finding the unknown message is low. This paper presented the improved spam filtering idea. First, the traditional black and white list of known email filtering technology was used to classify the messages into normal email and spam. Based on this, similarity algorithm was used to calculate the unknown email message with the known similarity, so as to achieve the unknown message classification purposes. Then, MMTD mail similarity algorithm was used to measure the quality of email message, which provides the effective basis for message filter. After the above three steps, the email messages were filtered.
Key words:spam; MMTD; similarity
1引言
正常邮件与垃圾邮件是两种性质的邮件,垃圾邮件是缺乏实际意义和没有用处的邮件,因此为了保护有限的邮件资源,必须阻止垃圾邮件在网络中肆意传播。到目前为止邮件过滤研究人员已开发出了许多邮件过滤技术。但由于垃圾邮件技术发展速度较快,单一的邮件过滤技术难以胜任某些的邮件过滤任务 。
现有的邮件过滤技术主要包括:①基于黑白名单邮件过滤技术,②基于过滤规则的邮件过滤技术,③基于邮件内容的过滤技术[1-3]。这些邮件过滤技术都各自的优势同时也有不足的地方。最早出现的黑白名单过滤技术的缺点是漏检率较高,并且效率低于基于其它的邮件过滤技术[1-3]。基于内容过滤技术与基于贝叶斯过滤算法在当今的邮件过滤技术中有较为广泛的应用,过滤邮件时误判率有所降低[1-3]。现在有以下几种技术在邮件过滤技术中进行应用:决策树,使用SPF协议该改进SMTP协议,人工免疫,ripper算法等等各种算法[3]。根据上述原因,为了将大部分垃圾邮件进行过滤,只有将已有的过滤技术综合应用才能够达到过滤邮件的目的。
本文提出的邮件过滤的算法中使用了黑白名单技术,相似性计算算法和MMTD算法,该邮件过滤的思路是:①提取已知的黑白名单邮件属性,②使用相似性算法计算未知邮件与已知邮件的相似性,③最后使用MMTD算法对相似性的计算结果做出衡量和估计。新邮件过滤算法优点在于①使用了两种近似算法:相似性计算和MMTD算法,②将传统的邮件过滤技术与相似性算法相互结合,③将邮件属性之间的精确匹配改为邮件属性之间的相似性匹配。
2现有的邮件过滤技术简介
2.1二黑白名单过滤技术
在黑白名单过滤技术中:网络管理人员把属于黑名的邮件设定为垃圾邮件名单,白名单设定为正常的邮件名单。因此根据已有的新名单可以将已知的邮件进行分类。黑/白名单的建立是周期性的而非实时的,并且黑/白名单还很容易出错,容易出现误判的现象[1-4]。
2.2基于过滤规则的邮件过滤技术
基于过滤规则的邮件过滤技术是用户根据已有的邮件信息来制定若干条邮件的过滤规则。一般来说,过滤规则通常从信头分析、群发过滤、关键词精确匹配和邮件内容的其他特征几个方面来进行设置[1-4],在过滤规则中符合其中一条或多条的就认为是垃圾邮件[1-4] 。
2.3基于邮件内容的过滤技术
对于未知特征的新垃圾邮件,黑/白名单技术与过滤规则技术一般不能将垃圾邮件与正常邮件进行有效的区分,这时误判现象较高[1-4]。然而基于邮件内容过滤技术的优势在于能够过滤新的垃圾邮件。邮件内容过滤技术在一定程度上能够自动地对这些邮件进行识别,因此能够近一步提高过滤系统的智能性,减少误判现象。
因此针对目前垃圾邮件过滤技术发展的状况,本文的作者在查阅有关的邮件过滤技术之后,提出了一种新的邮件过滤算法,以下是本文提出的邮件过滤算法描述。
3邮件的特征属性
3.1区分垃圾邮件与正常邮件主要的属性
①发件人地址和回复地址是否相同,②邮件抄送个数,③邮件主题,④X-Mailer信头,⑤Received:字段出现次数,⑥是否含有伪造Received字段,⑦信体中关键词个数,⑧邮件附件类型,⑨邮件正文大小[5]。
在邮件的特性中:属性邮件正文内容的属性有:①信体中关键词个数,②邮件附件类型,③邮件正文大小[5]。属于邮件结构的属性有:①发件人地址和回复地址是否相同, ②邮件抄送个数,③邮件主题,④XMailer信头,⑤Received字段出现次数,⑥是否含有伪造Received字段[5]。
3.2本文过滤垃圾邮件时采用的邮件属性
邮件结构特征属性:①发件人地址和回复地址是否相同, ②邮件抄送个数,③邮件主题,⑤Received:字段出现次数,⑥是否含有伪造Received字段[5]。
邮件的正文内容特征属性:⑦信体中关键词个数,⑧邮件附件类型,⑨邮件正文大小[5]。
4黑/白名单对已知的邮件进行分类
1)电子邮件中存在两种属性的邮件:①正常的邮件,②垃圾邮件。
2)黑名单的邮件是垃圾邮件,白名单的邮件是正常邮件。
5欧氏距离公式与相似性计算
5.1欧氏距离公式的简介
在聚类算法中研究人员常常使用欧氏距离作为聚类对象属性之间相似性计算,常用的公式有欧氏距离公式和马氏距离公式。因此本文采用欧氏距离作为衡量对象相似性的计算公式。
欧氏距离计算公式[6-7]:
5.3区分垃圾邮件与正常邮件主要的属性等待识别的邮件A′与已知邮件A之间的相似性计算
函数:f(x)=1-等待识别邮件的属性已知邮件的属性(1)
在本文中采用A′表示等待识别的邮件,用A表示已知邮件。
说明:y=f(x)的含义是等待识别的邮件偏离与已知邮件属性的函数。
函数:g(x)=1-f(x)(2)
说明:y=g(x)的含义是等待识别邮件与已知邮件相似性的函数。
分析和讨论:
1)邮件A′与邮件A的相似性计算
(1)如果邮件A′的某个属性值十分接近于邮件A的某个属性值时,那么XipXjp的比值将十分逼近1值。如果XipXjp的比值十分逼近1时,那么函数f(x)=1-XipXjp就十分接近于0的值,这时邮件A′的属性值偏离邮件A的属性值将趋向于0。根据以上的分析有此结论:如果y=f(x)的值越小,则邮件A′的属性偏离邮件A的概率就越小。
(2)如果y=f(x)的值越小,.那么g(x)=1-f(x)的值就越大,就表示邮件A′的属性偏离邮件A属性的概率就越小,那么邮件A′的属性与邮件A的相似的概率就越大。根据以上的分析有此结论:此时等待识别邮件的属性与已知邮件属性的相似度就越强
2)邮件A′偏离邮件A属性的计算
(1)如果邮件A′的某个属性值大于邮件A的某个属性值时,那么XipXjp的比值将大于1时。当XipXjp的比值越大时,函数f(x)=1-XipXjp的值大于0的程度就越明显,则这时邮件A′的属性值偏离邮件A的程度就越大。
如果y=f(x)的值越大,那么g(x)=1-f(x)的值就越小,就表示邮件A′的属性偏离邮件A的概率就越大。这时邮件A′的属性与邮件A相似的概率就越小,则等待识别邮件的属性与已知邮件属性之间的相似度就越弱。
(2)如果邮件A′的某个属性值小于邮件A的某个属性值时,那么XipXjp的比值将小于1时。当XipXjp的比值越小时,则邮件A′的属性偏离邮件A的概率就越大。
如果y=f(x)的值越大,那么g(x)=1-f(x)的值就越小,就表示邮件A′的属性偏离邮件A的概率就越大。这时邮件A′的属性与邮件A的相似的概率就越小,则等待识别邮件的属性与已知邮件属性之间的相似度就越弱。
3)根据以上分析和讨论,以下使用第5节和第6节中的MMTD算法实现邮件A′与邮件A属性相似度上的匹配。
6欧氏距离公式与相似性计算
6.1中介真值程度度量知识简介
中介逻辑将事物的属性描述成三种状态,事物属性的两个对立面和对立面的中间过渡状态。在中介真值程度度量方法中,提出了事物超态属性概念,该方法符合中介思想事物的属性并且被划分为五种状态:事物的两个对立面,对立面的中间过渡状态和事物超态对立面[12-13]。这里用符号表示为~P,P与P,超态+p与超态+p。现用数轴将以上的描述的概念表达如下[12-13]:
对数轴y=f(x)表示的含义有以下说明[12-13]:
数轴上用符号P与P分别表示事物对立面的两个属性,符号~P表示反对对立面的中间过渡状态达事物的属性。
1)如果数轴上数值点的位置逐步接近P,则事物A所具有P的属性逐步增强
2)如果该数值点的位置落在真值P和 P的取范围之间,则事物A的属性就部分地具有P的属性,同时又部分地具有P的属性。
3)如果数轴上数值点的位置逐步接近P,则事物A所具有P的属性逐步增强。
6.2距离比率函数及其定理
在中介真值程度度量的方法中,数轴上某数值点通过距离比率函数来计算事物所具有属性的强弱。
7MMTD方法在邮件相似度计算上的应用
7.1度量函数及其讨论
度量函数:y=f(x)=1-δ(1)
说明:δ表示的含义是由欧氏距离公式计算的的两封邮件某种属性之间的比值,如果两封邮件属性的相似程度较好,那么有δ≈1。
分析和讨论:
1)δ=1时
如果y=f(x)=1-δ=0,那么表示这两封邮件的属性完全相同。这时邮件属性的相似性强。
2)δ≈1时
如果y=f(x)=1-δ≈0,那么表示这封两邮件属性的相似性部分强部分弱。
3)δ>1时
如果y=f(x)=1-δ>1,y=f(x)的值越大,那么表示这两封邮件的属性值就相差很大,这时邮件属性的相似性就弱,那么这两封邮件属于不相同邮件的几率就越大。
4)δ<1时
如果y=f(x)=1-δ<1,y=f(x)的值越小,那么表示这两封邮件的属性值就相差很大,这时邮件属性的相似性就弱,那么这两封邮件属于不相同邮件的几率就越大。
7.2使用中介对邮件相似匹配的描述
1)以下用中介真值程度度量方法对邮件A′与邮件A的相似度做以下的研究:
数轴y=f(x)上有P, ~P,P三个数据区域,P代表邮件属性的相似性强,P代表邮件属性的相似性弱,~P代表邮件属性的相似性部分强部分弱。
从数轴上y=f(x)可以知道,在数轴上以~P为对称中心,左右分别为P和P。
图2中介真值程度度量一维函数的应用
y=f(x)的值落在三个值域范围(αr+εr,αl-εl),(αr-εr,αr+εr),(αl-εl,αl+εl)。~P的区域为 (αr+εr,αl-εl),P的区域为(αr-εr,αr+εr),P的区域为(αl-εl,αl+εl)。P的真值为1,P的真值为0。
2)通过距离比率函数hT(x)对y值的计算,如果有
(1)若函数hT(x)=1,y值落在区域(αl-εl,αl+εl),则此时邮件的属性相似性强。
(2)若函数hT(x)=0,y值落在区域(αr-εr,αr+εr),则此时邮件的属性相似性弱。
(3)若函数hT(x)= d(y,αr-εr)d(αl-εl,αr+εr),y值落在区域(αr+εr,αl-εl),则此时邮件属性的相似性部分强部分弱。
8邮件的过滤算法
1)使用邮件的黑/白对邮件的属性进行分类:①正常邮件,②垃圾邮件。
2)使用相似性计算算法对未知邮件与已知邮件相似度进行计算。
3)使用MMTD算法对相似性的计算结果进行判定,为邮件过滤提供有效的依据。
4)对垃圾邮件进行过滤。
9结束语
为了应对网络中的垃圾邮件用户带来的危害性,邮件管理人员必须有效的区分垃圾邮件和正常邮件,从而将垃圾邮件从邮件中过滤除去。本文提出的邮件过滤算法采用了两种智能性算法,相似性计算算法和MMTD算法,该算法在一定程度能够自动识别未知属性的邮件,能够减少在过滤邮件时的误判率,提高邮过滤技术的精确性。但已知邮件的特征选取时是否具有选择性,如何选取具有代表的邮件属性还需要进一步的研究。
最后该垃圾过滤技术与传统垃圾过滤技术改进之处在于:①改进了黑白名单的邮件过滤技术不能发现新的垃圾邮件的缺点,②改进了基于过滤规则的邮件过滤技术,由邮件属性的精确匹配变为邮件属性的模糊匹配,③根据已知的邮件特征能够发现未知的垃圾邮件。
参考文献
[1]曾小宁.一种新的垃圾邮件过滤技术的研究与实现[J].计算机应用与软件,2009, 26(7):98-101.
[2]范黎明.一种用于垃圾邮件过滤的中文关键词匹配算法[J].河南科技大学学报,2006,27(5):35-37.
[3]陈志贤.垃圾邮件过滤技术研究综述[J].计算机应用研究,2009,26(5):1612-1615.
[4]陈治平.基于自学习K近邻的垃圾邮件过滤算法[J].计算机应用,2005(25):7-9.
[5]潘文锋.基于内容的垃圾邮件过滤研究[D].中国科学院研究生院,2004.
[6]孟海东,张玉英,宋飞燕.一种基于加权欧氏距离聚类方法的研究[J].计算机应用,2006,26(12):152-153.
[7]董旭,魏振军.一种加权欧氏距离聚类方法[J].信息工程大学学报,2005, 6(1):23-25.
[8]彭洪,张东娜,吴铁峰.恶意程序检测的粗糙集方法[J].计算机应用与软件,2005,22(7):124-125.
[9]邵峰晶,于忠清,王金龙,等编著.数据挖掘原理与算法[M].科学出版社,2009.
[10]罗森林,马骏,潘丽敏编著.数据挖掘理论与技术[M].电子工业出版时,2013.
[11]MITCHELL T著.机器学习[M].机械工业出版社,2013.
[12]洪龙,肖奚安,朱梧槚.中介真值程度的度量及其应用(I)[J].计算机学报,2006,(12):2186-2193.
[13]朱梧槚,肖奚安.数学基础与模糊数学基础[J].自然杂志,1980,(7):723-726.