维普资讯 http://www.cqvip.com 174 2007,43(23) Computer Engineering and Applw ̄ions计算机工程与应用 基于贝叶斯的垃圾邮件过滤算法的研究 李 雯,刘培玉 LI Wen,LIU Pei-yu 山东师范大学信息科学与工程学院,济南250014 School of Information Science and Engineering,Shandong Normal University,Ji’nan 250014,China E—mail:1w 656@hotmail.COB LI Wen.LIU Pei—yu.Research on anti—spam e-mail filtering algorithm based on Bayesian.Computer Engineering and Applications.2007,43(23):174-176. Abstract:Nowadays,the study on content—based spam filtering is one of the hot topics in the Internet security research area all over the world.And Bayesian classiifcation method has expressed high accuracy.An improved algorithm based on Na'fve Bayesian and Boosting method is proposed in this paper.The experiment results show that the algorithm has better performance. Key words:spam;e—mail filtering;Bayesian algorithm 摘 要:基于内容的垃圾邮件过滤问题是lnternet安全技术研究的一个重点问题.而基于贝叶斯的分类方法在垃圾邮件处理上表 现出了很高的准确度.因此受到了广泛的关注。在朴素贝叶斯算法的基础上,提出了一种基于最小风险贝叶斯方法rg Boosting算 法相结合的邮件过滤改进算法,提高了分类的精确度。实验证明,算法在邮件过滤中有更好的表现。 关键词:垃圾邮件:邮件过滤:贝叶斯算法 文章编号:1002—8331(2007)23—0174—03 文献标识码:A 中图分类号:TP393 l 引言 随着lnternet的发展和应用.越来越多的商务、日常活动通 合.可以认为文本是这些词汇按照一定的方式“产生”的。根据 产生方式,朴素贝叶斯分类算法有两种概率估计方法:多变量 过Internet才能进行,网络跟人们的生活越来越紧密。然而网络 是双面的.人们在享受网络所带来的便利的同时,不可避免地 贝努里事件模型[51(MBM,Multi—variate Bernoulli event Mode1) 和多项式事件模型(MM,Muhinomial event Mode1)。这两种模 接触到大量的不良信息,如色情、暴力、反动、邪教、赌博、病毒 等.部分成人尤其是自制力不强的青少年学生沉迷在网上游 戏、娱乐、色情世界里而不能自拔。因而如何管理网络用户尤其 是青少年学生对lnternet访问,而又不影响用户对网络的正常 访问,越来越引起人们的关注。 型在公式中的体现是P(d ̄lcj)估计的方法不同。 2.1 多变量贝努里事件模型 在这种模型中,文本向量是布尔权重.也就是说.如果特征 词在文本中出现,则权重为1,否则,权重为0,不考虑特征词的 出现顺序,忽略特征词在文本中的出现次数。设特征数量为n, 将文本看作一个事件.这个事件是通过n重贝努里实验产生 的.即某个特征出现或者不出现。这也是贝叶斯分类算法的一 个传统模型。 设 表示特征w 在文本 中的出现情况,B ̄=O/1表示特 征出现/不出现.则有: 1P_| 为了过滤网络信息,使网络用户尤其是青少年学生远离非 友善信息的侵扰,使得网络环境更加纯净、美好,网络信息过滤 技术已经成为当前研究的热点J 。而电子邮件(e—mail)以其方 便、快捷、低成本的独特魅力成为人们日常生活中不可缺少的 通信手段之一。但电子邮件给人们带来极大便利的同时,也日 益显示出其负面影响,那就是我们每天收到的邮件中有很大一 部分是那种“不请自来”的,它们或者是推销广告,或者是一些 有害的不良信息,甚至还有病毒。这些垃圾邮件占用网络带宽, 浪费网络资源,浪费用户宝贵时问及上网费用,其中有些垃圾 邮件传播各样有害信息甚至病毒,直接对网络安全形成威胁。 尸(以 )=1 1( 尸( Icj)+(1- )(1-P(w Icj))) ,:l (1) P(w lcJ)表示在属于类cj的情况下批出现的概率。从上面公式 可以看出,在多变量贝努里事件模型中,文本是所有特征的类 条件概率之积,若特征在文本中出现,乘的项是P(w Icj),若不 出现,乘的项是(1一 )(1一P(w Icj))。 2朴素贝叶斯模型中的两种概率估计方法 在贝叶斯假设的基础上.文本可以看作是若干词汇的集 P(w Icj)的估计也采用文档频次: 基金项目:山东省自然科学基金(the Natural Science Foundation of Shandong Province of China under Grant No.Y2006G20):山东省科技公关计 划(the Key Technologies R&D Program of Shandong Province of China under Grant No.053120126)。 作者简介:李雯(1982一),女,硕士研究生,主要研究领域为网络信息安全,Web数据挖掘;刘培玉(1960一),男,教授,博士生导师,主要研究领域为 网络安全,数据库系统。 维普资讯 http://www.cqvip.com 李 雯,刘培玉:基于贝叶斯的垃圾邮件过滤算法的研究 175 P(Wt Cj)= 对上面公式进行简单的平滑处理: 塑 (2) 通过实验比较两种模型发现贝努里事件模型在计算上较 简便,而精确率也略高于多项式事件模型。因此本文中使用了 贝努里分布模型。 (3) 由此可以看出.多变量贝努里事件模型的特点在于: (1)计算P(wlc )和P( 的出现次数; 3基于最小风险的贝叶斯分类模型 贝叶斯分类模型中有两种决策规则 ,71分别是:基于最小错 误率贝叶斯决策和基于最小风险贝叶斯决策。其中基于最小错 误率的贝叶斯决策是指使错误率为最小的分类规则,但是实际 上有时需要考虑一个比错误率更为广泛的概念——风险,而风 的时候都不考虑特征在文本中 (2)对那些没有在文本中出现的特征,计算时乘以(1一 ) (1-P(w Icj))项。 险又是和损失紧密相连的。对邮件的分类不仅要考虑到尽可能 应用于垃圾邮件过滤,只考虑两个类别:垃圾邮件和非垃 圾邮件,设c=1表示垃圾邮件类,c=O表示非垃圾邮件类,目标 是计算: P(c=114)=坠 (4) 根据式(1),有: P(dxlc=1)=兀( ( Ic:1)+(1一B )(1一P(w Ic:1)))(5) P(d ̄lc=0):兀( (埘 Ic=0)+(1一 )(1一P( Ic:0))) (6) P( )= P(cj)P(d.1cj)= … P(c=1)P( fc=1)+(1-P(c=1))(1-P( Ic=0)) 根据式(2)和式(3),可以从训练集中估计P(c=1)、P(w Ic= 1)和P(w Ic=O);分类时,可以根据式(4)、式(5)、式(6)和式(7) 计算待分类邮件属于垃圾邮件类别的概率。 2.2多项式事件模型 这种模型中,与前面的多变量贝努里事件模型不同.要考 虑特征词的出现次数。在这里,将每个特征词的出现看作“事 件”,文本是这些事件的集合,假设这些事件之间是相互独立 的。设文本 的长度(即文本中包含的词数)为IdJ, 表示特 征t在文本 中的出现次数,n为特征数量,则P(d ̄lcj)符合多 项式分布(muhinomiaI distribution): 附 (8) 在训练集上估计时,采用词频: P(w,lcj = 上面公式进行平滑处理变为: P(w ̄lcj : 应用于垃圾邮件过滤时,设c=l表示垃圾邮件类.c=O表 示非垃圾邮件类,根据式(4)和式(7),有: P(c=1 )= !三 三1) : P(c=1)P(dxIc=1)+(1-P(c=1))(1-P(dxIc=O)) 1 1+ 二 !三1) !!三 2 P(c=1) P(dxIc=1) (12) 做出正确判断.而且还要考虑到做出错误判断时会带来什么后 果。如果把正确邮件判为垃圾邮件放到垃圾箱中可能会使用户 的重要信件丢失带来一定的损失;而如果本来就是垃圾邮件却 判为正常。就会给用户带来许多麻烦。显然这两种不同的错误 判断所造成损失的严重程度是有显著差别的,前者的损失比后 者更严重。最小风险贝叶斯决策正是考虑各种错误造成损失不 同而提出的一种决策规则。 3.1 基于最小风险的贝叶斯规则 最小风险贝叶斯规则是:已知先验概率P(G)及类条件概 率密度P( IG),损失函数为A(Ol ,Cj)(i=I,2,…,a),决策空问 由a个决策 组成,A表示当真实状态为G而所采取的策略 是 时所带来的损失,这样可以得到一般的决策表如表1所示 表1一般决策表 根据贝叶斯公式。后验概率为: P(cild.)= 其中P( )= P(c )P(以lcJ) 由于引入了“损失”的概念,在考虑错误判断所造成的损失 时,就不能只根据后验概率的大小来做决策.而必须考虑所采 取的判断是否使损失最小。对于给定的 ,如果采取决策 ,从 决策表可见,对应于决策Oti,可以在 个A(Oti,cj)√=1,2,…, 值中任取一个,其相应概率为P(c Idx)。因此在采取决策Ol 情况 下的条件期望损失R(Ol I)为: R(Ol I):E【A(Ol ,c』)】=2 A(Ol ,c )P(cjld ̄),i=1,2,…,口(13) j=l 把采取决策 的条件期望损失R( )称为条件风险。对 得到的a个条件风险值R( Idx)(i=l,2,…,a)进行比较,找出 使条件风险最小的决策o/ 即o/ : R( I以)=min R( l ) 则 就是最小风险贝叶斯决策。 在考虑错判带来的损失时,希望损失最小。如果在采取每 一个决策或行动时都使其条件风险最小,则对所有的 作出 决策时。其期望风险也必然最小。这样的决策就是最小风险贝 叶斯决策。 维普资讯 http://www.cqvip.com 176 2007,43(23) Computer Engineering and Applications计算机工程与应用 提升方法tSl(boosting)总的思想是学习一系列决策行动.在 3.2朴素贝叶斯同基于最小风险的贝叶斯分类结果 比较 从中国反垃圾邮件联盟(http://www.anti—span.org.cn/)中提 供的中文邮件语料库中随机选取了2 000封邮件作为训练样 本,对400封作为测试集的邮件(其中垃圾邮件为300封,合法 邮件为100封)进行分类。其中基于朴素贝叶斯邮件过滤算法 的实验结果(经过多次实验得出的结果取其平均值)见表2。 表2基于朴素贝叶斯邮件过滤算法的实验结果 实嘲u 由表2知对400封邮件进行分类测试,其中有10.75篇合 法邮件被判为垃圾邮件.而有12.25篇垃圾邮件判为合法邮 件。系统精确率为94.25%,合法邮件的召回率为89.25%。 采用基于最小风险贝叶斯算法进行邮件过滤.根据表3提 供损失因子值的不同产生不同的结果。每次测试过程中改变损 失因子,对邮件进行分类得到结果如表4所示。 表3决策表 决策—堕 cI c2 .0 0 0.3 , 0.6 0.0 表4根据不同损失因子值得出的结果 合法邮件 92.50 7.50 100 0.6垃圾邮件 l3.75 286 25 300 总数 105.25 293 75 400 由表4可知当A的值为0.3时,有9.25篇合法邮件被判为 垃圾邮件.而有l3篇垃圾邮件判为合法邮件。系统精确率为 94.31%,合法邮件召回率为90.25%;当A的值为0.6时,有7.5 篇合法邮件被判为垃圾邮件,而有13.75篇垃圾邮件判为合法 邮件。精确率为94.68%,召回率为92.5%。 由此可见与基于朴素贝叶斯的邮件过滤算法相比基于最 小风险的贝叶斯邮件过滤算法在精确率和合法邮件召回率的 性能方面有一定提高,即当引入损失因子后精确率增加。合法 邮件被系统误判为垃圾邮件的可能性减少。但同时,垃圾邮件 的召回率有所下降,即垃圾邮件被系统误判为合法邮件的可能 性增加 4基于最小风险贝叶斯模型的提升 由于在邮件的过滤过程中朴素贝叶斯算法没有考虑合法 邮件被错判为垃圾邮件的情况。而采用最小风险贝叶斯分类使 得系统的召回率有所下降.即垃圾邮件被系统误判为合法邮件 的可能性增加。因此,在这里本文引入了提升方法(boosting)。 即在朴素贝叶斯算法的基础上,提出了基于最小风险贝叶斯方 法同Boosting算法相结合的邮件过滤算法。在尽量不使合法邮 件错判为垃圾邮件的同时尽可能地提高分类的精确度。 这个序列中每个决策对它前一个决策导致的错误判断例子给 予更大的重视。尤其是在学习完决策行动 之后,增加了由 导致判断错误的训练例子的权重值,并且通过重新对训练例子 计算权值,再学习下一个决策 。这个过程重复 次。最终的 分类器从这一系列的决策中综合得出 在这个过程中.每个训练例子被赋予一个相应的权值,如 果一个训练例子被分类器错误分类,那么就相应增加该例子的 权重,使得下一次学习中,分类器对该例代表的情况更加重视 5三种算法性能比较 垃圾邮件过滤中,除了公共的语料.还需要定义一些指标 来评价垃圾邮件过滤器的效果。这些指标一般都是从文本分类 和信息检索领域借鉴过来的。 设测试集合中共有Ⅳ封邮件.为方便叙述,先定义几个变 量,见表5,其中N=A+B+C+D。 表5垃圾邮件系统判定情况分布 封 正确答案是Spam 正确答案是非Spam 定义如下几个评价指标: (1)召回率(Recal1):Recall= IA_ 100%,即垃圾邮件检出 + 率。这个指标反映了过滤系统发现垃圾邮件的能力,召回率越 高,“漏网”的垃圾邮件就越少。 (2)精确率(Accuracy):Acc racy=A+ D¥100%,,即对所有 邮件的判对率。 仍采用表2中的400封邮件作为测试集,总结三种过滤算 法的实验结果比较如表6所示: 表6三种算法的比较 算法 项目 朴素贝叶斯■ 基于最小风险贝叶斯 提升的最小风险贝叶斯 A=0. —3— A=0. 6— A=0 3— A=0 . 6 从表6可以看出,基于最小风险的朴素贝叶斯提升算法在 邮件过滤中,无论是在精确率还是在召回率上都优于其它两种 算法。实验结果的数据对比充分说明了本文的方法能提高垃圾 邮件过滤的整体性能。 6结束语 本文基于最小风险的贝叶斯方法提出一种新的邮件过滤 算法.以减少合法邮件的误判率。实验结果表明,该算法在邮件 过滤性能方面具有较好的动态调整能力.取得了较为满意的结 果,从而提高了邮件过滤的质量。(收稿日期:2007年5月) 参考文献: [1】Robe ̄son S E.The probability ranking principle in IR,readings in information retrieval[M].is.1.】:Morgan Kaufmann,1997:281-286. 【21 SaltovLAutomatie text processing:the transformation,analysis and re- trieval of information by compute ̄1].[sj.]:Addison-Wesley Inc,1989. (下转183页) 维普资讯 http://www.cqvip.com 崔朝阳,王建纲:广播电视语音识别现状与应用策略 183 内外进行相关研究的单位大多拥有相对独立的技术和系统 目 步不断提高我国广播电视管理的水平。相信在不久的将来,随 前该技术已经基本实现产品化,如国内某系统在20 h电视节 着自动音频处理技术的不断深入发展和应用,我国广播电视管 目,l00个广告情况下,搜索准确度可以达到99%以上。 理将进入一个全新的发展阶段。(收稿日期:2006年9月) 固定音频检出系统由两部分组成,即疑似位置预估模块和 快速匹配模块。疑似位置预估模块通过计算音频检索窗内信号 参考文献: 与固定模板的相关性搜索疑似点,在此基础上,使用快速匹配 [1]王效杰.广播电视数字化和产业化.信息资源开发利用高层论坛, 技术对疑似点进行精确匹配。 2O04. 固定音频检出技术主要应用于特定节目、音乐、广告等的 [2]Garofolo J,Auzanne G,Voorhees E.The TREC spoken document 检索与定位,由于这项技术已经成熟,国内外都有产品系统 retireval track:a success story[C]//Proceedings of RIAO-2000,Apr 推出 2000. [3]Poindexter J,Poppa R,Sharkey B.Total Information Awarenes 6广播电视语音识别应用策略 (TIA)[C]//Proc of IEEE Aerospace Conference,2003. [4]Ostendorf M,Shriberg E,Stolckel A.Human language technology: 当前各项音频处理技术在一般应用条件下已经基本达到 opportunities and challenges[C]//Proc of IEEE ICASSP,2005. 实用要求,这就为广播电视的内容管理提供了有力的技术支持 [5]高升,徐波,黄泰翼.基于决策树的汉语三音子模型【J].声学学报, 和保障。相比较而言,而我国在这方面也已经进入了实质性的 2000,25(6). 部署阶段。如何在技术与应用之间找到一个最佳的切入点.以 [6]Pallett D S.A look at NIST’s benchmark ASR tests:past,present, 收到相得益彰的效果,应该采取以下的发展策略: and future.National Institute of Standard Technology,2003. (1)正确认识自动音频处理技术在广播电视内容管理工作 【7]Kim D Y,Evermann G,Hain T,et a1.Recent advances in broadcast 中所处的位置,扬长避短以最大程度地发挥其作用。由于实际 news transcription[C]//Proc Automatic Speech Recognition and Un- 广播电视节目种类多样、环境复杂,目前的自动音频处理技术 derstanding Workshop(ASRU),St Thomas,U S Virgln Islands,De- 还无法在所有种类的节目中都取得令人满意的效果,以连续语 cember 2o03:105—110. 音识别为例,其对新闻节目的识别率要远高于对话访谈类节 [8]Sohau H,Kingsbury B,Mangu L,et a1.The IBM 2004 conversation- 目。这就决定了在现阶段,自动处理技术还无法完全取代人工. al telephone system for rich transcription[C]//Proc IEEE ICASSP’05, USA,2005. 自动技术应作为系统的一个环节 [9]Reynolds D A,Tones—Carrasquillo P.Approaches and applications (2)突出系统概念,体现信息服务。自动技术与现有系统的 of audio diarization[C]//Proc of IEEE ICASSP 05,USA,2005. 对接应采取提供服务的方式,而不是修改现有系统内嵌模块。 [10]Wilpon J G,Rabiner L R,Lee C H,et a1.Automatic recognition 首先,内嵌模块的方式需要改变现有系统框架.从而增加系统 of keywords in unconstrained speech using Hidden Markov Mod- 改造工作量;其二,广播电视数据量大且有实时处理需求,适合 els[J].IEEE Trans on ASSP,1990,38(11):1870—1878. 采用多处理器并行计算技术。因此.自动音频处理技术与现有 [11]Zhang Hua—yun,Xu Bo,Huang Tai—yi.Improving performance of 系统的对接在有条件的情况下,最好采用系统级解决方案以信 telephone based mandarin keyword spotting system[C]//Proc ISC- 息服务的形式提供。 SLP,2002. (3)不断加强基础资源建设,促进自动处理技术进步。语音 [12]Zissman M A.Comparison for four approaches to automatic lan- 语言知识库在自动音频处理技术的发展过程中起着举足轻重 ugage identification of telephone speech[J].IEEE Transactions on 的作用,这一点在NIST的评测工作中体现得非常明显。因此加 Speech and Audio Proc,1996,4. 强系统在实际使用过程中对真实数据的收集、整理.进一步用 [13]Tones—Carrsaquillo P A,Reynolds D A,Deller J R.Language i- 于系统自学习、自校正,从而实现在良性循环中不断提高系统 dentification using Gaussian mixture model tokenization[C]//ICAS— SP,Orlando,F1,USA,2002. 性能的目标。 [14]Liang Wei,Zhang Shu—WU,Xu B0.A histogram algorithm for fast 自动音频处理技术应用于广播电视内容管理工作在我国 audio retrieval[C]//6th Int Symposium on Music Ifnormation Re- 刚刚开始,需要在应用中不断促进技术进步,继而通过技术进 trieval(ISMIR),Sep 2005. (上接176页) [5]潘文锋.基于内容的垃圾邮件过滤研究[D].北京:中国科学院计算技 [3]Witten I H,Frank E.Data mining:practical machine learning tools 术研究所.20o4. and techniques with Java implementations[M].is.1.]:Morgan Kauf- 『6]边肇祺,张学工.模式识别【M].北京:清华大学出版社,1999. mann,2000. [7]Sahami M,Dumais S,Heckerman D,et a1.A Bayesian approach to 【4]Joachims T.Optimizing search engines using click through data[C]// ifltering Junk e—mail[C]//Learning for Text Categorization:Papers Proceedings of the ACM Conference on Knowledge Discovery and from AAAI Workshop.Madison,Wisconsin.1998:55—62. Data Mining(KDD),ACM,2002. [8]史忠植.高级人工智能[M].jE京:科学出版社,1997.