1、朴素贝叶斯算法朴素贝叶斯算法Nave Bayes知识回顾知识回顾贝叶斯知识12001212,1, ,1,2, ;2,.nijnnEB BBEB Bi jnBBBB BB 定义设为试验 的样本空间为的一组事件 若则称为样本空间的一个划分1. 样本空间的划分样本空间的划分1B2B3BnB1nB2. 全概率公全概率公式式全概率公式全概率公式1211221,()0(1,2, ),( )(|) ()(|) ()(|) ()( ) (|)ninnniiEAEB BBP BinP AP A B P BP A B P BP A BP BP B P A B定义 设为试验 的样本空间为 的事件为的一个划分 且则图
2、示图示A1B2B3B1nBnB证明证明12.nABABAB化整为零化整为零各个击破各个击破12()nAAABBB 1122( )() (|)() (|)() (|)nnP AP B P A BP B P A BP B P A B说明说明 全概率公式的主要用途在于它可以将一个全概率公式的主要用途在于它可以将一个复杂事件的概率计算问题复杂事件的概率计算问题,分解为若干个简单事件分解为若干个简单事件的概率计算问题的概率计算问题,最后应用概率的最后应用概率的可加性可加性求出最终求出最终结果结果.A1B2B3B1nBnB称此为称此为贝叶斯公式贝叶斯公式. 3. 贝叶斯公式贝叶斯公式121,( )0,()
3、0(1,2, ),(/) ()(|),1,2, .(|) ()niiiinjjjEAEB BBP AP BinP A B P BP BAinP A BP B定义设为试验 的样本空间为 的事件为的一个划分 且则证明证明(| ) ()()( )iiiP A B P BP B AP A., 2 , 1ni 1() (|)() (|)iinjjjP B P A BP B P A B条件概率条件概率的概念的概念( )0,()( | )( ).P BP ABP A BP BBAFFF件件概概率率 若( , ,P)是一个概率空间,B,且对任意的A,称 为在事件发生的条件下,事条件 发生的( )0,()()
4、( )() ( ).P AP ABP B A P AP A B P B设则有乘法定理:乘法定理:由以往的数据分析得到由以往的数据分析得到的的概率概率, 叫做叫做先验先验概率概率.而在得到而在得到信息之后再重新加以修正的概率信息之后再重新加以修正的概率 叫做叫做后验概率后验概率.先验概率与后验概率先验概率与后验概率简介 贝叶斯定理 分类算法概念朴素贝叶斯算法 朴素贝叶斯算法原理 朴素贝叶斯算法流程算法实例 购买电脑实例总结 算法优缺点 算法相关扩展l简单的说,贝叶斯定理是基于假设的先验概率简单的说,贝叶斯定理是基于假设的先验概率、给定假设下观察到不同数据的概率,提供了、给定假设下观察到不同数据的
5、概率,提供了一种计算后验概率的方法。一种计算后验概率的方法。l在人工智能领域,贝叶斯方法是一种非常具有在人工智能领域,贝叶斯方法是一种非常具有代表性的不确定性知识表示和推理方法。代表性的不确定性知识表示和推理方法。贝叶斯理论贝叶斯理论贝叶斯定理:贝叶斯定理:lP(A)是A的先验概率或边缘概率。之所以称为“先验”是因为它不考虑任何B方面的因素。lP(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率。lP(B|A)是已知A发生后B的条件概率,也由于得自A的取值而被称作B的后验概率。lP(B)是B的先验概率或边缘概率,也作标准化常量(normalized constant)
6、.贝叶斯定理:贝叶斯定理:关于贝叶斯分类:关于贝叶斯分类:对于贝叶斯网络分类器,若某一待分类的样本D,其分类特征值为 ,则样本D 属于类别yi 的概率P( C = yi | X1 = x1 , X2 = x 2 , . , Xn = x n) ,( i = 1 ,2 , . , m) 应满足下式:而由贝叶斯公式:其中,P( C = ci) 可由领域专家的经验得到,而P( X = x | C = ci) 和P( X = x) 的计算则较困难。(/) ()()()jjjP Xx Yy P YyP Yy XxP Xx12x=(x ,x ,.,x )n12P(Y=y) =M AXP(Y=y),P(Y=
7、y),.,P(Y=y)jmX xX xX xX x朴素贝叶斯算法原理:朴素贝叶斯算法原理:l朴素贝叶斯算法原理:朴素贝叶斯算法原理:朴素贝叶斯算法原理:朴素贝叶斯算法原理:朴素贝叶斯算法原理:朴素贝叶斯算法原理:1(|)(|)nikikP XyP ay朴素贝叶斯算法原理:朴素贝叶斯算法原理:贝叶斯算法处理流程:贝叶斯算法处理流程:贝叶斯算法的处理流程:贝叶斯算法的处理流程:l第一阶段第一阶段准备阶段:准备阶段: 该阶段为朴素贝叶斯分类做必要的准备。主要是依据具体情况确定特征属性,并且对特征属性进行适当划分。然后就是对一部分待分类项进行人工划分,以确定训练样本。 这一阶段的输入是所有的待分类项,
8、输出时特征属性和训练样本。分类器的质量很大程度上依赖于特征属性及其划分以及训练样本的质量。贝叶斯算法处理流程:贝叶斯算法处理流程:l第二阶段第二阶段分类器训练阶段:分类器训练阶段: 主要工作是计算每个类别在训练样本中出现频率以及每个特征属性划分对每个类别的条件概率估计。输入是特征属性和训练样本,输出是分类器。l第三阶段第三阶段应用阶段:应用阶段: 这个阶段的任务是使用分类器对待分类项进行分类,其输入是分类器和待分类项,输出是待分类项与类别的映射关系。购买电脑实例:购买电脑实例:购买电脑实例:购买电脑实例:l购买电脑实例:购买电脑实例:(2)计算每个特征属性对于每个类别的条件概率:P(age=“
9、30”|buys_computer=“yes”)=2/9=0.222P(income=“medium”|buys_computer=“yes”)=4/9=0.444P(student=“yes”|buys_computer=“yes”)=6/9=0.667P(credit_rating=“fair”|buys_computer=“yes”)=6/9=0.667P(age=“30”|buys_computer=“no”)=3/5=0.600 P(income=“medium”|buys_computer=“no”)=2/5=0.400P(student=“yes”|buys_computer=“
10、no”)=1/5=0.2P(credit_rating=“fair”|buys_computer=“no”)=2/5=0.400购买电脑实例:购买电脑实例:l购买电脑实例:购买电脑实例:P(X | buys_computer = “no”) P(buys_computer = “no”) = 0.0190.357 = 0.007 l因此,对于样本X,朴素贝叶斯分类预测buys_computer =”yes”l特别要注意的是:朴素贝叶斯的核心在于它假设向量的所有分量之间是独立的。总结总结l朴素贝叶斯算法的优点: a. 算法逻辑简单,易于实现; b. 分类过程中时空开销小; c. 算法稳定,对于不
11、同的数据特点其分类性能差别不大,健壮性比较好。总结总结l那么那么“贝叶斯分类法的效率如何呢?贝叶斯分类法的效率如何呢?” 该分类法与决策树和神经网络分类法的各种比较试验表明,在某些领域,贝叶斯分类法足以与它们相媲美。理论上讲,与其他所有分类算法相比,贝叶斯分类具有最小的错误率,然而,实践中并非总是如此。这是因为对其使用的假定(如类条件独立性)的不正确性,以及缺乏可用的概率数据造成的。 贝叶斯分类法还可以用来为不直接使用贝叶斯定理的其他分类法提供理论判定。例如,在某些假定下,可以证明:与朴素贝叶斯分类法一样,许多神经网络和曲线拟合算法输出的最大的后验假定。对比决策树分类对比决策树分类l整棵决策树
12、就对应着整棵决策树就对应着一组析取表达式规则一组析取表达式规则。总结:总结:l扩展:扩展:l扩展:扩展:l对于第二个问题:朴素贝叶斯算法是在假定各个特征属性相互独立的情况下提出来,这在现实生活中是很难实现的,所以针对这个问题人们做了大量工作解决这个缺点。 (1)如果特征属性之间是有联系的,并且是一个有向无环图,可以采用另一个相关的贝叶斯分类算法贝叶斯网络。在此不再介绍。 (2)除了贝叶斯网络还有kononenko提出的semi-nave bayesian 算法,称为半朴素贝叶斯算法,扩展:扩展:l该算法就是将特征相关的属性分成一组,然后假设不同组中的属性是相互独立的,同一组中的属性是相互关联的。l(3)还有一种具有树结构的TAN(tree augmented nave Bayes)分类器,它放松了朴素贝叶斯中的独立性假设条件,允许每个属性结点最多可以依赖一个非类结点。TAN具有较好的综合性能。算是一种受限制的贝叶斯网络算法。Thank you!Thank you!