朴素贝叶斯法
设输入空间 x ∈ R n x\in R^n x∈Rn,输出空间为类标记集合 y = { c 1 . c 2 , . . . c k } y=\{c_1.c_2,...c_k \} y={c1.c2,...ck}
先验概率
先验概率是根据以往经验和分析得到的概率,先验概率分布为
P
(
Y
=
c
k
)
,
k
=
1
,
2
,
.
.
.
K
(1)
P(Y=c_k),k=1,2,...K \tag 1
P(Y=ck),k=1,2,...K(1)
例如15个球中,红球(
c
1
c_1
c1)有3个;白球(
c
2
c_2
c2)有8个;绿球(
c
3
c_3
c3)有4个
则 P ( c 1 ) = 1 / 5 , P ( c 2 ) = 8 / 15 , P ( c 3 ) = 4 / 15 P(c_1)=1/5,P(c_2)=8/15,P(c_3)=4/15 P(c1)=1/5,P(c2)=8/15,P(c3)=4/15
条件概率
条件概率是指事件A在事件B已经发生条件下发生的概率,条件概率分布为
P
(
X
=
x
∣
Y
=
c
k
)
=
P
(
X
(
1
)
=
x
(
1
)
,
X
(
2
)
=
x
(
2
)
,
.
.
.
,
X
(
n
)
=
x
(
n
)
∣
Y
=
c
k
)
,
k
=
1
,
2
,
.
.
.
,
K
(2)
P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},X^{(2)}=x^{(2)},...,X^{(n)}=x^{(n)}|Y=c_k), k=1,2,...,K \tag 2
P(X=x∣Y=ck)=P(X(1)=x(1),X(2)=x(2),...,X(n)=x(n)∣Y=ck),k=1,2,...,K(2)
例如球有三种属性
- X ( 1 ) X^{(1)} X(1)材质:塑料;金属
- X ( 2 ) X^{(2)} X(2)质量:100g;300g
- X ( 3 ) X^{(3)} X(3)体积: 50 c m 3 50cm^3 50cm3; 100 c m 3 100cm^3 100cm3
某个红球
x
1
=
(
x
1
(
1
)
=
塑
料
,
x
1
(
2
)
=
100
g
,
x
1
(
3
)
=
50
c
m
3
)
x_1=(x_1^{(1)}=塑料,x_1^{(2)}=100g,x_1^{(3)}=50cm^3)
x1=(x1(1)=塑料,x1(2)=100g,x1(3)=50cm3)具有前述属性的概率为
P
(
x
1
∣
c
1
)
=
P
(
x
(
1
)
=
塑
料
,
x
(
2
)
=
100
g
,
x
(
3
)
=
50
c
m
3
∣
c
1
)
(3)
P(x_1|c_1)=P(x^{(1)}=塑料,x^{(2)}=100g,x^{(3)}=50cm^3|c_1) \tag 3
P(x1∣c1)=P(x(1)=塑料,x(2)=100g,x(3)=50cm3∣c1)(3)
朴素贝叶斯
朴素贝叶斯对条件概率分布做了条件独立性假设。例如假设球的三种属性间是相互独立的,事实上材质的密度会影响质量和体积,但我们假设不会影响,这虽然会降低模型的准确率,但能简化模型的复杂度
那么(2)式就可化为
P
(
X
=
x
∣
Y
=
c
k
)
=
∏
i
=
1
n
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
(4)
P(X=x|Y=c_k)=\prod_{i=1}^nP(X^{(j)}=x^{(j)}|Y=c_k) \tag 4
P(X=x∣Y=ck)=i=1∏nP(X(j)=x(j)∣Y=ck)(4)
此时(3)式就可化为
P
(
x
1
∣
c
1
)
=
P
(
塑
料
∣
c
1
)
×
P
(
100
g
∣
c
1
)
×
P
(
50
c
m
3
∣
c
1
)
(5)
P(x_1|c_1)=P(塑料|c_1)\times P(100g|c_1)\times P(50cm^3|c_1) \tag 5
P(x1∣c1)=P(塑料∣c1)×P(100g∣c1)×P(50cm3∣c1)(5)
后验概率
后验概率是指依据“结果”的信息计算其最有可能属于哪种种类的概率,例如根据球的属性计算该球颜色的概率。即计算
P
(
Y
=
c
k
∣
X
=
x
)
(6)
P(Y=c_k|X=x) \tag 6
P(Y=ck∣X=x)(6)
后验概率通过贝叶斯定理获得,贝叶斯公式为
P
(
A
∣
B
)
=
P
(
A
B
)
/
P
(
B
)
(7)
P(A|B)=P(AB)/P(B) \tag 7
P(A∣B)=P(AB)/P(B)(7)
由(6)可得
P
(
Y
=
c
k
∣
X
=
x
)
=
P
(
X
=
x
,
Y
=
c
k
)
P
(
X
=
x
)
=
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
P
(
X
=
x
)
(8)
\begin{array}{ll} P(Y=c_k|X=x) & =\frac{P(X=x,Y=c_k)}{P(X=x)} \\ & = \frac{P(X=x|Y=c_k)P(Y=c_k)}{P(X=x)} \end{array} \tag 8
P(Y=ck∣X=x)=P(X=x)P(X=x,Y=ck)=P(X=x)P(X=x∣Y=ck)P(Y=ck)(8)
全概率公式
如果事件
B
1
,
B
2
,
.
.
.
,
B
n
B_1,B_2,...,B_n
B1,B2,...,Bn构成一个完备事件组,即两两之间相互独立没有交集,且全部的合集为全集,那么对任一事件A有
P
(
A
)
=
P
(
A
B
1
)
+
P
(
A
B
2
)
+
.
.
.
+
P
(
A
B
n
)
(9)
P(A)=P(AB_1)+P(AB_2)+...+P(AB_n) \tag 9
P(A)=P(AB1)+P(AB2)+...+P(ABn)(9)
我们知道集合
y
=
{
c
1
.
c
2
,
.
.
.
c
k
}
y=\{c_1.c_2,...c_k \}
y={c1.c2,...ck}中的所有事件构成一个完备事件组,那么
P
(
X
=
x
)
=
∑
k
P
(
X
=
x
,
Y
=
c
k
)
(10)
P(X=x)=\sum_kP(X=x,Y=c_k) \tag{10}
P(X=x)=k∑P(X=x,Y=ck)(10)
(10)(7)(4)先后代入(8)式可得
P
(
Y
=
c
k
∣
X
=
x
)
=
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
∑
k
P
(
X
=
x
,
Y
=
c
k
)
=
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
∑
k
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
=
P
(
Y
=
c
k
)
∏
j
=
1
n
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
∑
k
P
(
Y
=
c
k
)
∏
j
=
1
n
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
(11)
\begin{array}{ll} P(Y=c_k|X=x) & = \frac{P(X=x|Y=c_k)P(Y=c_k)}{\sum_kP(X=x,Y=c_k)} \\ & = \frac{P(X=x|Y=c_k)P(Y=c_k)}{\sum_kP(X=x|Y=c_k)P(Y=c_k)} \\ & = \frac{P(Y=c_k)\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)}{\sum_kP(Y=c_k)\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k)} \end{array} \tag {11}
P(Y=ck∣X=x)=∑kP(X=x,Y=ck)P(X=x∣Y=ck)P(Y=ck)=∑kP(X=x∣Y=ck)P(Y=ck)P(X=x∣Y=ck)P(Y=ck)=∑kP(Y=ck)∏j=1nP(X(j)=x(j)∣Y=ck)P(Y=ck)∏j=1nP(X(j)=x(j)∣Y=ck)(11)
后验概率最大化
在(11)式计算的后验概率中可以得到一个实例属于不同种类的概率,例如已知一个球 x 1 = ( x 1 ( 1 ) = 塑 料 , x 1 ( 2 ) = 100 g , x 1 ( 3 ) = 50 c m 3 ) x_1=(x_1^{(1)}=塑料,x_1^{(2)}=100g,x_1^{(3)}=50cm^3) x1=(x1(1)=塑料,x1(2)=100g,x1(3)=50cm3)是红色的概率为1/5;是白色的概率为3/5;是绿色的概率为1/5,那么我们可以估测该球应该是白色。后验概率最大化实际上等价于期望风险最小化,此处不做证明
那么朴素贝叶斯分类器可表示为
y
=
a
r
g
m
a
x
c
k
P
(
Y
=
c
k
∣
X
=
x
)
(12)
y=\mathop{argmax}_{c_k}P(Y=c_k|X=x) \tag {12}
y=argmaxckP(Y=ck∣X=x)(12)
(11)式中分母对于所有
c
k
c_k
ck都是相同的,所以
y
=
a
r
g
m
a
x
c
k
P
(
Y
=
c
k
)
∏
j
=
1
n
P
(
X
(
j
)
=
x
(
i
)
∣
Y
=
c
k
)
(13)
y=\mathop{argmax}_{c_k}P(Y=c_k)\prod_{j=1}^nP(X^{(j)}=x^{(i)}|Y=c_k) \tag {13}
y=argmaxckP(Y=ck)j=1∏nP(X(j)=x(i)∣Y=ck)(13)
极大似然估计
在(13)式的朴素贝叶斯分类器中有两个参数需要确定
- P ( Y = c k ) P(Y=c_k) P(Y=ck)
- P ( X ( j ) = x ( j ) ∣ Y = c k ) P(X^{(j)}=x^{(j)}|Y=c_k) P(X(j)=x(j)∣Y=ck)
这两个参数可以使用极大似然估计法得出结果
P
(
Y
=
c
k
)
=
∑
i
=
1
N
I
(
y
i
=
c
k
)
N
(14)
P(Y=c_k)=\frac{\sum_{i=1}^NI(y_i=c_k)}{N} \tag {14}
P(Y=ck)=N∑i=1NI(yi=ck)(14)
其中I(x)为指示函数,即I(true)=1;I(false)=0。N为样本容量。例如先验概率中的红白球的概率就是通过极大似然估计法得出的。
同理
P
(
X
(
j
)
=
a
j
l
∣
Y
=
c
k
)
=
∑
i
=
1
N
I
(
x
i
(
j
)
=
a
j
l
,
y
i
=
c
k
)
∑
i
=
1
N
I
(
y
i
=
c
k
)
(15)
P(X^{(j)}=a_{jl}|Y=c_k)=\frac{\sum_{i=1}^NI(x_i^{(j)}=a_{jl},y_i=c_k)}{\sum_{i=1}^NI(y_i=c_k)} \tag {15}
P(X(j)=ajl∣Y=ck)=∑i=1NI(yi=ck)∑i=1NI(xi(j)=ajl,yi=ck)(15)
其中
a
j
l
a_{jl}
ajl为
X
(
j
)
X^{(j)}
X(j)的可能取值,
l
=
1
,
2
,
.
.
.
S
j
l=1,2,...S_j
l=1,2,...Sj。例如球的质量属性
X
(
2
)
X^{(2)}
X(2)可能取值为
- a 21 = 100 g a_{21}=100g a21=100g
- a 22 = 300 g a_{22}=300g a22=300g
3个红球中,质量为100g的有两个,那么 P ( X ( 2 ) = 100 g ∣ c 1 ) = 2 / 3 P(X^{(2)}=100g|c_1)=2/3 P(X(2)=100g∣c1)=2/3
贝叶斯估计
使用极大似然估计可能会出现所要估计的概率值为0的情况。例如3个红球中,质量为100g的球有3个,那么 P ( X ( 2 ) = 200 g ∣ c 1 ) = 0 P(X^{(2)}=200g|c_1)=0 P(X(2)=200g∣c1)=0,此时需要计算200g的球所属颜色时就无法进行。解决这一问题的方法是采用贝叶斯估计,即在极大似然估计的基础上加一个常数 λ ≥ 0 \lambda \geq0 λ≥0
那么先验概率的贝叶斯估计为
P
λ
(
Y
=
c
k
)
=
∑
i
=
1
N
I
(
y
i
=
c
k
)
+
λ
N
+
K
λ
(16)
P_\lambda(Y=c_k)=\frac{\sum_{i=1}^NI(y_i=c_k)+\lambda}{N+K\lambda} \tag {16}
Pλ(Y=ck)=N+Kλ∑i=1NI(yi=ck)+λ(16)
K为集合
y
=
{
c
1
.
c
2
,
.
.
.
c
k
}
y=\{c_1.c_2,...c_k \}
y={c1.c2,...ck}的样本容量
同理,条件概率的贝叶斯估计为
P
λ
(
X
(
j
)
=
a
j
l
∣
Y
=
c
k
)
=
∑
i
=
1
N
I
(
x
i
(
j
)
=
a
j
l
,
y
i
=
c
k
)
+
λ
∑
i
=
1
N
I
(
y
i
=
c
k
)
+
S
j
λ
(15)
P_\lambda(X^{(j)}=a_{jl}|Y=c_k)=\frac{\sum_{i=1}^NI(x_i^{(j)}=a_{jl},y_i=c_k)+\lambda}{\sum_{i=1}^NI(y_i=c_k)+S_j\lambda} \tag {15}
Pλ(X(j)=ajl∣Y=ck)=∑i=1NI(yi=ck)+Sjλ∑i=1NI(xi(j)=ajl,yi=ck)+λ(15)
其中
S
j
S_j
Sj为
X
(
j
)
X^{(j)}
X(j)的可能取值的总数