文章目录

  • I . 垃圾邮件过滤 需求 及 表示方法
  • II . 贝叶斯方法 步骤 1 : 提出假设
  • III . 贝叶斯方法 步骤 2 : 计算垃圾邮件假设概率
  • IV . 贝叶斯方法 步骤 2 : 计算正常邮件假设概率
  • V . 贝叶斯方法 步骤 3 : 比较假设的概率
  • VI . 先验概率 P(H1)P(H_1)P(H1​) 和 P(H0)P(H_0)P(H0​)
  • VII . 似然概率 P(D∣H1)P(D|H_1)P(D∣H1​) 和 P(D∣H0)P(D|H_0)P(D∣H0​)

I . 垃圾邮件过滤 需求 及 表示方法


1 . 需求 : 收到一封邮件 , 判断该邮件是否是垃圾邮件 ;

2 . 表示方法 :

① 收到邮件 DDD : DDD 表示收到的邮件 , 其有一定的特征 , 如包含指定的单词 等 ;

② 收到邮件 DDD 的概率 : DDD 是符合一定要求的邮件 , 不是每一个收到的邮件都有 DDD 的特征 ;

③ 垃圾邮件 H0H_0H0​ : 表示收到 DDD 邮件是 H0H_0H0​ 垃圾邮件 ; ( H0H_0H0​ 泛指垃圾邮件 , 不是指某一封邮件 )

④ 正常邮件 H1H_1H1​ : 表示收到 DDD 邮件是 H1H_1H1​ 正常邮件 ; ( H1H_1H1​ 泛指正常邮件 , 不是指某一封邮件 )

II . 贝叶斯方法 步骤 1 : 提出假设


1 . 提出假设 : 收到邮件事件是 DDD , 该邮件是否是垃圾邮件 , 只有两个假设 , 是 或 否 ,

① 假设 111 : 假设 收到的 DDD 邮件 是垃圾邮件 H0H_0H0​ ;

② 假设 222 : 假设 收到的 DDD 邮件 是正常邮件 H1H_1H1​ ;

III . 贝叶斯方法 步骤 2 : 计算垃圾邮件假设概率


1 . 计算该邮件是垃圾邮件的概率 :

① 需要计算的概率 : 收到邮件 DDD 后 , 该邮件是垃圾邮件 H0H_0H0​ , 概率是 P(H0∣D)P(H_0|D)P(H0​∣D) ;

② 问题 : 很明显 , 这个概率求不出来 ;

2 . 引入贝叶斯公式 :

① 逆向概率 ( 似然概率 | 条件概率 ) : 收到垃圾邮件后 , 该邮件是 DDD 的概率 ; 这个概率可以由训练学习得到 , 数据量足够大 , 是可以知道的 ;

② 先验概率 : 收到 H0H_0H0​ 邮件的概率是已知的 ;

③ 后验概率 : 贝叶斯公式计算该邮件 DDD 是垃圾邮件的概率 :

P(H0∣D)=P(D∣H0)P(H0)P(D)P(H_0 | D) = \frac{P(D|H_0)P(H_0)}{P(D)}P(H0​∣D)=P(D)P(D∣H0​)P(H0​)​

IV . 贝叶斯方法 步骤 2 : 计算正常邮件假设概率


1 . 计算该邮件是正常邮件的概率 :

① 计算的概率 : 收到邮件 DDD 后 , 该邮件是正常邮件 H1H_1H1​ , 概率是 P(H1∣D)P(H_1|D)P(H1​∣D) ;

② 问题 : 很明显 , 这个概率求不出来 ;

2 . 引入贝叶斯公式 :

① 逆向概率 ( 似然概率 | 条件概率 ) : 收到正常邮件 H1H_1H1​ 后 , 该邮件是 DDD 的概率 ; 这个概率可以由训练学习得到 , 数据量足够大 , 是可以知道的 ;

② 先验概率 : 收到 H1H_1H1​ 邮件的概率是已知的 ;

③ 后验概率 : 贝叶斯公式计算该邮件 DDD 是正常邮件的概率 :

