贝叶斯篇:贝叶斯的概率推到,朴素贝叶斯分类器及Python实现

在了解贝叶算法前:要有一定的概率与数理统计基础以及注意事项

条件概率

首先,理解这两个公式的前提是理解条件概率,因此先复习条件概率。
P(A|B)=P(AB)P(B) P ( A | B ) = P ( A B ) P ( B )

那么由条件概率出发,看一下变形出来的乘法公式:
P(AB)=P(A)P(B|A)=P(B)P(A|B) P ( A B ) = P ( A ) ⋅ P ( B | A ) = P ( B ) ⋅ P ( A | B )

理解上面公式比较好的方法是看韦恩图。像了解可以先百度。

事件的独立性和概率的乘法定理

有两个事件A和B,若P(A)=P(A|B),即B的发生与否对A发生的可能性毫无影响,则称A,B两事件独立。

若干个独立事件A1,A1,……An之积的概率,等于各事件概率的乘积

P(A1…An)=P(A1)…P(An)

它被称为概率的乘法定理,其重要条件是两事件相互独立。相加是互斥,相乘是独立。

全概率

景点案例:
一个村子与三个小偷,小偷偷村子的事件两两互斥,求村子被偷的概率。
解释:假设这三个小偷编号为 A1,A2,A2 A 1 , A 2 , A 2 ;
偷东西的事件标记为 B B ,不偷的话标记为: B¯¯¯¯ B ¯
那么被偷的概率就是:要么是 A1 A 1 ,要么是 A2 A 2 ,要么是 A3 A 3
如果是 A1 A 1 , 概率是什么呢?首先得是 A1 A 1 ,其次是村子被偷,也即是两个事件都满足,所以是 P(A1B) P ( A 1 B )
同理,可以得到 P(A2B),P(A3B) P ( A 2 B ) , P ( A 3 B )
又因这三个小偷两两互斥,表示不会同时去偷。所以被偷的概率是:
P(B)=P(A1B)+P(A2B)+P(A3B) P ( B ) = P ( A 1 B ) + P ( A 2 B ) + P ( A 3 B )
当然按照条件概率或者乘法公式展开:
P(B)=P(A1)P(B|A1)+P(A2)P(B|A2)+P(A3)P(B|A3) P ( B ) = P ( A 1 ) P ( B | A 1 ) + P ( A 2 ) P ( B | A 2 ) + P ( A 3 ) P ( B | A 3 ) (*)
P(Ai),P(B|Ai) P ( A i ) , P ( B | A i ) 是已知的
问:是不是有想展开为:
P(B)=P(B)P(A1|B)+P(B)P(A1|B)+P(B)P(A1|B) P ( B ) = P ( B ) P ( A 1 | B ) + P ( B ) P ( A 1 | B ) + P ( B ) P ( A 1 | B )
P(B)=P(B)P(A1|B)+P(B)P(A1|B)+P(B)P(A1|B)的冲动?

当然这个式子是没错的,但是体现不了这个问题的解法:分阶段。

(*)式子体现的是问题分为两个阶段:
1)选人,分割问题
2)计算分割的子问题的条件概率

对应的这里来便是:
1)选小偷,谁去偷
2)选定的小偷作为条件,那么他去偷的条件概率是什么

所以将问题拆解为阶段的问题便是全概率公式针对的问题。

贝叶斯公式

贝叶斯公式有意思极了,简单说就是逆全概公式。

前面是问总体看来被偷的概率是多少,现在是知道了总体被偷了这件事,概率并不知道,问你个更有意思的问题,像是侦探断案:是哪个小偷的偷的,计算每个小偷偷的概率。
这个特性用在机器学习,人工智能领域相当好用。
也就是求: P(Ai|B)=P(AiB)P(B) P ( A i | B ) = P ( A i B ) P ( B )
Ai:iB: A i : 小 偷 i 干 的 ; B : 村 子 被 偷 了
首先是一个淳朴的条件概率的展开。
分母里出现了 P(B) P ( B ) ,刚刚讨论的全概公式拿来用一用!
P(AiB)=P(Ai)P(B|Ai) P ( A i B ) = P ( A i ) ⋅ P ( B | A i )

对应到上面的例子就鲜活一些:村子被偷了,求 Ai A i 偷的概率。
自然现在条件是 P(B) P ( B ) ,分子变形为 P(AiB)=P(Ai)P(B|Ai)i) P ( A i B ) = P ( A i ) ⋅ P ( B | A i ) i ) ,是因为假定就是 Ai A i 偷的,这是一个已知的概率。
分母 P(B)=ni=1P(Ai)P(B|Ai) P ( B ) = ∑ i = 1 n P ( A i ) P ( B | A i )

注意事项

1、朴素贝叶斯假设各个特征之间相互独立,所以称为朴素。

2、特征值之间是离散的,就直接计算概率值;若是连续值,则认为服从高斯分布,用均值和方差计算概率密度函数。

3、这里假定特征值的个数已知,实际情况下,并不一定知道。

4、数据文件见参考文献2的链接。

5、当特征属性的概率值为o时,可能造成分类误差,解决办法是加入Laplace校准,也成加一平滑,使分子不为0.

6、如果概率相乘,小数太多容易溢出,则可以修改为log,把乘法改成加法,避免误差。

7、经典分析案例:印第安人糖尿病概率,社交账号真实分类,文本分类,新闻分类等等。

朴素贝叶斯

朴素贝叶斯(Naive Bayesian)是最为广泛使用的分类方法,它以概率论为基础,是基于贝叶斯定理和特征条件独立假设的分类方法。
朴素贝叶斯,朴素在什么地方?Q2:朴素贝叶斯,朴素在什么地方?
之所以叫朴素贝叶斯,因为它简单、易于操作,基于特征独立性假设,假设各个特征不会相互影响,这样就大大减小了计算概率的难度。
朴素贝叶斯(Naive Bayesian)是基于贝叶斯定理和特征条件独立假设的分类方法,它通过特征计算分类的概率,选取概率大的情况进行分类,因此它是基于概率论的一种机器学习分类方法。因为分类的目标是确定的,所以也是属于监督学习。

案例分析:直通车

贝叶斯的几种估计:直通车

你可能感兴趣的:(python,algorithm,principle/原理,算法原理,分类算法专栏)