Atitit 贝叶斯算法的原理以及垃圾邮件分类的原理

1.1. 最开始的垃圾邮件判断方法,使用contain包含判断,只能一个关键词,而且100%概率判断1

1.2. 元件部件串联定律1

1.3. 垃圾邮件关键词串联定律 表格法可视化贝叶斯定律1

1.4. 十一、最终的计算公式2

1.5. 。这时我们还需要一个用于比较的门槛值。Paul Graham的门槛值是0.9,概率大于0.9,2

1.1. 文氏图,可以很清楚地看到在事件B发生的情况下,事件A发生的概率就是P(A∩B)除以P(B)。

1.2. 最开始的垃圾邮件判断方法,使用contain包含判断,只能一个关键词,而且100%概率判断

那么肯定不适用。。所以使用概率算法,出现一个垃圾词语,比如发票,则会判断概率为90%。。比如在出现另外一个垃圾词,比如购买,那么判断概率就会上升 达到9x%...

1.3. 元件部件串联定律

当一个元件可靠性为70%的时候,那么俩个元件串联起来可靠性就降低了达到70%*70%=49%..

元件并联定律。可以提高可靠性,具体提升的百分点以下计算方法。。

1.4. 垃圾邮件关键词串联定律 表格法可视化贝叶斯定律

比如 如果出现 发票 这个词,那么此文件垃圾文件的概率为 90%。。

如果 出现 购买 这个词,垃圾文件概率为 80%

得到以下表格----------表格开始----------

词汇

垃圾邮件概率

正常邮件概率

发票

90%

10%

购买

80%

20%

购买发票

