贝叶斯决策理论

Views: --

贝叶斯决策是模式识别的理论基石,回答一个问题:在类的概率分布完全已知时,怎么判类才最优。本节是全课计算题的重头戏。

一、四个基本概念

  • 先验概率 P(ωi)P(\omega_i):还没看到样本时,各类别本身的占比。
  • 类条件概率密度 p(xωi)p(\mathbf{x} \mid \omega_i):已知是第 ii 类时,特征 x\mathbf{x} 的分布(方向:类 → 特征)。
  • 后验概率 P(ωix)P(\omega_i \mid \mathbf{x}):看到特征 x\mathbf{x} 后,它属于第 ii 类的概率(方向:特征 → 类,这才是我们真正想要的)。
  • 总体密度 p(x)p(\mathbf{x}):所有类样本混在一起时 x\mathbf{x} 的分布。

核心矛盾:想要的后验 P(ωix)P(\omega_i \mid \mathbf{x}) 难直接得到,但好算的类条件 p(xωi)p(\mathbf{x} \mid \omega_i) 方向正好相反。贝叶斯公式就是用好算的逆概率,反推想要的正概率。

二、贝叶斯公式

P(ωix)=p(xωi)P(ωi)p(x)P(\omega_i \mid \mathbf{x}) = \frac{p(\mathbf{x} \mid \omega_i) P(\omega_i)}{p(\mathbf{x})}

分母(总体密度)由全概率公式给出:

p(x)=ip(xωi)P(ωi)p(\mathbf{x}) = \sum_{i} p(\mathbf{x} \mid \omega_i) P(\omega_i)

记成一句话:后验 = 类条件 × 先验 ÷ 总体密度

三、最小错误率决策

目标:让判错的概率最小。规则就是选后验最大的类

若 P(ω1x)>P(ω2x), 则 xω1\text{若 } P(\omega_1 \mid \mathbf{x}) > P(\omega_2 \mid \mathbf{x}), \text{ 则 } \mathbf{x} \in \omega_1

比较后验时分母 p(x)p(\mathbf{x}) 相同,只需比分子,于是有四种等价写法:

  1. 比后验:取 P(ωix)P(\omega_i \mid \mathbf{x}) 最大者;
  2. 比类条件 × 先验:取 p(xωi)P(ωi)p(\mathbf{x} \mid \omega_i) P(\omega_i) 最大者;
  3. 似然比形式

l(x)=p(xω1)p(xω2)λ=P(ω2)P(ω1)l(\mathbf{x}) = \frac{p(\mathbf{x} \mid \omega_1)}{p(\mathbf{x} \mid \omega_2)} \gtrless \lambda = \frac{P(\omega_2)}{P(\omega_1)}

似然比 l(x)l(\mathbf{x}) 只和样本有关,阈值 λ\lambda 只和先验有关、可事先算好。大于阈值判第一类,否则判第二类。

  1. 对数形式(乘法变加法,防止概率连乘下溢):

h(x)=lnl(x)=lnp(xω1)+lnp(xω2)h(\mathbf{x}) = -\ln l(\mathbf{x}) = -\ln p(\mathbf{x} \mid \omega_1) + \ln p(\mathbf{x} \mid \omega_2)

判别时把 h(x)h(\mathbf{x})lnP(ω1)P(ω2)\ln \dfrac{P(\omega_1)}{P(\omega_2)} 比较。

白血病例子(最小错误率)

已知 p(xω1)=0.2p(x \mid \omega_1) = 0.2p(xω2)=0.4p(x \mid \omega_2) = 0.4,先验 P(ω1)=0.9P(\omega_1) = 0.9(健康)、P(ω2)=0.1P(\omega_2) = 0.1(患病)。

先算总体密度:

p(x)=0.2×0.9+0.4×0.1=0.18+0.04=0.22p(x) = 0.2 \times 0.9 + 0.4 \times 0.1 = 0.18 + 0.04 = 0.22

再算后验:

P(ω1x)=0.180.22=0.818,P(ω2x)=0.040.22=0.182P(\omega_1 \mid x) = \frac{0.18}{0.22} = 0.818, \qquad P(\omega_2 \mid x) = \frac{0.04}{0.22} = 0.182

因为 0.818>0.1820.818 > 0.182,按最小错误率判为 ω1\omega_1(健康)。

要点:这个细胞的观测值其实”更像”患病(p(xω2)=0.4>p(xω1)=0.2p(x \mid \omega_2) = 0.4 > p(x \mid \omega_1) = 0.2),但健康人占绝大多数(先验 0.9),先验把结局扳了回来。

四、错误率分析与一致最优

决策把特征空间划成区域 R1,R2\mathcal{R}_1, \mathcal{R}_2。平均错误率:

p(e)=P(ω2)p2(e)+P(ω1)p1(e)p(e) = P(\omega_2) p_2(e) + P(\omega_1) p_1(e)

