您好,欢迎访问三七文档
朴素贝叶斯算法NaiveBayes算法流程图确定特征属性获取训练样本对每个类别计算P(yi)对每个特征属性计算所有划分的条件概率对每个类别计算P(x|yi)P(yi)以最大项作为所属类别P(x|yi)P(yi)准备工作阶段分类训练阶段应用阶段朴素贝叶斯算法原理01贝叶斯定理朴素贝叶斯算法流程02购买电脑实例03朴素贝叶斯算法存在的问题及应用04TableofContents内容大纲朴素贝叶斯算法原理•朴素贝叶斯算法是分类算法中的一种。朴素贝叶斯的思想基础是这样的:对于给定的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大。就把此待分类项归于哪个类别。•通俗来说,就好比你在街上看到一个黑人,我问你你猜这个人哪里来的,你十有八九猜非洲。为什么呢?因为黑人中非洲人的比率最高,当然人家也可能是美洲人或亚洲人,但在没有其它可用信息下,我们会选择条件概率最大的类别,这就是朴素贝叶斯的思想基础。},,,{21naaaXiy)|(xyPi•条件概率:表示事件B已经发生的前提下,事件A发生的概率,叫做事件B发生下事件A的条件概率。其基本求解公式为:•为了得出,我们不加证明的给出贝叶斯定理。贝叶斯分类的基础——贝叶斯定理)|(BAP)()()|(BPABPBAP)()()|(|APBPBAPABP)()|(ABP先验概率和后验概率•先验概率:由以往的数据分析得到的概率。•后验概率:得到信息之后再重新加以修正的概率。朴素贝叶斯算法流程•1.设为一个待分类项,而每个为的一个特征属性。且特征属性之间相互独立(此处是朴素贝叶斯的假设)。•2.设为一个类别集合。•3.计算。•4.如果则。},,{21maaaXiax},,,{21myyyC)|(,,|),|(),|(321xyPxyPxyPxyPm)(max)|(xyPk})|(,,|),|(),|({321xyPxyPxyPxyPm)(kyx•接下来,由于假设各个特征属性都是条件独立的,那么根据贝叶斯定理有如下推导,因为分母对于所有类别为常数,因此将分子最大化即可。•即:mjijiiimiiiiyaPyPyPyaPyaPyaPyPyxP121)|()()()|()|()|()(|)(朴素贝叶斯分类例子RIDageincomestudentCreditratingClass:buyscomputer1=30highnofairno2=30highnoexcellentno331-40highnofairyes440mediumnofairyes540lowyesfairyes640lowyesexcellentno731-40lowyesexcellentyes8=30mediumnofairno9=30lowyesfairNo1040mediumyesfairyes11=30mediumyesexcellentyes1231-40mediumnoexcellentyes1331-40highyesfairyes1440mediumnoexcellentno数据样本用属性age,income,student和creditrating描述。类别属性buyscomputer具有两个不同值(即{yes,no})。设对应于类buyscomputer=“yes”,而对应于类buyscomputer=“no”。我们分类的未知样本为:X=(age==30,income=medium,student=yes,credit_rating=fair).1C2C1.我们需要最大化P(X|)P(),i=1,2。每个类的先验概率P()可以根据训练样本计算:P(buys_computer=yes)=9/14=0.643P(buys_computer=no)=5/14=0.357iCiCiC2.计算后验概率P(X|),i=1,2(假设属性独立)P(age=“30”|buys_computer=“yes”)=0.222P(age=“30”|buys_computer=“no”)=0.600P(income=“medium”|buys_computer=“yes”)=0.444P(income=“medium”|buys_computer=“no”)=0.400P(student=“yes”|buys_computer=“yes”)=0.667P(student=“yes”|buys_computer=“no”)=0.200P(credit_rating=“fair”|buys_computer=“yes”)=0.667P(credit_rating=“fair”|buys_computer=“no”)=0.400•P(X|buys_computer=“yes”)=0.222×0.444×0.667×0.667=0.044•P(X|buys_computer=“no”)=0.600×0.400×0.200×0.400=0.019iC3.对每个类,计算P(X|)P()P(X|buys_computer=“yes”)P(buys_computer=“yes”)=0.044×0.643=0.028P(X|buys_computer=“no”)P(buys_computer=“no”)=0.019×0.357=0.007•因此,对于样本X,朴素贝叶斯分类预测buys_computer=”yes”。iCiCiC朴素贝叶斯算法存在的问题及应用•朴素贝叶斯分类器(NaiveBayesClassifier,或NBC)发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。同时,NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。理论上,NBC模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的,这给NBC模型的正确分类带来了一定影响。•朴素贝叶斯算法目前在过滤垃圾邮件和文字分类方面得到很好的应用。
本文标题:朴素贝叶斯算法
链接地址:https://www.777doc.com/doc-5751231 .html