朴素贝叶斯分类
“朴素的”
即,假设类条件属性间独立。假定一个属性值对给定类的影响独立于其它属性的值。该假定称作类条件独立。做此假定即是为了简化所需计算,故在此意义下称为“朴素的”。
朴素贝叶斯分类
朴素贝叶斯分类是由简单的贝叶斯分类问题提出:
- 设样本均由n个属性<A1,A2,...,An>描述,因此每个样本可看作是n维空间的一个点,例如未知类别的样本X=(x1,x2,...,xn);
- 假定有m个不同的类别,对应的标签为{C1,C2,....Cm};

分类:预测X的类别为后验概率最大的那个类别:
即,对于未知类别的样本X归到类Ci,当且仅当
P(Ci|X) > P(Cj|X),对于所有的j成立(1≤j≤m,j≠i),即P(Ci|X)最大。
贝叶斯分类的核心步骤
估计类条件概率密度P(X|Ci)。这个就很容易了,其实就是讲样本分为m拨,对每一拨Ci的样本里,单独估计P(X);而关于样本的概率密度函数估计有很多方法,可分为两类:参数估计(最大似然,贝叶斯),非参数估计(直方图,KNN,窗函数),这里就不细说了。。。
朴素贝叶斯时,有
P(X|Ci) = P(A1|Ci) * P(A2|Ci) ... * P(An|Ci)
怎么估算 P (A1|Ci) ?
1. 当属性A1是数值型(欧式空间的连续数)时, P(A1|Ci) 可以表达成,比如一般设为正态分布,P(A1) ~ N(μ, σ^2),只需要估算出μ, σ即可。
2. 当属性A1是名义型(nomial features)时,跟我我们学的知识,显然 P(A1)需要表达成为一个概率分布表,比如
| A1 | 红色 | 黄色 | 绿色 |
| P | 1/6 | 1/6 | 2/3 |
3. 关于Laplace校准
当训练样本某个类别(Ci)中,属性A1没有出现”红色“这个取值 的情况时,P(A1=”红色“|Ci)=0,(其实这个应该就是训练样本量小,不均衡造成的),这会另分类器质量大大下降,为了解决这个问题,就引入了Laplace校准,其思想很简单,就是将”红色“出现的次数设为1,同时黄色,绿色出现次数也均加上1后再估算。
例子1:水源分类
训练样本如下:
A1 A2 A3 A4 A5 A6 A7 C
0.92 0.81 10.45 10.28 0.57 0.63 4.85 1 1.51 1.58 4.56 5.55 1.09 0.08 8.68 1 0.45 0.52 37.94 32.56 1.38 1.02 2.72 1 0.39 0.32 20.98 8.9 1.68 9.8 1.99 1 0.32 0.35 10.22 10.27 0.43 0.18 1.88 2 51.25 4.35 12.21 1.34 34.62 0.15 155.93 2 7.54 4 1.86 7.26 1.15 4.99 32.36 2 4.07 4.45 2.66 8.62 1.14 1.42 24.17 2 0.32 0.48 2.15 0.9 1.15 0.03 2.24 3 0.21 1.03 1.41 0.89 0.9 0.02 3.48 3 1.29 0.43 1.75 1.38 1.5 0.48 4.8 3 0.72 0.79 4.24 1.07 3.19 0 4.24 3
测试样本
1.93 1.96 10.24 8.87 0.72 3.6 10.91
对与C1第一类,P(X|C1)=P(A1|C1)...P(A7|C1)
假设P(A1|C1)服从正太分布,则 P(A1|C1) ~ N(μ, σ^2),u=mean(0.92,1.51,0.45,0.39),σ=std(0.92,1.51,0.45,0.39);同样P(A2|C1),同样P(A1|C2)......
对于P(Ci),显然,三类样本数目相同,均为1/3
分类:
max【P(Ci|X)】,先算P(C1|X),利用贝叶斯公式,算P(X|C1)=P(A1=1.93|C1)...P(A7=10.91|C1),即可
例子2:预测用户是否购买电脑
训练样本如下:
Age Income Student Credit_rating Class:buys_computer 31……40 high no fair yes >40 medium no fair yes >40 low yes fair yes 31……40 low yes excellent yes <=30 low yes fair yes >40 medium yes fair yes <=30 medium yes excellent yes 31……40 medium no excellent yes 31……40 high yes fair yes >40 medium no excellent no <=30 high no fair no <=30 high no excellent no >40 low yes excellent no <=30 medium no fair no
测试样本
["<30", medium, yes, fair]
P(A1="<30"|C1)=2/9,P(A2=medium|C1)=4/9, P(A3=yes|C1)=6/9, P(A4=fair|C1)=6/9, P(C1)=9/14
P(A1="<30"|C2)=3/5,P(A2=medium|C2)=2/5, P(A3=yes|C2)=1/5, P(A4=fair|C2)=2/5, P(C1)=6/14
因此,
P(C1|X) = 2/9 * 4/9 * 6/9 * 6/9 * 9/14 / P(X) = 0.028 / P(x)
P(C2|X) = 3/5 * 2/5 * 1/5 *2/5 * 6/14 / P(X) = 0.008 / P(x)
属于第一类

浙公网安备 33010602011771号