朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯

朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯(1)

作者:程Sir

本文由 程SIR说 授权发布,版权所有归作者,转载请联系作者!

我个人认为,在数据挖掘领域,分类算法是最为重要。它根据以往的数据来对新的数据做预测。垃圾邮件判断,潜在用户挖掘等都会用到分类算法。今天把总结朴素贝叶斯算法的学习心得。

#Bayes是谁#

Thomas Bayes,英国数学家。约1701年出生于伦敦,做过神甫。1742年成为英国皇家学会会员。1761年4月7日逝世。贝叶斯在数学方面主要研究概率论。他首先将归纳推理法用于概率论基础理论,并创立了贝叶斯统计理论,对于统计决策函数、统计推断、统计的估算等做出了贡献。

#Bayes定理#

通俗来说就是:

这时,来了第七位患者,一位“打喷嚏的工人”,请推断他得了啥病。

这就是一个分类问题。现状把所有患者分成了三类“感冒”“过敏”“脑震荡”,我们的目的是把“打喷嚏的工人”分到这三类中的一类中。具体做法为:根据Bayes定理,计算这个“打喷嚏的工人”患三种疾病的概率。

朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯(2)

解释:

'&'项可以分成两个,是因为“症状”变量和“职业”变量是相互独立的,没什么联系

感冒的有3个,其中打喷嚏的2个,所以P(打喷嚏|感冒)=2/3

感冒的有3个,其中工人1个,所以P(工人|感冒)=1/3

一共六个人,感冒3个,所以P(感冒)=1/2

一共六个人,打喷嚏的3个,所以P(打喷嚏)=1/2

一共六个人,其中工人2个,所以P(工人)=1/3

按照这个方法,计算“打喷嚏的工人”另外两种疾病的概率;

朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯(3)

可见,“打喷嚏的工人”患感冒概率66.7%,初步判断应该是感冒。但是一般的分类器都要根据具体业务设置阈值,对于人命关天的事,最好严格一些,比如95%以上才做出判断,那么这里最好的答案应该是“机器无法判断,建议去让医生看看”。

#补充说明#

算法叫做朴素贝叶斯(NaiveBayes),是因为算法是在太简单了

‘&’能分开两个概率相乘是因为变量的独立性,如果不独立的话,这样计算会有误差

分母项 P(打喷嚏)× P(工人)在每次计算中都一样,可以只互相比较分子计算的结果作出判断

例子中最初的6个病人的数据叫做训练集

#训练集样本较小情况下的概率调整#

P(打喷嚏|过敏)和P(工人|过敏)分别为1,0,实际中不可能是这样的,因为没有什么是一定不发生,也没有什么100%发生。出现这种情况是因为我们的样本太少,如果样本足够多,概率会相对靠谱。

在起步阶段,样本就是很少,为了避免0,1这种极端概率,需要人为做一些数学变换。比如,对过敏来说,每个症状的初始概率都为50%,当来了一个过敏病人,如果出现打喷嚏,那么P(打喷嚏|过敏)的概率就提升一点点,反之如果不打喷嚏,则P(打喷嚏|过敏)的概率就下降一点点。这样使得每一个概率都变得在(0,1)之间平滑变化,对其他的变量也这样处理。在《Programming Collective Intelligence》这本书中给出了这个变换的公式,我套用到过敏来说就是:

朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯(4)

所以,在上例中计算第二种疾病的时候,如果用调整后的概率结果如下:

朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯(5)

#连续变量处理#

对于上例来说,不论是职业还是症状,都是离散变量,也就是取值数有限,这样都可以通过数个数的方式来计算概率(古典概率模型),但是如果出现连续型变量就不能靠数个数了,比如身高,可以有175cm 176cm 176.1cm 176.11cm,无穷尽……

处理方式一:离散化

身高来说,可以就精确到cm,那么基于现实世界从40cm(婴儿)到230cm(姚明)基本就够用了,可以数个数。要么就分段【小于100cm】【100-150cm】【150-180cm】……这样也可以。

处理方式二:利用变量的分布来计算概率

一般来说自然界中的大部分变量都是符合正态分布的,正态分布是一个钟型曲线,概率意义是,一次实验取到均值附近概率最大,去到远离均值的值的概率越来越小。那么可以计算样本的均值和标准差,利用Z值【(实际值-均值)/标准差】,查标准正态分布表,查出取到每个样本值的概率。

当然,如果明确知道变量属于某个其他分布,如泊松分布,那么就直接用分布函数求概率即可。

#数学表达以备装B之需#

朴素贝叶斯分类的正式定义如下:

朴素贝叶斯算法研究现状如何,分类算法之朴素贝叶斯(6)

文章来源36大数据,www.36dsj.com ,微信号dashuju36 ,36大数据是一个专注大数据创业、大数据技术与分析、大数据商业与应用的网站。分享大数据的干货教程和大数据应用案例,提供大数据分析工具和资料下载,解决大数据产业链上的创业、技术、分析、商业、应用等问题,为大数据产业链上的公司和数据行业从业人员提供支持与服务。

End.

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页