本课程来自深度之眼,部分截图来自课程视频以及李航老师的《统计学习方法》第二版。
公式输入请参考: 在线Latex公式+
前情回顾
上节讲朴素贝叶斯算法的时候有3个步骤,第一个步骤公式的条件概率:
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
)
j
=
1
,
2
,
⋯
,
n
;
l
=
1
,
2
,
⋯
,
S
j
;
k
=
1
,
2
,
⋯
,
K
P(X^{(j)} = a_{jl}|Y=c_k)=\cfrac{\sum_{i=1}^NI(x_i^{(j)}= a_{jl},y_i=c_k)}{\sum_{i=1}^NI(y_i=C_k)}\\ j=1,2,\cdots,n;l=1,2,\cdots,S_j;k=1,2,\cdots,K
P(X(j)=ajl∣Y=ck)=∑i=1NI(yi=Ck)∑i=1NI(xi(j)=ajl,yi=ck)j=1,2,⋯,n;l=1,2,⋯,Sj;k=1,2,⋯,K
这里有问题,就是分子有可能为0,就是说某个分类下面没有样本。
这样会导致报错
贝叶斯估计
解决方法就是贝叶斯估计,也就是拉普拉斯平滑,就是分子分母同时加一个数字,但是概率总和为1保持不变。
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
λ
(1)
P(X^{(j)} = a_{jl}|Y=c_k)=\cfrac{\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}\tag1
P(X(j)=ajl∣Y=ck)=∑i=1NI(yi=Ck)+Sjλ∑i=1NI(xi(j)=ajl,yi=ck)+λ(1)
S
j
S_j
Sj是样本
x
i
x_i
xi可取的值的数目,例如性别可取的值的数目为2。
例如现在有5个小球样本,样本的颜色特征有三种(
S
j
=
3
S_j=3
Sj=3),分别是红黄蓝,其中红色1个,黄色4个,蓝色没有。原来的小球概率为:
1
5
,
4
5
,
0
5
→
总
和
为
1
\cfrac{1}{5},\cfrac{4}{5},\cfrac{0}{5}\rightarrow总和为1
51,54,50→总和为1
加上拉普拉斯平滑后(取
λ
=
1
\lambda=1
λ=1):
1
+
1
5
+
3
×
1
,
4
+
1
5
+
3
×
1
,
0
+
1
5
+
3
×
1
=
2
8
,
5
8
,
1
8
→
总
和
为
1
\cfrac{1+1}{5+3\times1},\cfrac{4+1}{5+3\times1},\cfrac{0+1}{5+3\times1}=\cfrac{2}{8},\cfrac{5}{8},\cfrac{1}{8}\rightarrow总和为1
5+3×11+1,5+3×14+1,5+3×10+1=82,85,81→总和为1
可以看到拉普拉斯平滑后概率总和不变。
同样的,对于先验概率有:
P
(
Y
=
c
k
)
=
∑
i
=
1
N
I
(
y
i
=
c
k
)
N
,
k
=
1
,
2
,
⋯
,
K
P(Y=c_k)=\cfrac{\sum_{i=1}^NI(y_i=c_k)}{N},k=1,2,\cdots,K
P(Y=ck)=N∑i=1NI(yi=ck),k=1,2,⋯,K
加入拉普拉斯平滑后变成:
P
(
Y
=
c
k
)
=
∑
i
=
1
N
I
(
y
i
=
c
k
)
+
λ
N
+
K
λ
(2)
P(Y=c_k)=\cfrac{\sum_{i=1}^NI(y_i=c_k)+\lambda}{N+K\lambda}\tag2
P(Y=ck)=N+Kλ∑i=1NI(yi=ck)+λ(2)
K为列表数量
例子4.2
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
X ( 1 ) X^{(1)} X(1) | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | 2 | 2 | 3 | 3 | 3 | 3 | 3 |
X ( 2 ) X^{(2)} X(2) | S | M | M | S | S | S | M | M | L | L | L | M | M | L | L |
Y Y Y | -1 | -1 | 1 | 1 | -1 | -1 | -1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | -1 |
取
λ
=
1
\lambda=1
λ=1,先验概率为:
P
(
Y
=
1
)
=
9
+
1
15
+
2
=
10
17
,
P
(
Y
=
−
1
)
=
6
+
1
15
+
2
=
7
17
P(Y=1)=\cfrac{9+1}{15+2}=\cfrac{10}{17},P(Y=-1)=\cfrac{6+1}{15+2}=\cfrac{7}{17}
P(Y=1)=15+29+1=1710,P(Y=−1)=15+26+1=177
两个特征的取值数量都是3.
当
Y
=
1
Y=1
Y=1,对于第一个特征
P
(
X
(
1
)
=
1
∣
Y
=
1
)
=
2
+
1
9
+
3
=
3
12
,
P
(
X
(
1
)
=
2
∣
Y
=
1
)
=
4
12
,
P
(
X
(
1
)
=
3
∣
Y
=
1
)
=
5
12
P(X^{(1)}=1|Y=1)=\cfrac{2+1}{9+3}=\cfrac{3}{12},P(X^{(1)}=2|Y=1)=\cfrac{4}{12},P(X^{(1)}=3|Y=1)=\cfrac{5}{12}
P(X(1)=1∣Y=1)=9+32+1=123,P(X(1)=2∣Y=1)=124,P(X(1)=3∣Y=1)=125
当
Y
=
1
Y=1
Y=1,对于第二个特征
P
(
X
(
2
)
=
S
∣
Y
=
1
)
=
1
+
1
9
+
3
=
1
12
,
P
(
X
(
2
)
=
M
∣
Y
=
1
)
=
5
12
,
P
(
X
(
2
)
=
L
∣
Y
=
1
)
=
5
12
P(X^{(2)}=S|Y=1)=\cfrac{1+1}{9+3}=\cfrac{1}{12},P(X^{(2)}=M|Y=1)=\cfrac{5}{12},P(X^{(2)}=L|Y=1)=\cfrac{5}{12}
P(X(2)=S∣Y=1)=9+31+1=121,P(X(2)=M∣Y=1)=125,P(X(2)=L∣Y=1)=125
当
Y
=
−
1
Y=-1
Y=−1,对于第一个特征
P
(
X
(
1
)
=
1
∣
Y
=
−
1
)
=
3
+
1
6
+
3
=
4
9
,
P
(
X
(
1
)
=
2
∣
Y
=
−
1
)
=
3
9
,
P
(
X
(
1
)
=
3
∣
Y
=
−
1
)
=
2
9
P(X^{(1)}=1|Y=-1)=\cfrac{3+1}{6+3}=\cfrac{4}{9},P(X^{(1)}=2|Y=-1)=\cfrac{3}{9},P(X^{(1)}=3|Y=-1)=\cfrac{2}{9}
P(X(1)=1∣Y=−1)=6+33+1=94,P(X(1)=2∣Y=−1)=93,P(X(1)=3∣Y=−1)=92
当
Y
=
−
1
Y=-1
Y=−1,对于第二个特征
P
(
X
(
2
)
=
S
∣
Y
=
−
1
)
=
3
+
1
6
+
3
=
4
9
,
P
(
X
(
2
)
=
M
∣
Y
=
−
1
)
=
3
9
,
P
(
X
(
2
)
=
L
∣
Y
=
−
1
)
=
2
9
P(X^{(2)}=S|Y=-1)=\cfrac{3+1}{6+3}=\cfrac{4}{9},P(X^{(2)}=M|Y=-1)=\cfrac{3}{9},P(X^{(2)}=L|Y=-1)=\cfrac{2}{9}
P(X(2)=S∣Y=−1)=6+33+1=94,P(X(2)=M∣Y=−1)=93,P(X(2)=L∣Y=−1)=92
现在给定一个样本,
x
=
(
2
,
S
)
T
x=(2,S)^T
x=(2,S)T,我们分别计算:
P
(
Y
=
1
)
P
(
X
(
1
)
=
2
∣
Y
=
1
)
P
(
X
(
2
)
=
S
∣
Y
=
1
)
=
10
17
⋅
4
12
⋅
2
12
=
0.0327
P(Y=1)P(X^{(1)}=2|Y=1)P(X^{(2)}=S|Y=1)=\cfrac{10}{17}\cdot\cfrac{4}{12}\cdot\cfrac{2}{12}=0.0327
P(Y=1)P(X(1)=2∣Y=1)P(X(2)=S∣Y=1)=1710⋅124⋅122=0.0327
P
(
Y
=
−
1
)
P
(
X
(
1
)
=
2
∣
Y
=
−
1
)
P
(
X
(
2
)
=
S
∣
Y
=
−
1
)
=
7
17
⋅
3
9
⋅
4
9
=
0.0610
P(Y=-1)P(X^{(1)}=2|Y=-1)P(X^{(2)}=S|Y=-1)=\cfrac{7}{17}\cdot\cfrac{3}{9}\cdot\cfrac{4}{9}=0.0610
P(Y=−1)P(X(1)=2∣Y=−1)P(X(2)=S∣Y=−1)=177⋅93⋅94=0.0610
由于后者大,所以样本属于-1类。