博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
统计学习方法笔记 -- 朴素贝叶斯
阅读量:5058 次
发布时间:2019-06-12

本文共 1377 字,大约阅读时间需要 4 分钟。

贝叶斯定理(Bayes theorem)

这是关于“逆概”或“后验概率”的定理,之所以需要这个定理是因为后验概率是以“果”来推导“因”,所以往往难以直接统计出。
但是后验概率却非常重要,因为在现实生活中,往往都只能观测到一些表面的“果”,需要去推断“因”。
而bayes定理就给出一种计算后验概率的方法。

以例子来说明,一个班级中n个学生,有男生也有女生

两个features,短发;长发,穿裤子;穿裙子
如果在知道所有数据的情况下,即知道“因”去推“果”
随机抽取一个女生,穿裤子和留长发的概率是多少?
设 A=女生,B=(长发,裤子),求P(B|A),这个很容易,直接统计一下就可以得到

但在现实中,“因”总是晦涩的,如果你不知道具体的数据情况,而只是根据抽样“果”来推导“因”。

比如在抽取10个训练样本点后,问“如果一个同学穿裤子和留长发,那是一个女生的概率多大?”,即求P(A|B),假设这个很难统计出
先看下贝叶斯定理的推导,
P(A|B) = P(AB)/P(B)
P(B|A) = P(AB)/P(A)
故,P(A|B) = P(B|A)P(A)/P(B)
这样就可以通过观测数据的P(B|A)来求出P(A|B)
其中,
P(A|B),后验概率(posterior),是用果来推导出因
P(B|A),观测到的数据的可能性大小(似然,Likelihood)概率
P(A)或P(B),先验概率(Prior),即不考虑任何条件下,该事件出现的概率,取决于之前的先验经验, 比如之前知道男女比例为1:2,那么P(A)=2/3,即从先验上出现女生的概率要大些
然后对于P(B|A),因为B包含两个feature,B1 长发,B2 裤子
基于朴素贝叶斯的特征条件独立假设,
P(B|A) = P(B1|A)P(B2|A), 这个可以分别从样本数据中统计出

 

朴素贝叶斯分类

对于分类问题,其实就是把上面的问题变一下,问“如果一个同学穿裤子和留长发,那是男生还是女生了?”
假设C = 男生,那么这个问题就变成求解Max(P(A|B), P(C|B))
由于P(B)是个常量,在比较中没有作用,故变成求
Max(P(B|A)P(A), P(B|C)P(C))
这种方法称为最大似然估计

最大似然估计

参考,
拿里面抛硬币的例子,
3枚硬币,抛出正面的概率为1/3, 1/2, 2/3,硬币外观一样无法直接分出
假设,正面H,负面T,在用一面硬币抛出49次H和31次T的情况下,会是哪枚硬币?
这里需要求P(p=1/3|H=49,T=31), P(p=1/2|H=49,T=31), P(p=2/3|H=49,T=31)
明显,这个很难统计出来,所以使用Bayse定理,计算

可以看出这p=2/3的情况下的概率最大
这里没有使用先验概率,是因为在3枚硬币的情况下,每枚硬币的先验概率都是一样的
所以最大似然估计,就是根据训练集中最有可能出现的哪种case作为估计结果

 

朴素贝叶斯算法

这种方法中P(Y)和P(X|Y)都是由训练集中直接统计出来的,但是如果训练集中不存在这种case,会导致概率为0,从而使分类产生偏差。所以会使用贝叶斯估计来解决这个问题,

转载于:https://www.cnblogs.com/fxjwind/p/3613664.html

你可能感兴趣的文章
利用循环播放dataurl的视频来防止锁屏:NoSleep.js
查看>>
python3 生成器与迭代器
查看>>
java编写提升性能的代码
查看>>
ios封装静态库技巧两则
查看>>
Educational Codeforces Round 46 (Rated for Div. 2)
查看>>
Abstract Factory Pattern
查看>>
C# 实现Bresenham算法(vs2010)
查看>>
基于iSCSI的SQL Server 2012群集测试(一)--SQL群集安装
查看>>
list 容器 排序函数.xml
查看>>
存储开头结尾使用begin tran,rollback tran作用?
查看>>
Activity启动过程中获取组件宽高的五种方式
查看>>
java导出Excel表格简单的方法
查看>>
SQLite数据库简介
查看>>
利用堆实现堆排序&优先队列
查看>>
Mono源码学习笔记:Console类(四)
查看>>
Android学习路线(十二)Activity生命周期——启动一个Activity
查看>>
《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇03:暂停游戏》
查看>>
CPU,寄存器,一缓二缓.... RAM ROM 外部存储器等简介
查看>>
windows下编译FreeSwitch
查看>>
git .gitignore 文件不起作用
查看>>