基于贝叶斯算法的垃圾邮件过滤的方法研究

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:bencui
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着互联网行业的迅速发展,电子邮件营销得到快速发展,但垃圾邮件的日趋严重浪费着网络资源,因此过滤垃圾邮件刻不容缓。该文通过介绍朴素贝叶斯算法的原理及它在垃圾邮件过滤这方面的应用,基于朴素贝叶斯算法的分类模型设计了一个文本广告邮件过滤系统,能够有效实现垃圾邮件过滤。该系统的特点是在中文分词部分添加了当前的网络热词,从而进一步提高了系统的实用性。本系统通过在包含合法邮件与垃圾邮件的数据库上进行实验测试,针对垃圾邮件的分类获得了较高的正确率。
  关键词:垃圾邮件;贝叶斯算法;过滤器
  中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2017)13-0171-03
  伴随着互联网时代的到来,利用科学技术传递消息的方式多种多样,电话、QQ、电子邮件、微信、微博等都成了人们日常生活中不可缺少的交流平台。与之诞生的还有相应的电子营销手段,如今人们发送电子邮件取代传统邮件,成为一些电商进行宣传和推广产品的重要手段,但与此同时来势汹汹的垃圾邮件使得整个网络不堪重负。面对垃圾邮件的猖獗,技术人员开发各种阻止垃圾邮件的方法。例如:黑名单技术,它将经常发送垃圾的IP地址范围、域名等属性都列入一个黑名单,凡是从黑名单所包含的IP地址发送来的邮件都被判定为垃圾邮件,但这种方法也会误屏蔽IP地址,导致正常的通信无法进行。另一种技术就是过滤技术,它根据某种算法或规则,来判断垃圾邮件,最先出现的是基于模式匹配的算法规则,它通过关键词检索来判断垃圾邮件,然后是支持正则表达式的模糊匹配。随着信息技术的发展,基于分类算法的过滤成为现在最流行的技术,其中:基于贝叶斯算法的分类能够获得良好的垃圾邮件过滤效果受到广泛研究者的关注。这种方法用先验概率对邮件进行判断,并且可以在分类算法中添加自学功能,通过不断地校正先验概率来提高垃圾邮件过滤的准确性。
  1贝叶斯定理
  条件概率P(TIC)是指事件C已经发生的前提下,事件T发生的概率。基本求解公式如下:
  条件概率P(CIT)J就是事件T发生条件下事件C的概率P,贝叶斯定理就是利用式1计算P(CIT),然而在实际应用中经常会遇到这种情况:容易求解P(TIC)而P(CIT)求解困难,但是P(CIT)可根据P(TIC)求出。下面给出贝叶斯公式:
  贝叶斯定理即当已知事件C的概率P(Ci)和事件C已发生条件下事件T的概率P(T|Ci),则可运用贝叶斯定理计算出在事件T发生条件下事件Ci的概率P(Ci|T)。将贝叶斯定理应用于分类问题时,用集合c={c1,c2…|表示类别,把事物的众多属性看做一个向量,用向量T=(t1,t2,…,tn)来代表这个事物。所谓将事物分类,即将T归类为C中的一个类别。T被称为属性集。一般T与C的关系是不确定的,你只能说在某种程度说T属于类c1的可能性是多大,这时可以把T和C看做是随机变量,P(CIT)称为C的后驗概率,与之相对的,P(C)称为C的先验概率。
  在训练阶段,根据从训练数据里收集的信息,我们对T和c的每一种组合计算后验概率P(CIT)。在分类的时候,对于新来的一个实例t,我们就要从在之前训练得到的一堆的后验概率里找到所有的P(Clt),计算C值,在这些C值中找到最大的那个C,它就是t被判定的可能的所属分类。根据贝叶斯公式,后验概率为:
  (3)
  由于在结果比较不同的C值的后验概率的时候,分母P(t)总是常数,因此可以被忽略不计。而先验概率P(C)则可以通过计算训练集中属于每—个类的训练样本所占的比例容易地被估计。
  2朴素贝叶斯分类器
  朴素贝叶斯分类器在估计类条件概率时,假设各属性之间是条件独立的。在进行文本分类时,对于某一个文本可以用一个文本特征向量来表示:t=(t1,t2,…,tn)。一般在文本中,各个单词之间根据语义理解是具有一定的上下文联系的,并不是相互独立的。为了采用朴素贝叶斯对文本进行分类,假定单词之间没有联系。将输入t分到后验概率最大的类C。公式如下:
  (4)
  当训练集合比较小时,概率计算P(tj|ck)的结果不会很合理,因为概率值需要经过大量的统计规律而得。本文采用另外一种近似方法来计算,这种方法被称作拉普拉斯变换。故后验概率计算公式如下:
  (5)
  3系统的设计与实现
  3.1系统流程介绍
  为了验证本文中提出的方法,开发了一个基于贝叶斯分类器的邮件过滤系统。由于本文研究对象主要针对网络营销类垃圾邮件,故所有垃圾邮件都指的是营销类垃圾邮件,合法邮件是指除营销类垃圾邮件以外的所有邮件。邮件过滤系统主要包含:邮件样本收集、邮件预处理、中文分词、邮件过滤四个部分,系统流程如下图所示:
  在邮件过滤系统中,中文分词的好坏影响系统有效性。中文分词是中文信息处理的前提,词库是中文自动分词的基础。中文分词是将一句话分解成一个一个的单词,这些单词可以作为特征项来对文本进行区分。只有建立适当的字典,系统才能够依赖于特征项对文本进行合理理解和过滤。常用的分词算法分为三大类:基于字符串匹配、基于理解和基于统计的分词方法。
  在基于理解的方法中,分词系统是由词库、知识库和推理机三个部分组成。推理机制利用词库和知识库提供的大量数据和知识,来模拟语言学家的逻辑思维过程,以此实现自动分词。基于字符串匹配的分词方法(机械匹配算法)主要利用字符串匹配的原理,将文档中的字符串和词典中的词条进行逐一的匹配,如果在词典中匹配到一个字符串,则可以切分。基于统计的分词法的原理是根据字符串在语料库中出现的频率来判断它是否构成单词,字与字相邻共现的频率能够较好地反映它们成为词的可信度。本文中采用的就是基于统计的分词方法。
  3.2特征选择   特征选择算法可以降低文本特征向量的维度、去除冗余特征、保持分化特性。在垃圾邮件过滤中,足够的训练样本和高覆盖的单词有利于垃圾邮件的有效分类。如果特征选择做得不好,特征库的维度就变大,向量维数过高会造成文本向量计算困难问题。高维文本向量不仅存在冗余信息,导致误判,而且影响分类器性能。因此需要经过特征选择的步骤。文档频度是指一个特征项在语料库中出现的文档数量的统计,可以通过设定一个特定阈值来实现,如果某一个特征项的文档频度小于给定阈值则被过滤掉,这样不仅可以从训练集特征词典中过滤掉一些相对意义不大的特征项,而且可以降低特征项空间维度。通过实验数据表明,中文语料库的最佳特征集合大小范围为1200-1800。
  3.3添加热词
  本文中使用的词库来源于从网络上下载的SDIC.txt文件,包括词条43970条,基础词汇量丰富。然而,由于互联网的快速发展,近期网络热词传播速度极快,传播范围广,且被网友广泛接受并使用,将热词添加入词库对于提高中文分词的准确度有帮助。因此,本系统在中文分词模块中,对原有基础词库进行了扩充,如加了当前一些广为人知的热词。部分新增词条比如“壁咚、网红、Duang、屌絲、小清新、元芳、重口味、吐槽、你妹、正能量、卖萌、点赞、HOLD住、学生党、考研狗、单身狗、且行且珍惜、画面太美我不敢看、我爸是李刚、么么哒、打老虎、上天台、也是醉了、也是蛮拼的、神马、造、臣妾做不到”等等。
  3.4实验结果与分析
  假定被判定为垃圾邮件的营销类邮件中垃圾邮件个数为A、合法邮件个数为B;被判定为合法邮件的营销类邮件中垃圾邮件个数为C、合法邮件个数为D。总营销邮件的个数N为:N=A B C D。
  其中:召回率(Recall):R=(A/(A C))*100%;即垃圾邮件检出率。该指标反映了过滤系统发现垃圾邮件的能力,召回率越高,“漏网”的垃圾邮件就越少。
  正确率(Precision):P=(A/(A B)*100%;即垃圾邮件检对率。该指标反映了过滤系统“找对”垃圾邮件的能力,正确率越大,将合法邮件误判为垃圾邮件的可能性越小。
  精确率(Accuracy):A=((A D)/N)*100%;即对所有营销邮件(包括垃圾邮件和合法邮件)的判对率。
  错误率(Error rate):E=1-A;即对所有营销邮件(包括垃圾邮件和合法邮件)的判错率。
  F值:召回率和正确率的调和平均值,它将召回率和正确率综合成一个指标。
  除此之外,还可以采用虚报率(Fallout)、漏报率(Miss rate)等指标。
  本实验的训练集和测试集采用了相同数量的合法邮件和垃圾邮件,当被测邮件为传统的垃圾邮件时,测试结果为94.2%的正确率,这证明了朴素贝叶斯分类器的确准确又快速。尽管相比于传统的垃圾邮件过滤无法解决网络热词,本系统能够较好地处理包含设定网络热词的邮件,但是当被检测的邮件变成时下热门的修改账号密码的门户网站发来的回执文档,或者成功注册成为某网站会员的提醒邮件、网上购物订单号的告知邮件等邮件时(如图2所示),一些应当被认为是合法邮件的邮件被分类器判定为非法邮件。还有一些利用哲学故事传播信息或者假借某平台传递消息的垃圾邮件等,由于与合法邮件关键词很相似所以被误判为合法邮件(如图3所示)。
  需要说明的是,在实验中训练集与测试集中邮件的数量比例设置为1:1。若训练集与测试集的数量比例过高,会导致训练数据过拟合,无法正确对测试邮件进行分类;反之,若训练集与测试集的数量比例偏小,分类器学习的程度不能达到预期效果。这时由于采集的特征值数量过小的话,根据少量特征值去判断大容量的邮件,就会导致学习获得的分类器失效,出现机器的“主观臆断”现象。
  4结束语
  本文介绍了基于贝叶斯算法过滤垃圾邮件的主要方式,设计了一个简单的基于朴素贝叶斯方法的纯文本垃圾邮件过滤系统,并通过实验验证了朴素贝叶斯方法在垃圾邮件分类上有着快速且有效的作用。除此之外,本系统存在的不足之处有针对的对象是纯文本邮件,然而随着时代发展,邮件中多带有链接、附件、图片等非文本内容,为了提升分类器分类性能,后续应该将邮件中的非文本内容解析出来并作为特征值存在向量空间模型中。这样,对于文本内容为空但是带有附件的邮件,对于带有特大型附件并且文本内容特别长的这些具有明显特征的邮件,分类器也能自动将其正确分类。
其他文献
江苏省宜兴市东域小学学生 指導教师:吴 瑛
摘要:传统课堂教学模式已经远远不能满足当前教学的需要,信息技术与教育的融合已成为教育发展的必然趋势。尝试在小学语文的教学过程中,利用计算机技术将课文中描写的情景进行生动的情境创设。教学实践结果表明,在教学中采用情境创设,能够增强学生的情感体验,激发学生的学习兴趣,提高学生的学习效率。  关键词:情景创设;小学语文;教学  中图分类号:G642 文献标识码:A 文章编号:1009-3044(
摘要:2020年春在线教学全面开启,高职院校里担任计算机应用基础课程教学的教师利用智慧职教云开展了网络教学。通过对职教云网络教学环境的摸索学习,在职教云网络空间进行课程设计,作业设计,选择教学素材,搭建起网络课程,构建起课堂,直到完成课堂教学,阐述了一名教师开展网络教学的心路历程,提出在职教云环境进行课堂建设宜简要明了,网络教学资源的共享可以拓宽师生的视野,有利于普及优质教学。  关键词:职教云
摘 要:从研究的视角构建抽象对象,让学生从知识自然构建的角度体验严密逻辑推理及抽象思维的探究过程,进行高层次的思维训练,这对提高学生的思维品质是非常有利的。然而,对象的抽象性也给学生带来了不小的挑战,问题的精心设计、老师的引导、生成的巧妙处理等是课堂成功的关键。  关键词:研究的视角;抽象对象;思维品质  中图分类号:G633.7 文献标识码:A 文章编号:1003-6148(2018)5-001
摘要:互联网 时代高职课程教学发生了重要的变化,利用在线教学服务平台进行混合学习已成为教学改革的重要内容。本文以高职《信息技术基础》课程为例,设计基于在线教学服务平台的课程混合学习模式和实施流程图,并将该模式应用于高职《信息技术基础》课程的教学实践。实施的结果显示,学习者的参与程度、教师教育技术的能力,教学活动的设计和教学资源的关联程度等因素对混合学习的有效实施有重要的影响作用。  关键词:在线平
摘要:在社会的进步和发展中,商务英语的重要性逐渐凸显出来,高校纷纷开设商务英语专业,将关注重点放在学生商务英语实践能力的强化上成为商务英语专业建设要妥善解决的问题。从“互联网 ”的大背景下出发,提出线上线下的混合教学模式,重在探索商务英语实践教学的新方案,从线上线下混合教学的本质出发,明确该方法融入商务英语实践教学的必要性,提出可行方案和策略,为商务英语的实践教学提供新思路。  关键词:互联网 ;
摘要:平板电脑、智能手机等移动终端的普及,为全新的学习模式——移动学习提供了必要的技术支持。移动学习资源作为移动学习发生的重要保障,同时也决定着移动学习的质量。由于移动学习的开发技术和发生的环境跟网络学习有较大不同,移动学习的发生也有着诸多的独特性。该研究针对移动学习资源建设过程中存在的问题,开展移动学习环境开展移动学习资源建设模式研究,构建出移动学习资源建设的模式及流程,旨在为后续研究提供一定的
【编者按】  南京市浦口区铁路小学是一所办学特色鲜明、历史悠久的书法特色学校。学校先后获得南京市浦口区小学课外活动特色学校、南京市浦口区小学素质教育(书画)特色学校、南京市普及性艺术类特色学校、南京市语言文字规范化示范学校、江苏省中小学书法特色学校、全国书法(写字)特色学校和书法教育示范学校等荣誉。学校在校园书法环境建设、师资队伍建设、书法课程建设、书法课题研究、开展课内外活动等方面成效彰显。“春
摘要:高校网站智能系统是基于第三代网站智能系统的研究,用户通过网站能自己定义网站的框架内容,实现高校不同部门网站前台界面之间的个性化需求。本文给出了我校网站智能系统(博达高校网站平台)的功能和框架设计,并实现了学校二级网站的建设。网站智能系统在网站安全性能方面做了较高的处理,给学校、医院、大中小企业和个体化用户提供了安全、可靠、高效的建站方案。  关键词:高校网站;智能系统;个性化;安全;建站方案
摘要:随着计算机技术的发展,传统文本翻译经历了从人工翻译到单机计算机辅助翻译,再到云翻译的巨变。而视频译制则跨过了单机计算机辅助这一发展节点,直接进入到了云视频译制,出现了如人人译世界等云译制平台。该文将对比以Aegisub为代表的单机视频译制软件和以人人译世界为代表的云视频译制平台,分析两款软件在翻译项目管理、视频处理、时间轴制作及字幕翻译方面的不同,以探究云视频译制平台诞生的必然性并为以后的视