在现实世界中,由许多客观现象的发生,就每一次观察和测量来说,即使在基本条件保持不变的情况下也具有不确定性。只有在大量重复的观察下,其结果才能呈现出某种规律性,即对它们观察到的特征具有统计特性。特征值不再是一个确定的向量,而是一个随机向量。此时,只能利用模式集的统计特性来分类,以使分类器发生错误的概率最小。这就是贝叶斯判别的基本出发点。
简介
给定一个输入 x \mathbf{x} x,我们想要确定它属于 w 1 w_1 w1类还是 w 2 w_2 w2类。而根据贝叶斯判别思想,我们需要观察或者说,计算 x x x是来自于 w 1 w_1 w1类的概率大还是来自 w 2 w_2 w2类的概率大。因此,若
P ( w 1 ∣ x ) > P ( w 2 ∣ x ) P(w_1|\mathbf{x}) > P(w_2 | \mathbf{x}) P(w1∣x)>P(w2∣x)
则 x ∈ w 1 \mathbf{x} \in w_1 x∈w1。相反,则 x ∈ w 2 \mathbf{x} \in w_2 x∈w2。
而由贝叶斯定理可知,后验概率 P ( w i ∣ x ) P(w_i|\mathbf{x}) P(wi∣x)可由类别的先验概率 P ( w i ∣ x ) P(w_i|\mathbf{x}) P(wi∣x)和 x \mathbf{x} x的先验概率 P ( x ∣ w i ) P(\mathbf{x}|w_i) P(x∣wi)得到,
P ( w i ∣ x ) = P ( x ∣ w i ) P ( w i ) P ( x ) = P ( x ∣ w i ) P ( w i ) ∑ i = 1 2 P ( x ∣ w i ) P ( w i ) P(w_i | \mathbf{x}) = \frac{P(\mathbf{x}|w_i)P(w_i)}{P(\mathbf{x})} = \frac{P(\mathbf{x}|w_i)P(w_i)}{\sum_{i = 1}^{2}P(\mathbf{x}|w_i)P(w_i)} P(wi∣x)=P(x)P(x∣wi)P(wi)=∑i=12P(x∣wi)P(wi)P(x∣wi)P(wi)
这里的 P ( x ∣ w i ) P(\mathbf{x} | w_i) P(x∣wi)也被称为似然函数。因此,原先判别式可改写为,若
P ( x ∣ w 1 ) P ( w 1 ) > P ( x ∣ w 2 ) P ( w 2 ) P(\mathbf{x}|w_1)P(w_1) > P(\mathbf{x}|w_2)P(w_2) P(x∣w1)P(w1)>P(x∣w2)P(w2)
则 x ∈ w 1 \mathbf{x} \in w_1 x∈w1。相反,则 x ∈ w 2 \mathbf{x} \in w_2 x∈w2。
贝叶斯最小风险判别
前面说到,贝叶斯判别函数的基本思想或者说优化目标是使得分类器发生的错误率最小。然而,实际任务中,不同的错误所带来的风险也是不同的。比如,将一个身患感冒的病人误诊为肺癌和误诊为肺炎所造成的风险是肯定不同的。因此,当考虑到对于某一类的错误判决要比对另一类的判决更为关键时,就需要把最小错误概率的贝叶斯判别做一些修正,提出条件平均风险。
对 M M M类问题,我们令 r i j ( x ) r_{ij}(\mathbf{x}) rij(x)表示将本属于 w i w_i wi类的样本判定为 w j w_j wj类的条件风险,则有
r j ( x ) = 1 P ( x ) ∑ i = 1 M L i j P ( x ∣ w i ) P ( w i ) r_j(\mathbf{x}) = \frac{1}{P(\mathbf{x})}\sum_{i = 1}^{M}L_{ij}P(\mathbf{x}|w_i)P(w_i) rj(x)=P(x)1i=1∑MLijP(x∣wi)P(wi)
这里, P ( x ) P(\mathbf{x}) P(x)是公共项,可以舍去。 L i j L_{ij} Lij为将样本应属于 w i w_i wi类的模式判别成属于 w j w_j wj类的代价。因此,上式可简写为,
r j ( x ) = ∑ i = 1 M L i j P ( x ∣ w i ) P ( w i ) r_j(\mathbf{x}) = \sum_{i = 1}^{M}L_{ij}P(\mathbf{x}|w_i)P(w_i) rj(x)=i=1∑MLijP(x∣wi)P(wi)
这也是贝叶斯分类器,只是它的判别方法不是按错误概率最小作为标准,而是按平均条件风险作为标准。
有意思地是,假设代价 L L L判对失分不计分,判错失分记为1分,则有
L i j = { 0 , if i = j 1 , if i ≠ j L_{ij} = \left\{ \begin{aligned} & 0, \textbf{if} \quad i = j \\ & 1, \textbf{if} \quad i \ne j \\ \end{aligned} \right. Lij={0,ifi=j1,ifi̸=j
则条件风险可写成
r
j
(
x
)
=
∑
i
=
1
M
L
i
j
P
(
x
∣
w
i
)
P
(
w
i
)
=
L
1
j
P
(
x
∣
w
1
)
P
(
w
1
)
+
⋯
+
L
j
j
P
(
x
∣
w
j
)
P
(
w
j
)
+
⋯
+
L
M
j
P
(
x
∣
w
M
)
P
(
w
M
)
=
∑
i
=
1
M
P
(
x
∣
w
i
)
P
(
w
i
)
−
P
(
x
∣
w
j
)
P
(
w
j
)
=
P
(
x
)
−
P
(
x
∣
w
j
)
P
(
w
j
)
\begin{aligned} r_j(\mathbf{x}) &= \sum_{i = 1}^{M}L_{ij}P(\mathbf{x} | w_i)P(w_i) \\ &= L_{1j}P(\mathbf{x}|w_1)P(w_1) + \dots + L_{jj}P(\mathbf{x}|w_j)P(w_j) + \dots + L_{Mj}P(\mathbf{x}|w_M)P(w_M) \\ &= \sum_{i = 1}^{M}P(\mathbf{x} | w_i)P(w_i) - P(\mathbf{x} | w_j)P(w_j) \\ &= P(\mathbf{x}) - P(\mathbf{x} | w_j)P(w_j)\\ \end{aligned}
rj(x)=i=1∑MLijP(x∣wi)P(wi)=L1jP(x∣w1)P(w1)+⋯+LjjP(x∣wj)P(wj)+⋯+LMjP(x∣wM)P(wM)=i=1∑MP(x∣wi)P(wi)−P(x∣wj)P(wj)=P(x)−P(x∣wj)P(wj)
假如样本
x
∈
w
1
\mathbf{x} \in w_1
x∈w1,由
r
i
(
x
)
<
r
j
(
x
)
r_i(x) < r_j(x)
ri(x)<rj(x)可得,
P
(
x
∣
w
i
)
P
(
w
i
)
>
P
(
x
∣
w
j
)
P
(
w
j
)
P(\mathbf{x} | w_i)P(w_i) > P(\mathbf{x} | w_j)P(w_j)
P(x∣wi)P(wi)>P(x∣wj)P(wj)
。不难看出,当误判风险一致时,贝叶斯最小风险判别与一般的贝叶斯判别是一致的。
正态分布模式的贝叶斯分类器
通过之前的内容,我们现在对贝叶斯判别已经有了一定的认识。因此,我们不妨进一步地从概率分布的角度分析贝叶斯判别。在实际问题中,常常要研究一个随机变量 ξ \xi ξ取值小于某一数值 x x x的概率,这概率是 x x x的函数,称这种函数为随机变量ξ的分布函数,简称分布函数,记作 F ( x ) F(x) F(x),即 F ( x ) = P ( ξ < x ) ( − ∞ < x < + ∞ ) F(x) = P(\xi < x)(-\infty < x <+ \infty) F(x)=P(ξ<x)(−∞<x<+∞),由它并可以决定随机变量落入任何范围内的概率。说人话,就是刻画了概率值的分布情况。而常用的有正态分布,均匀分布等。在这里,我们讨论正太分布情况。
以 M M M种模式类别的多变量正态类密度函数为例,
P ( x ∣ w i ) = 1 ( 2 π ) n 2 ∣ C i ∣ 1 2 exp ( − 1 2 ( x − m i ) T C i − 1 ( x − m i ) ) , i = 1 , 2 , … , M P(\mathbf{x} | w_i) = \frac{1}{(2\pi)^{\frac{n}{2}}|C_i|^{\frac{1}{2}}} \exp(-\frac{1}{2}(\mathbf{x} - \mathbf{m}_i)^{T}C_i^{-1}(\mathbf{x} - \mathbf{m}_i)), i = 1, 2, \dots, M P(x∣wi)=(2π)2n∣Ci∣211exp(−21(x−mi)TCi−1(x−mi)),i=1,2,…,M
其中,每一类模式的分布密度都完全被其均值向量 m i \mathbf{m}_i mi和协方差矩阵 C i C_i Ci所规定。
而我们已知判别函数可写成如下形式,
d i ( x ) = P ( x ∣ w i ) P ( w i ) , i = 1 , … , M d_i(\mathbf{x}) = P(\mathbf{x} | w_i)P(w_i), i = 1, \dots, M di(x)=P(x∣wi)P(wi),i=1,…,M
对于正态密度函数,可取自然对数的形式以方便计算(因为自然对数是单调递增的,取对数后不影响相应的分类性能),则有
d i ( x ) = ln P ( x ∣ w i ) + ln P ( w i ) , i = 1 , 2 , … , M d_i(\mathbf{x}) = \ln P(\mathbf{x} | w_i) + \ln P(w_i), i = 1, 2, \dots, M di(x)=lnP(x∣wi)+lnP(wi),i=1,2,…,M
代入正太密度函数,有
d i ( x ) = ln P ( w i ) − n 2 ( ln 2 π ) − 1 2 ln ∣ C i ∣ − 1 2 ( x − m i ) T C i − 1 ( x − m i ) , i = 1 , 2 , … , M d_i(\mathbf{x}) = \ln P(w_i) - \frac{n}{2}(\ln 2\pi) - \frac{1}{2}\ln |C_i| - \frac{1}{2}(\mathbf{x} - \mathbf{m}_i)^{T}C_i^{-1}(\mathbf{x} - \mathbf{m}_i), i = 1, 2, \dots, M di(x)=lnP(wi)−2n(ln2π)−21ln∣Ci∣−21(x−mi)TCi−1(x−mi),i=1,2,…,M
去掉常数项,有
d i ( x ) = ln P ( w i ) − 1 2 ln ∣ C i ∣ − 1 2 ( x − m i ) T C i − 1 ( x − m i ) d_i(\mathbf{x}) = \ln P(w_i) - \frac{1}{2}\ln |C_i|- \frac{1}{2}(\mathbf{x} - \mathbf{m}_i)^{T}C_i^{-1}(\mathbf{x} - \mathbf{m}_i) di(x)=lnP(wi)−21ln∣Ci∣−21(x−mi)TCi−1(x−mi)
即为正态分布模式的贝叶斯判别函数。
总结
-
优点
- 朴素贝叶斯基于贝叶斯定理和属性条件独立性假设,具有坚实的理论基础。
- 朴素贝叶斯简单易懂,模型参数少。
- 朴素贝叶斯对于缺失数据,无关属性,噪声点等问题不敏感。
-
缺点
- 现实生活中,样本分布往往不满足属性条件独立性假设,而这恰恰是朴素贝叶斯算法的基本出发点
参考文献
黄庆明,《第二章.ppt》