《统计学习方法》学习笔记(四)——朴素贝叶斯法

来源:互联网 发布:sql属于什么数据库语言 编辑:程序博客网 时间:2024/05/29 10:42

  相信大家对贝叶斯定理已经非常熟悉了,不过这里还是先对贝叶斯定理进行一下扫盲介绍。
  预备知识:1、先验概率:用P(Bi)表示没有训练数据前假设假设h拥有的初始概率,称为先验概率。先验概率反映了关于Bi是一正确假设的机会的背景知识;2、后验概率:P(Bi|A)为后验概率,给定A时Bi成立的概率,称为Bi的后验概率;3、极大后验概率:最佳假设P(Bk|x)=argminkP(x|Bi)P(Bi)P(x);4、极大似然估计:假设H中每个假设没有相同的先验概率,可以简化为:P(Bk|x)=argminkP(x|Bi)(极大似然估计有一个博客写的很好,大家参考下,http://blog.csdn.net/zouxy09/article/details/8537620)
  P(A|B)是在B发生的情况下A发生的可能性
假设B1,......,Bn为互斥且构成一个完全事件,已知概率P(Bi),i=1,....,n,现观察到某事件A与B1,......,Bn相伴随机出现,且已知条件概率P(A|Bi),求P(Bi|A):
                P(Bi|A)=P(Bi)P(A|Bi)nj=1P(Bj)P(A|Bj)
即已知P(A|Bi)(先验信息)与P(Bi)(样本信息)的情况下,求得P(Bi|A)(后验信息)
朴素贝叶斯算法:
  step1:设x=a1,a2,...,am为一个待分类项,其中aix的一个特征属性;
  step2:有类别集合C={y1,y2,...,yn}
  step3:计算P(y1|x),P(y2|x),...,P(yn|x)
  step4:若P(yk|x)=maxk{P(y1|x),P(y2|x),...,P(yn|x)},则将x分类到第k类;
  下面重点讨论第3步:
  1、找到一个已知分类的待分类项集合,这个集合为训练样本;
  2、统计得到在各类别下各个特征属性的条件概率估计,即P(a1|y1),...,P(am|y1),P(a1|y2),.....,P(am|y2),....,P(am|yn);
  3、各个特征属性相互独立,即有贝叶斯定理如下推到:
  P(yi|x)=P(x|yi)P(yi)P(x),由于P(x)固定,所以step4选取分子最大是的i,所以朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。
  朴素贝叶斯法的基本思路:
  设输入空间xχRn,输出空间yν=c1,c2,...,ckxχ上的随机向量,Y是定义在ν上的随机向量,P(X,Y)XY的联合分布分布。数据集T=(x1,y1),(x2,y2),...,(xN,yN)P(X,Y)独立且同分布产生。P(X,Y)由学习产生的先验概率分布及条件概率分布求解。
  step1、P(Y=ck),k=1,2,...,K——(1)为先验概率分布,P(X=x|Y=ck)=P(X(1)=x(1),X(2)=x(2),...,X(K)=x(K)|Y=ck),k=1,2,....,K——(2)为条件概率分布。然而由于条件概率分布P(X=x|Y=ck)有指数级数量的参数,其估计实际是不可行的,故朴素贝叶斯对条件概率分布做了条件独立性假设:  P(X=x|Y=ck)=P(X(1)=x(1),X(2)=x(2),...,X(K)=x(K)|Y=ck)=ni=1P(X(i)=x(i)|Y=ck)——-(3).
  step2、朴素贝叶斯分类时,对给定的输入x,通过学习得到的模型计算后验概率分布P(Y=ck|X=x),将后验概率最大类作为x的类输出:
  P(Y=ck|X=x)=P(Y=ck)P(X=x|Y=ck)Kk=1P(Y=ck)P(X=x|Y=ck)——(4)
将式(3)带入式(4)中,可得:
  P(Y=ck|X=x)=P(Y=ck)P(X(j)=x(j)|Y=ck)Kk=1P(Y=ck)P(X(j)=x(j)|Y=ck)——-(5)
转化为寻找式(5)的最大后验概率:
y=f(x)=argmaxckP(Y=ck|X=x)=P(Y=ck)P(X(j)=x(j)|Y=ck)P(x),将P(x)固定,得:y=argmaxckP(Y=ck)ni=1P(X(j)=x(j)|Y=ck)这就是求解的最大后验概率。

0 0
原创粉丝点击