《基于朴素贝叶斯算法的垃圾邮件分类-(Python实现)ppt课件.pptx》由会员分享,可在线阅读,更多相关《基于朴素贝叶斯算法的垃圾邮件分类-(Python实现)ppt课件.pptx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用Presentation 基于朴素贝叶斯算法的垃圾邮件分类基于朴素贝叶斯算法的垃圾邮件分类(Python(Python实现实现)East China Normal University2022年12月28日经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用CONTENTSCONTENTS目录目录0简介1回顾:基本方法2算法3拉普拉斯平滑4实例:邮件分类5流行学习2022年12月28日Ea
2、st China Normal University经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用简介简介朴素贝叶斯法:朴素贝叶斯法:是基于贝叶斯定理和特征条件独立假设的分类方法。对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布;然后基于此模型对于给定的输入x,利用贝叶斯定理求出后验概率最大的输出y.朴素贝叶斯法实现简单,学习和预测的效率都很高,是业界常用的一种方法。2022年12月28日East China Normal University经营者提供商品或者服务有欺诈行为的,应当按
3、照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用Review1:分类问题综述分类问题综述12022年12月28日East China Normal University垃圾邮件非垃圾邮件各种化验检测数据来推断病情,这时医生就好比一个分类器,而这个医生诊断的准确率,与他当初受到的教育方式(构造方法)、病人的症状是否突出(待分类数据的特性)以及医生的经验多少(训练样本数量)都有密切关系。回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用Re
4、view2:贝叶斯定理贝叶斯定理2022年12月28日East China Normal University回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用算法:2022年12月28日East China Normal UniversityRIDageincomestudentcredit_ratingclass_buy_pc1youthhighnofairno2youthhighnoexcellentno3midhighnofairyes4seniormediumnof
5、airyes5seniorlowyesfairyes6seniorlowyesexcellentno7midlowyesexcellentyes8youthmediumnofairno9youthlowyesfairyes10seniormediumyesfairyes11youthmediumyesexcellentyes12midmediumnoexcellentyes13midhighyesfairyes14seniormediumnoexcellentnoTrain_dataset(表格来源:数据挖掘:概念与技术 第3版)回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有
6、欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用2022年12月28日East China Normal University test:X=(age=youth,income=mediu,student=yes,credit_rating=fair)(1)计算先验概率P(buy_pc=yes)=9/14=0.643P(buy_pc=no)=5/14=0.357条件概率:P(age=youth|buy_pc=yes)=2/9=0.22P(age=youth|buy_pc=no)=2/5=0.600P(income=medium|buy_
7、pc=yes)=4/9=0.444P(income=medium|buy_pc=no)=2/5=0.400P(student=yes|buy_pc)=1/5=0.200P(credit_rating=fair|buy_pc=yes)=6/9=0.667P(credit_rating=fair|buy_pc=no)=2/5=0.400回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用2022年12月28日East China Normal University回顾算法拉普拉斯平
8、滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用如果遇到零概率值怎么办?拉普拉斯平滑。East China Normal University2022年12月28日回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用流程图:East China Normal University获取训练样本确定特征属性对每个特征属性就按所有划分的条件概率准备阶段分类器训练阶段应用阶段2022
9、年12月28日回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用准备数据从文本中构建词向量(贝努利模型)East China Normal University从文本中构建邮件向量(words2vec):通常有两种实现方式:一种是基于贝努利模型,一种是基于多项式模型实现。我们采用前一种实现方式,将每个词的出现与否作为一个特征(词集模型,相对应的是词袋模型),不考虑单词在文档中出现的次数,因此在这个意义上相当于每个假设词是等权重的。具体如下:(1)遍历所有邮件,创建一个包含所有
10、文档中出现的不重复的单词集合(即特征)。(2)对于每一封邮件创建一个与单词集合等长的0向量。接着遍历邮件中所有单词,如果出现在单词集合中则把对应的值设为1。2022年12月28日回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用训练模型(技巧小结)East China Normal University2022年12月28日回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款
11、或接受服务的费用交叉验证(1000)East China Normal University6%94%测试结果错误正确正确错误64936准确率:0.936%2022年12月28日回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用流形学习2022年12月28日East China Normal University本质上,流形学习就是给数据降维的过程。这里假设数据是一个随机样本,采样自一个高维欧氏空间中的流形(manifold),流形学习的任务就是把这个高维流形映射到一个低维(
12、例如2维)的空间里。流形学习可以分为线性算法和非线性算法,前者包括主成分分析(PCA)和线性判别分析(LDA),后者包括等距映射(Isomap),拉普拉斯特征映射(LE)等。流形学习可以用于特征的降维和提取,为后续的基于特征的分析,如聚类和分类,做铺垫,也可以直接应用于数据可视化等。回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用流形学习2022年12月28日East China Normal University回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服
13、务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用流形学习2022年12月28日East China Normal University回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用流形学习2022年12月28日East China Normal University回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品
14、的价款或接受服务的费用流形学习(DIM)2022年12月28日East China Normal University算法的输入是所有数据在高维情况下两两之间的距离(记i与j的距离为Dij)。现在以降到2维为例说明这个算法。首先我们把所有数据点随机绘制在一张二维图像上,然后计算它们两两之间的距离dij,然后我们计算出它与高维距离Dij的误差,根据这些误差,我们将每对数据点按比例移近或移远,然后重新计算所有dij,不断重复到我们没法减少误差为止。假设有n个点:(1)输入每一对点之间的距离Dij。(2)随机在2维平面生成n个点,点i坐标记为xi、yi,计算它们两之间的距离,记为dij.(3)对所有
15、i 和j计算:eij=(dij-Dij)/Dij,每个点用一个二维的值gradk来表示它要移动的距离的比例因子(初始为0,0)。在计算出每个eij后,计算(xi-xj)/dij)*eij,然后把它加到gradix上,同样把(yi-yj)/dij)*eij加到gradiy上。(4)把所有eij的绝对值相加,为总误差,与前一次的总误差比较(初始化为无穷大),大于前一次的话就停止。否则把它作为上一次总误差,继续。对每个点,新的坐标为xi-=rate*gradix yi-=rate*gradiy,其中rate是开始时自己定义的一个常数参数,该参数影响了点的移动速度。重新计算各个dij,回到3。回顾算法
16、拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用小结小结2022年12月28日看论文大神交流淘经验写代码实际应用中,需要考虑很多因素,下溢是其中一个,词袋模型在解决文档分类问比词集模型有所提高,还有其他一些方面的改进,比如移除停用词。实际生活中,避免将普通邮件当作垃圾邮件比截获每一封垃圾邮件更为重要,收件箱收到几封垃圾邮件还是可以忍受的,但一封重要的邮件被过滤到垃圾箱被忽视则完全不能忍,为解决这一问题,我们需要为每个分类设立阈值,如spam阈值为3,则必须p(spam)3p(not_spam)时才归类为spam。其它问题。East China Normal University回顾算法拉普拉斯平滑邮件分类流行学习小结经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用谢谢聆听谢谢聆听2022年12月28日East China Normal University