统计学习方法笔记 -- 朴素贝叶斯

贝叶斯定理(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))
这种方法称为最大似然估计

最大似然估计
参考,http://zh.wikipedia.org/w/index.php?title=%E6%9C%80%E5%A4%A7%E4%BC%BC%E7%84%B6%E4%BC%B0%E8%AE%A1&variant=zh-cn
拿里面抛硬币的例子,
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定理,计算

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

 

朴素贝叶斯算法

image

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

image
image

posted on 2014-03-20 14:24  fxjwind  阅读(903)  评论(0编辑  收藏  举报