朴素贝叶斯法
朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。
朴素贝叶斯法实际上学习到生成数据的机制,所以属于生成模型。
原理
对于给定的训练数据集,首先基于特征条件独立假设学习输入/输出的联合概率分布;然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y。
相关公式
1.条件概率公式:
P
(
X
∣
Y
)
=
P
(
X
,
Y
)
P
(
Y
)
,
P
(
Y
∣
X
)
=
P
(
X
,
Y
)
P
(
X
)
P(X|Y) =\frac{ P(X,Y)}{P(Y)}, P(Y|X) =\frac{ P(X,Y)}{P(X)}
P(X∣Y)=P(Y)P(X,Y),P(Y∣X)=P(X)P(X,Y)
2.条件独立公式,若X,Y相互独立则:
P
(
X
,
Y
)
=
P
(
X
)
P
(
Y
)
P(X,Y) = P(X)P(Y)
P(X,Y)=P(X)P(Y)
3.全概率公式:
P
(
X
)
=
∑
k
P
(
X
∣
Y
=
Y
k
)
P
(
Y
k
)
,
其
中
∑
k
P
(
Y
k
)
=
1
(
完
备
事
件
组
)
P(X)=\sum_{k}^{}P(X|Y=Y_k)P(Y_k),其中\sum_{k}P(Y_k)=1(完备事件组)
P(X)=k∑P(X∣Y=Yk)P(Yk),其中k∑P(Yk)=1(完备事件组)
4.由上述公式知贝叶斯公式:
P
(
Y
=
Y
k
∣
X
=
x
)
=
P
(
X
=
x
,
Y
=
Y
k
)
P
(
X
=
x
)
=
P
(
Y
=
Y
k
)
P
(
X
∣
Y
k
)
∑
k
P
(
X
∣
Y
=
Y
k
)
P
(
Y
k
)
P(Y=Y_k|X=x)=\frac{ P(X=x,Y=Y_k)}{P(X=x)} = \frac{P(Y=Y_k)P(X|Y_k)}{\sum_{k}^{}P(X|Y=Y_k)P(Y_k)}
P(Y=Yk∣X=x)=P(X=x)P(X=x,Y=Yk)=∑kP(X∣Y=Yk)P(Yk)P(Y=Yk)P(X∣Yk)
根据条件独立公式知:
P
(
Y
=
Y
k
∣
X
=
x
)
=
P
(
Y
=
Y
k
)
P
(
X
∣
Y
k
)
∑
k
P
(
X
∣
Y
=
Y
k
)
P
(
Y
k
)
P(Y=Y_k|X=x)= \frac{P(Y=Y_k)P(X|Y_k)}{\sum_{k}^{}P(X|Y=Y_k)P(Y_k)}
P(Y=Yk∣X=x)=∑kP(X∣Y=Yk)P(Yk)P(Y=Yk)P(X∣Yk)
朴素贝叶斯基本方法
朴素贝叶斯法通过训练数据集学习联合概率分布 P ( X , Y ) P(X,Y) P(X,Y)。具体地,通过学习先验概率分布及条件概率分布。
先验概率分布:
P
(
Y
=
c
k
)
,
k
=
1
,
2
,
⋯
,
K
(4.1)
P(Y=c_k),\quad k=1,2,\cdots,K \tag{4.1}
P(Y=ck),k=1,2,⋯,K(4.1)条件概率分布:
P
(
X
=
x
∣
Y
=
c
k
)
=
P
(
X
(
1
)
=
x
(
1
)
,
⋯
,
X
(
n
)
=
x
(
n
)
∣
Y
=
c
k
)
k
=
1
,
2
,
⋯
,
K
(4.2)
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\tag{4.2}
P(X=x∣Y=ck)=P(X(1)=x(1),⋯,X(n)=x(n)∣Y=ck)k=1,2,⋯,K(4.2)于是学习到联合概率分布
P
(
X
,
Y
)
P(X,Y)
P(X,Y).
朴素贝叶斯法对条件概率分布作了条件独立性的假设。由于这是一个较强的假设,朴素贝叶斯也由此得名。条件独立假设等于是说用于分类的特征在类确定的条件下都是条件独立的。具体地,条件独立假设是:
P
(
X
=
x
∣
Y
=
c
k
)
=
P
(
X
(
1
)
=
x
(
1
)
,
⋯
,
X
(
n
)
=
x
(
n
)
∣
Y
=
c
k
)
=
∏
j
=
1
n
P
(
X
j
=
x
j
∣
Y
=
c
k
)
(4.3)
P(X=x|Y=c_k)=P(X^{(1)} = x^{(1)},\cdots,X^{(n)} = x^{(n)}|Y=c_k)=\prod^n_{j=1}P(X^{j}=x^{j}|Y=c_k)\tag{4.3}
P(X=x∣Y=ck)=P(X(1)=x(1),⋯,X(n)=x(n)∣Y=ck)=j=1∏nP(Xj=xj∣Y=ck)(4.3)
朴素贝叶斯法分类时,对给定的输入x,通过学习到的模型计算后验概率分布
P
(
Y
=
c
k
∣
X
=
x
)
P(Y=c_k|X=x)
P(Y=ck∣X=x),将后验概率最大的类作为x的类输出。
后验概率计算根据贝叶斯定理进行:
P
(
Y
=
c
k
∣
X
=
x
)
=
P
(
Y
=
c
k
,
X
=
x
)
P
(
X
=
x
)
=
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
∑
k
P
(
X
=
x
∣
Y
=
c
k
)
P
(
Y
=
c
k
)
(4.4)
P(Y=c_k|X=x)=\frac{P(Y=c_k,X=x)}{P(X=x)}= \frac{P(X=x|Y=c_k)P(Y=c_k)}{\sum_kP(X=x|Y=c_k)P(Y=c_k)}\tag{4.4}
P(Y=ck∣X=x)=P(X=x)P(Y=ck,X=x)=∑kP(X=x∣Y=ck)P(Y=ck)P(X=x∣Y=ck)P(Y=ck)(4.4)根据条件独立假设将式(4.3)代入式(4.4)有:
P
(
Y
=
c
k
∣
X
=
x
)
=
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
(4.5)
P(Y=c_k|X=x)=\frac{ P(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)}{\sum_kP(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)},k=1,2,\cdots,K\tag{4.5}
P(Y=ck∣X=x)=∑kP(Y=ck)∏jP(X(j)=x(j)∣Y=ck)P(Y=ck)∏jP(X(j)=x(j)∣Y=ck),k=1,2,⋯,K(4.5)这就是朴素贝叶斯分类的基本公式。
朴素贝叶斯分类器可表示为:
y
=
f
(
x
)
=
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
)
,
k
=
1
,
2
,
⋯
,
K
(4.6)
y=f(x)=\argmax_{c_k}\frac{ P(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)}{\sum_kP(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)},k=1,2,\cdots,K\tag{4.6}
y=f(x)=ckargmax∑kP(Y=ck)∏jP(X(j)=x(j)∣Y=ck)P(Y=ck)∏jP(X(j)=x(j)∣Y=ck),k=1,2,⋯,K(4.6)由于式(4.6)中分母对所有
c
k
c_k
ck都是相同的,所以
y
=
arg max
c
k
P
(
Y
=
c
k
)
∏
j
P
(
X
(
j
)
=
x
(
j
)
∣
Y
=
c
k
)
(4.7)
y=\argmax_{c_k} P(Y=c_k)\prod_jP(X^{(j)}=x^{(j)}|Y=c_k)\tag{4.7}
y=ckargmaxP(Y=ck)j∏P(X(j)=x(j)∣Y=ck)(4.7)