90*80=72%(舍弃掉此错误结构

10*20=2%

购买发票

1-2%=98%(根据正常邮件概率反向计算垃圾邮件概率

10*20=2%

--------表格结束=-------

表格解说。。几条规则

第一,如果只是出现发票一词,则垃圾邮件概率为90%,正常邮件概率自然为1-90%==10%

第2,如果只是出现购买一词,则垃圾邮件概率为80%,正常邮件概率自然为1-80%==20%

第三部,如果出现购买发票俩个次,则初步判断垃圾邮件概率为90%*80%=72%,正常邮件概率自然为10%*20%=2%

很明显,如果同时出现多个垃圾关键词。垃圾邮件的概率应该上升才对。。所以舍弃掉72%的错误计算结果。。

第四步。。那么得到正常邮件概率就是2%。。自然垃圾邮件概率就是1-2%==98%了。。。

1.5. 十一、最终的计算公式

将上面的公式扩展到15个词的情况,就得到了最终的概率计算公式:

P=1-(1-p1)*(1-p2)*(1-p3);

一封邮件是不是垃圾邮件,就用这个式子进行计算

1.6. 。这时我们还需要一个用于比较的门槛值。Paul Graham的门槛值是0.9,概率大于0.9,

表示15个词联合认定,这封邮件有90%以上的可能属于垃圾邮件;概率小于0.9,就表示是正常邮件。

有了这个公式以后,一封正常的信件即使出现sex这个词,

1.7. 解决F1和F2是连续变量,不适宜按照某个特定值计算概率。

但是这里有一个问题:F1和F2是连续变量,不适宜按照某个特定值计算概率。

一个技巧是将连续值变为离散值,计算区间的概率。比如将F1分解成[0, 0.05]、(0.05, 0.2)、[0.2, +∞]三个区间,然后计算每个区间的概率。在我们这个例子中,F1等于0.1,落在第二个区间,所以计算的时候,就使用第二个区间的发生概率。

参考资料

朴素贝叶斯分类器的应用 - 阮一峰的网络日志.html

作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 )

汉字名:艾提拉(艾龙),   EMAIL:1466519819@qq.com

转载请注明来源: http://www.cnblogs.com/attilax/

Atiend

Atitit 贝叶斯算法的原理以及垃圾邮件分类的原理的更多相关文章

  1. Atitti 文本分类  以及 垃圾邮件 判断原理 以及贝叶斯算法的应用解决方案

    Atitti 文本分类  以及 垃圾邮件 判断原理 以及贝叶斯算法的应用解决方案 1.1. 七.什么是贝叶斯过滤器?1 1.2. 八.建立历史资料库2 1.3. 十.联合概率的计算3 1.4. 十一. ...

  2. 朴素贝叶斯算法下的情感分析——C#编程实现

    这篇文章做了什么 朴素贝叶斯算法是机器学习中非常重要的分类算法,用途十分广泛,如垃圾邮件处理等.而情感分析(Sentiment Analysis)是自然语言处理(Natural Language Pr ...

  3. C#编程实现朴素贝叶斯算法下的情感分析

    C#编程实现 这篇文章做了什么 朴素贝叶斯算法是机器学习中非常重要的分类算法,用途十分广泛,如垃圾邮件处理等.而情感分析(Sentiment Analysis)是自然语言处理(Natural Lang ...

  4. 朴素贝叶斯算法原理及Spark MLlib实例(Scala/Java/Python)

    朴素贝叶斯 算法介绍: 朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法. 朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,在没有其它可用信息下,我 ...

  5. 【数据挖掘】朴素贝叶斯算法计算ROC曲线的面积

    题记:          近来关于数据挖掘学习过程中,学习到朴素贝叶斯运算ROC曲线.也是本节实验课题,roc曲线的计算原理以及如果统计TP.FP.TN.FN.TPR.FPR.ROC面积等等.往往运用 ...

  6. Python机器学习笔记:朴素贝叶斯算法

    朴素贝叶斯是经典的机器学习算法之一,也是为数不多的基于概率论的分类算法.对于大多数的分类算法,在所有的机器学习分类算法中,朴素贝叶斯和其他绝大多数的分类算法都不同.比如决策树,KNN,逻辑回归,支持向 ...

  7. 什么是机器学习的分类算法?【K-近邻算法(KNN)、交叉验证、朴素贝叶斯算法、决策树、随机森林】

    1.K-近邻算法(KNN) 1.1 定义 (KNN,K-NearestNeighbor) 如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类 ...

  8. 朴素贝叶斯算法的python实现

    朴素贝叶斯 算法优缺点 优点:在数据较少的情况下依然有效,可以处理多类别问题 缺点:对输入数据的准备方式敏感 适用数据类型:标称型数据 算法思想: 朴素贝叶斯比如我们想判断一个邮件是不是垃圾邮件,那么 ...

  9. [ML学习笔记] 朴素贝叶斯算法(Naive Bayesian)

    [ML学习笔记] 朴素贝叶斯算法(Naive Bayesian) 贝叶斯公式 \[P(A\mid B) = \frac{P(B\mid A)P(A)}{P(B)}\] 我们把P(A)称为"先 ...

随机推荐

  1. shell数组操作

    1.数组定义,shell使用一对括号表示数组,数组元素间用"空格"分隔 # 空数组arr1 arr1=() # 数组arr2,成员分别是1, 2, 3, 4, 5, 6 arr2= ...

  2. 启动tomcat时遇到的问题

    1.当启动Tomcat时,出现了如下信息: The APR based Apache Tomcat Native library which allows optimal performance in ...

  3. 【九度OJ】题目1054:字符串内排序

    题目描述: 输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串. 输入: 测试数据有多组,输入字符串. 输出: 对于每组输入,输出处理后的结果. 样例输入: bacd 样例输出 ...

  4. <转>C Runtime Library(MSVCRT)来历

    (转载)C Runtime Library(MSVCRT)来历   msvcrt.dll (名称:Microsoft C Runtime Library)提供了printf,malloc,strcpy ...

  5. Poj.Grids 2951 浮点数求高精度幂

    2951:浮点数求高精度幂 总时间限制: 1000ms 内存限制: 65536kB 描述 有一个实数 R ( 0.0 < R < 99.999 ) ,要求写程序精确计算 R 的 n 次方. ...

  6. JTA 深度历险 - 原理与实现

    转自http://www.ibm.com/developerworks/cn/java/j-lo-jta/ 在 J2EE 应用中,事务是一个不可或缺的组件模型,它保证了用户操作的 ACID(即原子.一 ...

  7. Linux 常用工具小结:(5) lftp工具使用

    Linux 常用工具小结:(1) lftp工具使用. 这里会按照一些比较常用的功能列出,并举一个具体的例子逐一解释功能. 通常使用ftp过程是登陆ftp,浏览ftp内容,下载ftp文件,或者上传ftp ...

  8. ASDM through site to site VPN

    网上大部分文档只提到两个地方需要设置: 在6.2版本确实可以.但在7.2版本上只有用vpn client或anyconnect client连上的客户端可以用ASDM连上ASA,而通过site to ...

  9. poj 3621 二分+spfa判负环

    http://poj.org/problem?id=3621 求一个环的{点权和}除以{边权和},使得那个环在所有环中{点权和}除以{边权和}最大. 0/1整数划分问题 令在一个环里,点权为v[i], ...

  10. php CLI 模式下的传参方法

    在CLI模式(命令行界面 Command Line Interface)下,传入参数有如下3种方法: 一. getopt函数(PHP 4 >= 4.3.0, PHP 5) getopt - 从命 ...