P(H1∣D)=P(D∣H1)P(H1)P(D)P(H_1 | D) = \frac{P(D|H_1)P(H_1)}{P(D)}P(H1​∣D)=P(D)P(D∣H1​)P(H1​)​

V . 贝叶斯方法 步骤 3 : 比较假设的概率


1 . 假设概率 : 提出了 222 个假设 , 邮件 DDD 是垃圾邮件的概率是 P(H0∣D)=P(D∣H0)P(H0)P(D)P(H_0 | D) = \frac{P(D|H_0)P(H_0)}{P(D)}P(H0​∣D)=P(D)P(D∣H0​)P(H0​)​ , 邮件 DDD 是正常邮件的概率是 P(H1∣D)=P(D∣H1)P(H1)P(D)P(H_1 | D) = \frac{P(D|H_1)P(H_1)}{P(D)}P(H1​∣D)=P(D)P(D∣H1​)P(H1​)​ ;

2 . 比较概率忽略分母 : 比较 上述两个概率 , 明显其分母都是 P(D)P(D)P(D) , 可以不考虑分母因素 , 只比较分子 ;

3 . 比较分子 : 比较 P(D∣H0)P(H0)P(D|H_0)P(H_0)P(D∣H0​)P(H0​) 和 P(D∣H1)P(H1)P(D|H_1)P(H_1)P(D∣H1​)P(H1​) 两个值的大小 ;

VI . 先验概率 P(H1)P(H_1)P(H1​) 和 P(H0)P(H_0)P(H0​)


1 . 先验概率 : P(H1)P(H_1)P(H1​) 代表收到正常邮件的概率 , P(H0)P(H_0)P(H0​) 代表收到垃圾邮件的概率 ;

2 . 获取这两个概率 : 从系统后台服务器中的邮件库中获取垃圾邮件 和 正常邮件比例即可 ;

VII . 似然概率 P(D∣H1)P(D|H_1)P(D∣H1​) 和 P(D∣H0)P(D|H_0)P(D∣H0​)


1 . P(D∣H1)P(D|H_1)P(D∣H1​) 概率 : 表示收到正常邮件时 , 该邮是 DDD 邮件的概率 , 即具有 DDD 邮件的特征 ; 需要在当前邮件库中找到具有该邮件 DDD 特征的邮件出现的概率 ;

2 . P(D∣H0)P(D|H_0)P(D∣H0​) 概率 : 表示收到垃圾邮件时 , 该邮是 DDD 邮件的概率 , 即具有 DDD 邮件的特征 ; 需要在当前邮件库中找到具有该邮件 DDD 特征的邮件出现的概率 ;

