贝叶斯定理(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,从而使分类产生偏差。所以会使用贝叶斯估计来解决这个问题,