推荐学习笔记-概率和朴素贝叶斯
来源:互联网 发布:服务器监控软件 排行 编辑:程序博客网 时间:2024/05/16 08:25
先验概率(prior probability): 对一个假设(hypothesis)/事件 发生已知的概率,记为P(h)。如: 抛一枚硬币,证明朝上的先验概率是 P(h) = 0.5
后验概率(posterior probability): 在特定数据/情景下,某事件发生的概率, 记为P(h|d).
P(D): 某事/条件出现的概率
P(D|h): 在h发生时, 某事出现的概率。
贝叶斯公式: P(h|D)= ( P(D|h) * P(h) ) / P(D) 或 P(B|A) = P(AB)/P(A) , 在做分类时,由于P(D)都是一样的,所有可以不计算, P(h|D)≈ P(D|h) * P(h)
Tom Mitchell的 机器学习 上举了如下例子:
P(cancer)=0.008 人群中癌症概率是0.008
P(pos|cancer)=0.98 癌症人群血液测试显阳性概率为0.98
P(pos|~cancer)=0.03 非癌症人群血液测试显阳性概率为0.03
现在一个人x来测试血液显示为阳性, 则他患癌症概率大还是没有癌症概率大, 概率多少
P(cancer|pos) ≈ P(pos|cancer) * P(cancer) = 0.98*0.008 = 0.0078
P(~cancer|pos) ≈ P(pos|~cancer) * P(~cancer) = 0.03 * (1-0.008) = 0.0298
所以x没有癌症的概率比患有癌症的概率大, 他患癌症的概率是 P(cancer|pos) = 0.0079/(0.0078+0.0298) = 0.21
朴素贝叶斯:
朴素贝叶斯我的理解就是在多个条件(变量)下,假设条件独立的贝叶斯公式,条件独立性质就是P(A, B) = P(A) * P(B)
以典型的朴素贝叶斯应用垃圾邮件过滤举例:
我们判断一封邮件是否是垃圾邮件是观察判断某些词是否在邮件中,由此预测垃圾邮件概率,以 sex 和 porn 两词为例:
P(sex|spam) 垃圾邮件中有sex词的概率
P(porn|spam) 垃圾邮件中有porn这个词的概率
如一封邮件同时存在这个两个词,
则是垃圾概率是P(spam|sex, porn) ≈ P(sex|spam)*P(porn|spam)*P(spam),
不是垃圾邮件的概率是 P(~spam|sex, porn) ≈ P(sex|~spam) * P(porn|~spam) * P(~spam)
当然的真正的垃圾邮件过滤考虑的词数肯定是多的多
tips. 由于训练数据的关系,在某些情况下如P(sex|spam)为0, 为了使最后概率不为0, 可以给其设一个小概率值, 如1/N, N是邮件过滤考虑的词数。
做贝叶斯计算时,对于连续的数据(属性),如商品价格, 有两种处理方法:
1. 分组,把连续的属性分成几组不连续的
2. 高斯分布:假设属性具有高斯分布性质。 μ是期望,σs是方差, 则
对于连续的属性也就能通过该公式求得其条件概率。
- 推荐学习笔记-概率和朴素贝叶斯
- 《机器学习实战》学习笔记-[4]-基于概率的分类-朴素贝叶斯
- ML学习笔记-朴素贝叶斯
- 机器学习笔记:朴素贝叶斯
- 机器学习笔记(五)续——朴素贝叶斯算法的后验概率最大化含义
- OpenCV学习笔记(12)-朴素贝叶斯分类
- 机器学习实战笔记4(朴素贝叶斯)
- 《机器学习实战》-朴素贝叶斯笔记
- 机器学习----笔记之朴素贝叶斯(4)
- 机器学习笔记4-朴素贝叶斯
- 朴素贝叶斯算法学习笔记(一)
- 机器学习笔记十三 朴素贝叶斯
- 机器学习笔记十四 朴素贝叶斯实例
- 统计学习笔记六----朴素贝叶斯
- 机器学习实战笔记4(朴素贝叶斯)
- 机器学习实战-朴素贝叶斯笔记
- 机器学习笔记(三)之朴素贝叶斯
- 机器学习实战笔记-朴素贝叶斯
- ant build file demo
- POJ 1018
- Dll2lib探究
- 增强for、装箱拆箱
- 计算机网络应用层
- 推荐学习笔记-概率和朴素贝叶斯
- 数据结构邻接表的建立以及两种遍历
- 设计模式与泡MM
- ccproxy的缺省代理端口列表
- centos学习一
- 快学Scala习题解答—第十章 特质
- 机房收费系统总结(数据连接和查询)
- C++中的虚函数(virtual function)
- 举例说明Android开发中遇到的 java.lang.ClassCastException: java.lang.String这个问题的原因及其解决办法