资源描述
数据挖掘:朴素贝叶斯分类数据挖掘:朴素贝叶斯分类王成(副教授)华侨大学计算机科学与技术学院1.概率论基本知识概率论基本知识确定事件:概念是确定的,发生也是确定的;随机事件:概念是确定的,发生是随机事件:概念是确定的,发生是不确定的;不确定的;模糊事件:概念本身就不确定。随机变量随机变量随机变量:随机事件的数量表示;离散随机变量:取值为离散的随离散随机变量:取值为离散的随机变量机变量;连续随机变量:取值为连续的随机变量;频率和概率频率和概率(概率的频率学派解释概率的频率学派解释)频率:试验在相同的条件下重复N次,其中M次事件A发生,则A发生的频率为:fN(A)=M/N;概率:当N很大时,频率会趋向一个稳定值,称为A的概率:联合概率和条件概率联合概率和条件概率联合概率联合概率:设A,B是两个随机事件,A和B同时发生的概率称为联合概率,记为:P(A B);条件概率条件概率:在B事件发生的条件下,A事件发生的概率称为条件概率,记为:P(A|B);乘法定理乘法定理:P(A|B)=P(AB)/P(B)。贝叶斯公式贝叶斯公式P(cj|x)=P(x|cj)P(cj)P(x)u 先验概率P(cj)u 联合概率P(xcj)u 后验概率P(cj|x)先验概率P(cj)P(cj)代表还没有训练数据前,cj拥有的初始概率。P(cj)常被称为cj的先验概率(prior probability),它反映了我们所拥有的关于cj是正确分类机会的背景知识,它应该是独立于样本的。如果没有这一先验知识,那么可以简单地将每一候选类别赋予相同的先验概率。不过通常我们可以用样例中属于cj的样例数|cj|比上总样例数|D|来近似,即后验概率P(cj|x)即给定数据样本x时cj成立的概率,而这正是我们所感兴趣的 P(cj|x)被称为C的后验概率(posterior probability),因为它反映了在看到数据样本x后cj成立的置信度贝叶斯贝叶斯贝叶斯(Thomas Bayes,17011761),英国牧师、业余数学家。生活在18世纪的贝叶斯生前是位受人尊敬英格兰长老会牧师。为了证明上帝的存在,他发明了概率统概率统计学计学原理,遗憾的是,他的这一美好愿望至死也未能实现。贝叶斯在数学方面主要研究概率论。他首先将归纳归纳推理法推理法用于概率论概率论基础理论,并创立了贝叶斯统计贝叶斯统计理论理论,对于统计决策函数统计决策函数、统计推断统计推断、统计的估算统计的估算等做出了贡献。1763年发表了这方面的论著,对于现代概率论和数理统计都有很重要的作用。贝叶斯的另一著作机会的学说概论发表于1758年。贝叶斯所采用的许多术语被沿用至今。贝叶斯思想和方法对概率统计的发展产生了深远的影响。今天,贝叶斯思想和方法在许多领域都获得了广泛的应用。条件概率条件概率在实际问题中,往往会遇到求在事件B已经发生的条件下,事件A的概率这时由于附加了条件,它与事件A的概率P(A)的意义是不同的我们把这种概率记为P(A|B)条件概率条件概率考虑一个医疗诊断问题,有两种可能的假设:(1)病人有癌症。(2)病人无癌症。样本数据来自某化验测试,它也有两种可能的结果:阳性和阴性。假设我们已经有先验知识:(1)在所有人口中只有0.008的人患癌症。(2)此外,化验测试对有癌症的患者有98%的可能返回阳性结果,对无癌症患者有97%的可能返回阴性结果。条件概率条件概率上面的数据可以用以下概率式子表示:P(cancer)=0.008P(无cancer)=1-P(cancer)=1-0.008=0.992P(阳性|cancer)=0.98P(阴性|cancer)=1-P(阳性|cancer)=1-0.98=0.02P(阴性|无cancer)=0.97P(阳性|无cancer)=1-P(阴性|无cancer)=1-0.97=0.03假设现在有一个新病人,化验测试结果为阳性,是否将病人断定为有癌症呢?在这里,Y=cancer,无cancer,共两个类别,这个新病人是一个样本,他有一个属性阳性,可以令x=(阳性)。条件概率条件概率我们可以来计算各个类别的后验概率:P(cancer 阳性)=P(阳性|cancer)*p(cancer)=0.98*0.008=0.0078P(无cancer阳性)=P(阳性|无cancer)*p(无cancer)=0.03*0.992=0.0298P(阳性)=P(cancer 阳性)+P(无cancer阳性)=0.0078+0.0298 P(cancer|阳性)=P(cancer 阳性)/P(阳性)=0.0078/(0.0078+0.0298)=0.207P(无cancer|阳性)=1-P(癌症|阳性)=1-0.207=0.793贝叶斯分类贝叶斯分类贝贝叶叶斯斯分分类类是统统计计学学方方法法。他们可以预测类成员关系的可能性,如给定样本属于一个特定类的概率贝叶斯分类主要是基于贝贝叶叶斯斯定定理理,通过计算给定样本属于一个特定类的概率概率来对给定样本进行分类由于概率统计与数据挖掘天然的联系,数据挖掘兴起后,贝叶斯成为引人注目的热点贝叶斯分类贝叶斯分类贝叶斯分类基本思路:假设有两种类别C1和C2,给定实例X,要求得到X所属的类别是C1还是C2。计算 P(C1|X)和 P(C2|X),如果 P(C1|X)P(C2|X),则实例X属于C1,否则属于C2。简单的说,就是去计算在X出现的情况下,X属于哪种类别的概率更高属于哪种类别的概率更高。如何计算P(Ci|X)?朴素贝叶斯分类朴素贝叶斯分类(Naive Bayes)假设有n个类别C1,C2.Cn,给定一个实例的特征向量w,则此实例属于类Ci的概率为P(Ci)的计算:将训练样本中属于类Ci的实例数量除以训练样本数量即P(Ci),例如动物图片识别中,假设有100个训练实例,其中有15张为猫,则P(猫)=15/100=0.15P(w)的计算:因为利用贝叶斯进行分类时,我们只要比较概率的大小即可,而P(w)对于所有的类别都是一样的,因此无须计算朴素贝叶斯分类朴素贝叶斯分类(Naive Bayes)假设有n个类别C1,C2.Cn,给定一个实例的特征向量w,则此实例属于类Ci的概率为P(w|Ci)的计算:w是特征向量,若将其展开,则可将P(w|Ci)写作P(w0,w1,w2.wn|Ci)朴素贝叶斯假设实例的各个属性互相独立,互不影响,朴素贝叶斯假设实例的各个属性互相独立,互不影响,因此,上式等价于P(w0|Ci)P(w1|Ci)P(w2|Ci).P(wn|Ci)朴素贝叶斯分类朴素贝叶斯分类(Naive Bayes)假设有n个类别C1,C2.Cn,给定一个实例的特征向量w,则此实例属于类Ci的概率为P(w|Ci)的计算:P(w|Ci)=P(w0|Ci)P(w1|Ci)P(w2|Ci).P(wn|Ci)假设一个实例的特征向量为(有四条腿,会飞),即w0=有四条腿,w1为会飞,共有三个类别分别是鸟、狗、鱼,则P(w0|C0)=P(有四条腿|鸟)=训练样本中有四条腿的鸟(实例)的数量,除以样本中鸟(实例)的数量P(w1|C0)=P(会飞|鸟)=训练样本中会飞的鸟(实例)的数量,除以样本中鸟(实例)的数量P(w0,w1|C0)=P(w0|C0)*P(w1|C0)P(有四条腿,会飞|鸟)=P(有四条腿|鸟)*P(会飞|鸟)朴素贝叶斯朴素贝叶斯(Naive Bayes)朴素贝叶斯假设所所有有属属性性之之间间都是互互相相独独立立的的,这也正是算法名称中“朴素(naive)”一词的由来但现实中属属性性之之间间往往往往存存在在依依赖赖,但有意思的是,即使是在朴素贝叶斯算法的独立性假设明显不成立的情况下,它也仍然能得到非常好的分类结果C4.5k-MeansSVMAprioriEMPageRankAdaBoostkNNNave BayesCART十大数据挖掘算法之一朴素贝叶斯分类举例朴素贝叶斯分类举例年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低是好否30-40低是好是30中否一般否40中是一般是40中否好否共14个训练实例。共两个类别,“会买电脑”和不会买电脑。每个训练实例有4个属性。待分类实例:待分类实例:(年龄年龄30,收入中等,是学生,信用一般收入中等,是学生,信用一般)他会买电脑吗?朴素贝叶斯分类举例朴素贝叶斯分类举例年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低是好否30-40低是好是30中否一般否40中是一般是40中否好否计算P(Ci)本例中C0为未买电脑,C1为买了电脑P(未买电脑)=P(买了电脑)=5/14=0.3579/14=0.643P(w)不用算朴素贝叶斯分类举例朴素贝叶斯分类举例年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低是好否30-40低是好是30中否一般否40中是一般是40中否好否计算P(w|未买电脑)w=(年龄年龄30,收入中等,是学生,信用一般收入中等,是学生,信用一般)P(w|Ci)=P(w0|Ci)*P(w1|Ci)*P(w2|Ci)*P(w3|Ci)P(年龄30|未买电脑)=3/5=0.600P(收入中等|未买电脑)=2/5=0.400P(是学生|未买电脑)=1/5=0.200P(信用一般|未买电脑)=2/5=0.400 P(w|未买电脑)=P(w|C0)P(C0)=P(w|未买电脑)*P(未买电脑)=0.019*0.357=0.0070.6*0.4*0.2*0.4=0.019朴素贝叶斯分类举例朴素贝叶斯分类举例年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低是好否30-40低是好是30中否一般否40中是一般是40中否好否计算P(w|买了电脑)w=(年龄年龄30,收入中等,是学生,信用一般收入中等,是学生,信用一般)P(w|Ci)=P(w0|Ci)*P(w1|Ci)*P(w2|Ci)*P(w3|Ci)P(年龄30|买了电脑)=2/9=0.222P(收入中等|买了电脑)=4/9=0.444P(是学生|买了电脑)=6/9=0.667P(信用一般|买了电脑)=6/9=0.667 P(w|买了电脑)=P(w|C1)*P(C1)=P(w|买了电脑)*P(买了电脑)=0.044*0.643=0.0280.222*0.444*0.667*0.667=0.044朴素贝叶斯分类举例朴素贝叶斯分类举例年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低是好否30-40低是好是30中否一般否40中是一般是40中否好否 P(w|C0)*P(C0)=P(w|未买电脑)*P(未买电脑)=0.019*0.357=0.007 P(w|C1)*P(C1)=P(w|买了电脑)*P(买了电脑)=0.044*0.643=0.028 P(不买电脑|w)=P(C0|w)=P(w|(C0)P(C0)/P(w)=0.007/P(w)P(会买电脑|w)=P(C1|w)=P(w|C1)*P(C1)/P(w)=0.028/P(w)w=(年龄年龄30,收入中等,是学生,信用一般收入中等,是学生,信用一般)问题问题1:零概率问题:零概率问题年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低否好否30-40低是好是30中否一般否40中是一般是40中否好否计算P(w|未买电脑)w=(年龄年龄30,收入中等,是学生,信用一般收入中等,是学生,信用一般)P(年龄30|未买电脑)=3/5=0.600P(收入中等|未买电脑)=2/5=0.400P(是学生|未买电脑)=0/5=0P(信用一般|未买电脑)=2/5=0.400 P(w|未买电脑)=P(w|C0)P(C0)=P(w|未买电脑)*P(未买电脑)=00.6*0.4*0*0.4=0问题问题1:零概率问题的解决方案:拉普拉斯校准:零概率问题的解决方案:拉普拉斯校准校准前,概率可能为0校准后,概率接近原概率,但不会变成0其中N为属性值个数问题问题1:零概率问题的解决方案:拉普拉斯校准:零概率问题的解决方案:拉普拉斯校准年龄年龄收入收入学生学生信用信用买了电脑买了电脑30高否一般否40中等否一般是40低是一般是40低否好否30-40低是好是30中否一般否40中是一般是40中否好否计算P(w|未买电脑)w=(年龄年龄30,收入中等,是学生,信用一般收入中等,是学生,信用一般)P(年龄30|未买电脑)=3/5=0.600 P(收入中等|未买电脑)=2/5=0.400 P(是学生|未买电脑)=0/5=0 P(信用一般|未买电脑)=2/5=0.400P(年龄30|未买电脑)=(3+1)/(5+4)=0.444P(收入中等|未买电脑)=(2+1)/(5+4)=0.333 P(是学生|未买电脑)=(0+1)/(5+4)=0.222P(信用一般|未买电脑)=(2+1)/(5+4)=0.333 拉普拉斯校准问题问题2:溢出问题:溢出问题 P(w|Ci)=P(w0|Ci)*P(w1|Ci)*P(w2|Ci)*P(w3|Ci)等式右边分子中各概率的值可能很小,而很小的数再相乘可能会导致浮点数溢出对等式右边的分子求对数,进而将概率相乘转换为相加:注:log(a*b)=log(a)+log(b)你这样乱改公式,贝叶斯知道吗?问题问题2:溢出问题:溢出问题如果不指明底数,我们默认底数为2。y=log(x)为增函数若 P(a)P(b),则 log(P(a)p(w1|x)时决策为w2,对观测值x有 p(w1|x)概率的错误率R1:做出w1决策的所有观测值区域,条件错误概率为p(w2|x)R2:条件错误概率为p(w1|x)。因此平均错误率p(e)可表示成在R1内任一个x值都有p(w2|x)p(w1|x),在R2区内任一个x值都有p(w1|x)p(w2|x)错误率在每个x值处都取小者,因而平均错误率p(e)也必然达到最小,这就证明了按(2-2)式作出的决策,其平均错误率为最小。p(e)也可以(2-8)式写成错误率为图中两个划线部分之和,对应的错误率区域面积为最小。2.2基于最小风险的贝叶斯决策基于最小风险的贝叶斯决策但是错误率最小并不一定是一个普遍适用的最佳选择一个与损失有关联的,更为广泛的概念风险观测样本x实属类别j,而被判为状态i时所造成的损失,Ri则表示了观测值x被判为i类时损失的均值分类则依据Ri,(i=1,.,c)中的最小值,即最小风险来定。例:病理切片例:病理切片w1表示病理切片正常w2表示病例切片异常p(w1|x)与p(w2|x)分别表示了两种可能性的大小定义定义:自然状态:指待识别对象的类别状态空间:由所有自然状态所组成的空间决策:不仅包括根据观测值将样本划归为哪一类别(状态),还可包括其他决策,如拒绝等决策空间:有所有决策组成的空间最小风险贝叶斯决策步骤最小风险贝叶斯决策步骤根据贝叶斯公式计算出后验概率:利用计算出的后验概率及决策表,计算出采取a1,i=1,.,a的条件风险找出使条件风险最小的决策ak,即例例2条件风险条件风险两类决策方法之间的关系两类决策方法之间的关系基于最小错误率的决策是基于最小风险决策的一个特例设损失函数为式中假定对c类只有c个决策,既不考虑“拒绝”等其他情况,(2-17)表明,当作出正确决策(即i=j)时没有损失,而对于任何错误决策,其损失均为1。这样定义的损失函数成为01损失函数。两类决策方法之间的关系两类决策方法之间的关系根据(2-14)式条件风险为最小错误率贝叶斯决策就是0-1损失函数条件下的最小风险贝叶斯决策图图2.4图图2.3 与图与图2.4总结总结条件概率贝叶斯公式朴素贝叶斯分类算法防止零概率:拉普拉斯校准浮点数溢出:对概率求对数决策风险:最小风险贝叶斯分类器最小风险贝叶斯分类器谢谢!
展开阅读全文