其中 p1(e)=R2p(xω1)dxp_1(e) = \int_{\mathcal{R}_2} p(x \mid \omega_1)\, dx 是第一类样本被判进第二类区域的错误,p2(e)p_2(e) 同理。几何上就是两条密度曲线重叠的尾巴面积,决策边界取在两曲线交点处时错误率最小

逐点条件错误率 P(ex)=1maxiP(ωix)P(e \mid x) = 1 - \max_i P(\omega_i \mid x),总错误率 P(e)=E[P(ex)]P(e) = E[P(e \mid x)]。贝叶斯决策让每个观测点的条件错误率都最小,所以整体最优——这是理论上的错误率天花板,称为一致最优决策

五、最小风险决策

动机

最小错误率把所有错误一视同仁,但现实中错误代价不对称。医疗就是典型:漏诊(病人误判成健康)远比误诊(健康人误判成病人)严重。于是要最小化的不是”错误个数”,而是”代价(风险)的期望”。

损失函数与决策表

损失函数 λ(αiωj)\lambda(\alpha_i \mid \omega_j):真实类别是 ωj\omega_j,却采取决策 αi\alpha_i 时付出的损失(也写作 λij\lambda_{ij})。这张表由领域专家人为设定。

注意:决策的数量 aa 不一定等于类别数 cc,可以有”拒绝判断”这类额外决策。

条件风险

来了样本 x\mathbf{x},若采取决策 αi\alpha_i,由于真实类别不确定,期望损失(条件风险)为:

R(αix)=j=1cλ(αiωj)P(ωjx)R(\alpha_i \mid \mathbf{x}) = \sum_{j=1}^{c} \lambda(\alpha_i \mid \omega_j) P(\omega_j \mid \mathbf{x})

决策规则

选条件风险最小的决策(注意是 min,不是 max):

α=argminiR(αix)\alpha = \arg\min_{i} R(\alpha_i \mid \mathbf{x})

解题三步:算后验 → 算各决策的条件风险 → 取最小。

白血病例子(最小风险,结论反转)

沿用上面的后验:P(ω1x)=0.818P(\omega_1 \mid x) = 0.818P(ω2x)=0.182P(\omega_2 \mid x) = 0.182

设损失表(α1\alpha_1 = 判健康,α2\alpha_2 = 判患病):λ11=0\lambda_{11} = 0λ12=6\lambda_{12} = 6(漏诊,最贵)、λ21=1\lambda_{21} = 1(误诊)、λ22=0\lambda_{22} = 0

条件风险:

R(α1x)=0×0.818+6×0.182=1.092R(\alpha_1 \mid x) = 0 \times 0.818 + 6 \times 0.182 = 1.092

R(α2x)=1×0.818+0×0.182=0.818R(\alpha_2 \mid x) = 1 \times 0.818 + 0 \times 0.182 = 0.818

因为 R(α1x)=1.092>R(α2x)=0.818R(\alpha_1 \mid x) = 1.092 > R(\alpha_2 \mid x) = 0.818,取最小,判为 ω2\omega_2(患病)。

这与最小错误率的结论(判健康)正好相反:漏诊代价是误诊的 6 倍,所以宁可误诊也不敢漏诊。这个”结论反转”是最经典的考点。

两类问题的似然比形式

ω1\omega_1 当且仅当:

p(xω1)p(xω2)>P(ω2)P(ω1)λ12λ22λ21λ11\frac{p(\mathbf{x} \mid \omega_1)}{p(\mathbf{x} \mid \omega_2)} > \frac{P(\omega_2)}{P(\omega_1)} \cdot \frac{\lambda_{12} - \lambda_{22}}{\lambda_{21} - \lambda_{11}}

比最小错误率的阈值多了一个损失比因子

六、两者关系:0-1 损失

取 0-1 损失(判对损失 0,判错损失 1):λii=0\lambda_{ii} = 0λij=1 (ij)\lambda_{ij} = 1\ (i \ne j)。则条件风险:

R(αix)=jiP(ωjx)=1P(ωix)=P(ex)R(\alpha_i \mid \mathbf{x}) = \sum_{j \ne i} P(\omega_j \mid \mathbf{x}) = 1 - P(\omega_i \mid \mathbf{x}) = P(e \mid \mathbf{x})

最小化风险等价于最大化后验,即最小错误率。结论:最小错误率是最小风险在 0-1 损失下的特例;最小风险是更一般的框架。

本节考点清单

  • 四个概念 + 贝叶斯公式(后验 = 类条件 × 先验 ÷ 总体密度)。
  • 最小错误率四种等价写法,重点是似然比规则与对数形式。
  • 白血病两个例子:最小错误率判健康、最小风险判患病的结论反转,会全套手算。
  • 最小风险三步法、条件风险公式、损失比因子。
  • 0-1 损失把最小风险退化为最小错误率(两者关系,必考)。