1、数据挖掘数据挖掘滕少华滕少华 广东工业大学广东工业大学协同计算与知识工程协同计算与知识工程9.4 基于内容的垃圾邮件识别n9.4.1 垃圾邮件识别方法简介n9.4.2 基于内容的垃圾邮件识别方法工作原理n9.4.3 一种基于聚类的垃圾邮件识别方法2023-2-59.4.1 垃圾邮件识别方法简介n主流的垃圾邮件识别技术可分为邮件服务器端防范技术和邮件客户端防范技术两大类n邮件服务器端防范技术:n基于IP地址、域名和“(黑)白名单”过滤技术;n基于信头、信体、附件的内容过滤技术;基于信头、信体、附件的内容过滤技术;n基于连接频率的动态规则技术;n邮件客户端防范技术:n充分利用黑名单,白名单功能;n
2、慎用“自动回复”功能;尽量避免泄露邮件地址;2023-2-5基于内容的垃圾邮件识别技术n基于内容的垃圾邮件识别技术是邮件服务器端防范技术的主流技术,以上提到的基于信头、信体、附件的内容过滤技术是典型的基于内容的方法n这类型方法的典型代表有Bayes方法、kNN、支持向量机SVM、Rocchio、神经网络等2023-2-59.4.2 基于内容的垃圾邮件识别方法工作原理n一封标准格式的电子邮件包含有邮件头部(mail head)和邮件体(mail body)两部分n邮件头部包括发件人,收件人,抄送人,发信日期,主题,附件等信息n邮件体包括邮件正文信息n实例图如下:2023-2-52023-2-5垃
3、圾邮件过滤的基础n在不考虑附件、图片化文字等问题,只简单考虑邮件中包含的文本内容情况下,这类垃圾邮件大概占总垃圾邮件数量的80%n垃圾邮件过滤的基础是识别出所接收到邮件是正常邮件还是垃圾邮件,而这个识别过程可以看作是一种二类的文本分文本分类类问题,即正常邮件和垃圾邮件两个类别文本的识别2023-2-5识别方法的主要步骤n基于内容的垃圾邮件识别方法的主要步骤:将解码并格式化后的电子邮件视为文本;分词并使用相应的文本表示方法来表示文本,较多的方法采用向量空间模型 VSM;基于已有的垃圾邮件和正常邮件语料库,采用文本分类算法建立垃圾邮件识别模型;基于识别模型判别新收到的邮件是否为垃圾邮件2023-2
4、-59.4.3 一种基于聚类的垃圾邮件识别方法n介绍的方法首先采用聚类算法学习训练语料,并建立识别模型,然后再结合kNN分类方法思想对测试语料决策分类,具有很好的识别准确度以及效率n并可以通过聚类算法增量更新模型2023-2-5建立识别模型n利用一趟聚类算法建立识别模型,过程如下:初始时,簇集合为空,读入一个新的文本;以这个对象构造一个新的簇,该文本的类别标识作为新簇的类别标识;若文本已被处理完,则转(6),否则读入新对象,计算并选择最大的相似度的簇;若最大相似度小于给定半径阈值r,转(2);否则将该文本并入具有最大相似度的簇,转(3);采用投票机制对聚类得到的簇进行标识;得到聚类结果(识别模
5、型),建模阶段结束。2023-2-5决策分类n结合kNN分类方法思想,利用识别模型对测试语料进行分类处理:n给定一个测试文本x,使用公式(1)计算模型m0的每个簇的打分,即(1)(2)n找出k1(first_k_value)个最近邻的簇,并在这些簇中查找k2(second_k_value)个最近邻的文本n基于得到的k2最近邻文本集,使用公式(2)给其打分,并将x判定为得分最高的类别2023-2-5kNNCjiiji)C,C(y)C,x(sim)C,x000re(ClusterScokNNdjiiji)C,d(y)d,x(sim)C,xScore(模型更新n对于新添加的训练语料,采用建立模型一样的方法对新添加的训练文本进行增量式聚类,更新聚类结果,以得到新的识别模型2023-2-5部分算法性能测试结果部分算法性能测试结果2023-2-5Ling-Spam语料lemm版本上的十折交叉验证分类结果2023-2-5Ling-Spam上的增量式建模分类TCR值2023-2-5Ling-Spam上的增量式建模的簇变化情况2023-2-5