朴素贝叶斯
概述
**朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。**对于给定的训练数据集,首先基于特征条件独立假设学习输入输出的联合概率发布;然后基于此模型,对给定的输入 x x x,利用贝叶斯定理求出厚颜概率最大的输出 y y y。朴素贝叶斯法实现简单,学习与预测的效率都很高,是一种常用的方法
思想:朴素贝叶斯假设(条件独立性假设)最简单的概率图模型
推导
设输入空间 X ⊆ R n \mathcal{X}\subseteq\Bbb{R}^n X⊆Rn为 n n n维向量的集合,输出空间为类标记集合 Y = { c 1 , c 2 , ⋯ , c k } \mathcal{Y}=\lbrace c_1,c_2,\cdots ,c_k\rbrace Y={c1,c2,⋯,ck}。输入为特征向量 x ϵ X x\epsilon\mathcal{X} xϵX,输出为类标记 y ϵ Y y\epsilon\mathcal{Y} yϵY。 X X X是定义在输入空间 X \mathcal{X} X上的随机变量, Y Y Y是定义在输出空间 Y \mathcal{Y} Y上的随机变量。
设数据集为 D = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x i , y i ) , ⋯ , ( x N , y N ) } D=\lbrace (x_1,y_1),(x_2,y_2),\cdots,(x_i,y_i),\cdots, (x_N,y_N) \rbrace D={(x1,y1),(x2,y2),⋯,(xi,yi),⋯,(xN,yN)}由 P ( X , Y ) P(X,Y) P(X,Y)独立同分布产生。
求
P
(
X
,
Y
)
P(X,Y)
P(X,Y)分布则求
P
(
Y
)
P(Y)
P(Y)和
P
(
X
∣
Y
)
P(X|Y)
P(X∣Y)
P
(
Y
=
c
k
)
,
k
=
1
,
2
,
⋯
,
K
P
(
X
=
x
∣
Y
=
c
k
)
=
P
(
X
(
1
)
=
x
(
1
)
,
⋯
,
X
(
n
)
=
x
(
n
)
∣
Y
=
c
k
)
,
k
=
1
,
2
,
⋯
,
K
=
P
(
x
(
1
)
∣
Y
=
c
k
)
⋅
P
(
x
(
2
)
∣
Y
=
c
k
)
⋯
P
(
x
(
n
)
∣
Y
=
c
k
)
=
∏
j
=
1
n
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
\begin{aligned} P(Y&=c_k), \quad k=1,2,\cdots,K \\ P(X=x|Y=c_k)&=P(X^{(1)}=x^{(1)},\cdots,X^{(n)}=x^{(n)}|Y=c_k),\quad k=1,2,\cdots,K \\ &=P(x^{(1)}|Y=c_k)\cdot P(x^{(2)}|Y=c_k)\cdots P(x^{(n)}|Y=c_k) \\ &=\prod_{j=1}^nP(X^{(j)}=x^{(j)}|Y=c_k) \\ \end{aligned}
P(YP(X=x∣Y=ck)=ck),k=1,2,⋯,K=P(X(1)=x(1),⋯,X(n)=x(n)∣Y=ck),k=1,2,⋯,K=P(x(1)∣Y=ck)⋅P(x(2)∣Y=ck)⋯P(x(n)∣Y=ck)=j=1∏nP(X(j)=x(j)∣Y=ck)
朴素贝叶斯分类时,对给定的输入
x
x
x,通过学习到的模型计算后验概率发布得到预测输出
y
y
y
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
)
∑
k
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
=
P
(
Y
=
c
k
)
∏
j
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
∑
k
P
(
Y
=
c
k
)
∏
j
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
,
k
=
1
,
2
,
⋯
,
K
\begin{aligned} 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)}{\sum\limits_kP(X=x|Y=c_k)P(Y=c_k)} \\ &=\frac{P(Y=c_k)\prod\limits_jP(X^{(j)}=x^{(j)}|Y=c_k)}{\sum\limits_kP(Y=c_k)\prod\limits_jP(X^{(j)}=x^{(j)}|Y=c_k)},\quad k=1,2,\cdots,K \end{aligned}
P(Y=ck∣X=x)=P(X=x)P(X=x,Y=ck)=k∑P(X=x∣Y=ck)P(Y=ck)P(X=x∣Y=ck)P(Y=ck)=k∑P(Y=ck)j∏P(X(j)=x(j)∣Y=ck)P(Y=ck)j∏P(X(j)=x(j)∣Y=ck),k=1,2,⋯,K
上式是朴素贝叶斯分类的基本方式。则朴素贝叶斯分类器可表示为:
y
^
=
arg
max
c
k
P
(
Y
=
c
k
)
∏
j
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
∑
k
P
(
Y
=
c
k
)
∏
j
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
\begin{aligned} \hat{y}=\mathop{\arg\max}_{c_k}\frac{P(Y=c_k)\prod\limits_jP(X^{(j)}=x^{(j)}|Y=c_k)}{\sum\limits_kP(Y=c_k)\prod\limits_jP(X^{(j)}=x^{(j)}|Y=c_k)} \end{aligned}
y^=argmaxckk∑P(Y=ck)j∏P(X(j)=x(j)∣Y=ck)P(Y=ck)j∏P(X(j)=x(j)∣Y=ck)
注意到,上式中的分母对所有
c
k
c_k
ck都是相同的,所以
y
^
=
arg
max
c
k
P
(
Y
=
c
k
)
∏
j
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
\begin{aligned} \hat y=\mathop{\arg\max}_{c_k}P(Y=c_k)\prod\limits_jP(X^{(j)}=x^{(j)}|Y=c_k) \end{aligned}
y^=argmaxckP(Y=ck)j∏P(X(j)=x(j)∣Y=ck)
参考:
李航-----统计学方法