【数据挖掘】贝叶斯公式在垃圾邮件过滤中的应用 ( 先验概率 | 似然概率 | 后验概率 )相关推荐

  1. 数据挖掘在垃圾邮件过滤中的应用

    数据挖掘在垃圾邮件过滤中的应用 李强 071221054 (南京大学计算机科学与技术07级  江苏省 南京市 210000) Application of data mining in Spam fi ...

  2. 【数据挖掘】贝叶斯公式应用 拼写纠正示例分析 ( 先验概率 | 似然概率 | 后验概率 )

    文章目录 I . 拼写纠正 简介 II . 拼写纠正 案例需求 III . 计算每个假设的概率 IV . 引入 贝叶斯公式 V . 使用贝叶斯公式计算每个假设的概率 VI . 比较每个假设概率时 P( ...

  3. 论题:基于机器学习的垃圾邮件过滤系统

    目录 摘要 1.引言 2.相关工作 3.数据集与特征提取 4.机器学习模型的设计与选择 5.模型优化与融合策略 6.系统实现与应用 7.结论 本文为论题:基于机器学习的垃圾邮件过滤系统的撰写思路. 摘 ...

  4. 利用exchange实现垃圾邮件过滤

    根据微软的官方数据显示,微软每天要收到13500万封邮件,但是,其90%的邮件都被认为是垃圾邮件,被自动过滤掉了.这是如何实现的呢?这篇文章,我就试图揭示其中的奥秘,或许,能够给某些人提供一些有用的信 ...

  5. 思科sp ccie 认证中必看网络安全之垃圾邮件过滤技术

    思科sp ccie 认证中必看网络安全之垃圾邮件过滤技术,电子邮件是-种用电子手段提供信息交换的通信方式,是互联网应用最多的服务.通过网络的电子邮件系统,用户可以以非常低廉的价格.非常快速的方式,与世 ...

  6. 数据嗨客 | 第3期:朴素贝叶斯和垃圾邮件过滤 机器学习 2016-11-01 0 摘要:概率论只不过是把常识用数学公式表达了出来。 概率论只不过是把常识用数学公式表达了出来。 —

    数据嗨客 | 第3期:朴素贝叶斯和垃圾邮件过滤 机器学习 2016-11-01 0 摘要:概率论只不过是把常识用数学公式表达了出来. 概率论只不过是把常识用数学公式表达了出来. ----拉普拉斯 由于 ...

  7. 机器学习:朴素贝叶斯算法与垃圾邮件过滤

    简介 贝叶斯算法是由英国数学家托马斯·贝叶斯提出的,这个算法的提出是为了解决"逆向概率"的问题.首先我们先来解释下正向概率与逆向概率的含义: 正向概率:假设一个箱子里有5个黄色球和 ...

  8. 【机器学习】贝叶斯算法详解 + 公式推导 + 垃圾邮件过滤实战 + Python代码实现

    文章目录 一.贝叶斯简介 二.贝叶斯公式推导 三.拼写纠正案例 四.垃圾邮件过滤案例 4.1 问题描述 4.2 朴素贝叶斯引入 五.基于朴素贝叶斯的垃圾邮件过滤实战 5.1 导入相关库 5.2 邮件数 ...

  9. 【机器学习实战】朴素贝叶斯应用之垃圾邮件过滤

    1.什么是朴素贝叶斯 2.贝叶斯公式 3.朴素贝叶斯常用的三个模型 4.朴素贝叶斯实现垃圾邮件过滤的步骤 5.垃圾邮件过滤实验: (一).准备收集好的数据集,并下载到本地文件夹 (二).朴素贝叶斯分类 ...

最新文章

  1. php mysql 主从复制_Windows 环境下,MySQL 的主从复制和主主复制
  2. 不是python中用于开发用户界面的第三方库-Python计算生态习题(50题)
  3. c语言向自定数组_数据结构之用C语言实现定义数组
  4. FFMPEG结构体分析之AVPacket
  5. 前端学习(2834):样式引入
  6. rpc调试工具grpcui的安装使用
  7. Mac node js环境的安装与测试
  8. ORA-01502-对应的快速解决办法(索引或这类索引的分区处于不可用状态)
  9. 对Javascript“闭包”的简单理解
  10. Java锁--CyclicBarrier
  11. 用计算机关闭无线网络连接,我的DELL笔记本电脑无线网络已关闭,怎么进行再连接?...
  12. 【第四章】详解Feign的实现原理
  13. 深度学习在视频动作识别应用
  14. java读取Excel文件并各方案对比
  15. php 微信发红包 证书错误,微信支付,使用证书时出现58错误 - 微信公众平台
  16. snowStorm.js下雪效果
  17. 课堂笔记-多元函数微分
  18. InputStream读取数据
  19. Linux操作系统安装
  20. 安装oracle 19c rac报错:2节点执行root.sh asm实例启动失败

热门文章

  1. 波形捕捉:(7)“捕捉缓冲区”特效
  2. 一本通1655数三角形
  3. C语言第一次博客作业——输入输出格式
  4. 2-4 js基础-事件对象小结
  5. Repeater控件
  6. Arnold+Shave 渲染毛发
  7. eclipse-python插件。如果online update的话,经常会失败,所以offline比较靠谱
  8. log4j使用方法(一)——先跑起来再说
  9. 数据绑定控件导出到excel
  10. jsp cookie 中文乱码 的解决方法