[数理知识]统计决策理论——贝叶斯决策与两类错误率


前序

[数理知识]贝叶斯公式和最大似然估计笔记


1 决策理论与方法

1.1 基于先验概率的决策过程

xx 为观察到的样本特征,分类空间为A={a1,a2...,an}A=\{a_1, a_2...,a_n\},其中aia_i为第ii个类,P(ai)P(a_i)为类aia_i的发生概率。

  • x=[x1,x2,...,xd]Tx=[x_1,x_2,...,x_d]^T为由dd维空间组成的特征向量。
  • P(aj)>P(aothers)P(a_j)>P(a_{others})时,记决策规则xajx \in a_j
  • 当做出决策xajx \in a_j之后,单类分类错误率P(errorj)=1P(aj)P({error}_j)=1-P(a_j),即 xajx \notin a_j的概率。

可以看到,一般决策过程仅依靠先验概率P(aj)P(a_j),使得对 xx 的观察(特征参考)并没有对决策过程产生影响,总体错误率仍有降低的空间。

1.2 基于贝叶斯公式的决策过程

贝叶斯决策:在观察到xx 的样本特征后,基于贝叶斯公式,可以有效降低分类错误率:
P(aix)=p(xai)P(ai)p(x)=p(xai)P(ai)j=1np(xaj)P(aj) \begin{aligned} P(a_i|x)&=\frac{p(x|a_i)P(a_i)}{p(x)} \\ &=\frac{p(x|a_i)P(a_i)}{ \sum_{j=1}^n{ p(x|a_j)P(a_j) } }\\ \end{aligned} 其中, p(xai)p(x|a_i)类条件密度P(ai)P(a_i)先验概率p(x)p(x)总体密度P(aix)P(a_i|x)后验概率

  • 因此在本质上,贝叶斯决策是指:[后验概率]等于[先验概率]与[类条件密度]的乘积,最后采用[总体密度]做归一化。同时,[总体密度]由全概率公式又可以转化为所有类的[先验概率]与其[类概率密度]乘积之和。

贝叶斯决策也被称作统计决策理论

  • λ=p(xai)p(x)\lambda = \frac{p(x|a_i)}{p(x)} ,所以基于贝叶斯决策的决策的错误率:
    P(errori)=1P(aix)=1λ×P(ai) \begin{aligned} P({error}_i)&=1-P(a_i|x) \\ &=1-\lambda \times P(a_i) \end{aligned}

贝叶斯分类决策增益 λ\lambda 是对先验概率P(ai)P(a_i)的增益,是基于对xx的观测而得到的,其值等于类条件概率在总体密度上的归一值,增益程度取决于类条件概率 p(xai)p(x|a_i)——当aia_i越容易导致xx的发生时(类条件概率越大),则增益程度越高(λ\lambda越大),第ii类的分类错误率越低。

1.3 决策错误率

(总体)决策错误率定义为所有服从同样分布的独立样本上的单类错误率的期望,即:
P(e)=P(ex)×p(x)dxP(e)=\int P(e|x) \times p(x) dx

  • 其中,P(ex)P(e|x)即为单类分类错误率P(errori)P({error}_i)在连续函数上的表示法。
  • 显然,贝叶斯决策由于增益λ\lambda的存在,能有效降低决策错误率。

2 贝叶斯决策的优化

2.1 最小错误率贝叶斯决策

对于每次决策,取后验概率最大的决策,即可使得决策错误率最小。
P(aix)=maxj=1..nP(ajx)P(a_i|x)=\max_{j=1..n} {P(a_j|x)}

2.1.1 二分类问题的决策错误率

针对二分类问题,由于总体概率密度p(x)p(x)相同,有以下变体:
l(x)=p(xa1)p(xa2)λ=P(a2)P(a1)x{a1a2 l(x)=\frac{p(x|a_1)}{p(x|a_2)} \gtrless \lambda=\frac{P(a_2)}{P_(a_1)}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}
l(x)l(x)大于阈值λ\lambda时,分为第一类,否则为第二类。(注意:此处的λ\lambda与上文的"增益"概念不同)

mn,x{a1a2m\gtrless n,x \in \begin{cases} {a_1}\\ {a_2} \end{cases}Tips: 上式可用伪代码表示为:x=m>na1:a2x = m>n ? a_1:a_2

2.1.2 二分类问题的决策面

l(x)=λl(x)=\lambda,即后验概率P(a1x)=P(a2x)P(a_1|x)=P(a_2|x)时,使得样本 xx 落在分界线左侧(l(x)>λl(x)>\lambda)时分为第一类,否则为第二类;该分界线被称为决策面分类面

  • (,t)-(\infin,t)1\real_1(t,)(t,\infin)2\real_2tt为分类面对xx的划分值。

则二分类问题中的平均错误率为:
P(e)=tP(a2x)p(x)dx+tP(a1x)p(x)dx=tp(xa2)P(a2)dx+tp(xa1)P(a1)dx=1p(xa2)P(a2)dx+2p(xa1)P(a1)dx=P(a2)1p(xa2)dx+P(a1)2p(xa1)dx=P(a2)P2(e)+P(a1)P1(e) \begin{aligned} P(e) &= \int_{-\infin}^{t}{P(a_2|x)p(x)dx}+ \int_{t}^{\infin}{P(a_1|x)p(x)dx} \\ &= \int_{-\infin}^{t}{p(x|a_2)P(a_2)dx}+ \int_{t}^{\infin}{p(x|a_1)P(a_1)dx} \\ &= \int_{\real_1}{p(x|a_2)P(a_2)dx}+ \int_{\real_2}{p(x|a_1)P(a_1)dx} \\ &= P(a_2)\int_{\real_1}{p(x|a_2)dx}+ P(a_1)\int_{\real_2}{p(x|a_1)dx} \\ &= P(a_2)P_2(e)+ P(a_1)P_1(e) \end{aligned}

  • 注意到,P1(e)=2p(xa1)dxP_1(e)=\int_{\real_2}{p(x|a_1)dx},是把第一类的xx决策为第二类的错误率;反之亦然。
  • 两类错误率对相应类别的先验概率求取加权和即为二分类问题中的分类错误率。

2.2 最小风险贝叶斯决策

λ(βi,aj)\lambda(\beta_i,a_j)是指对实际为aja_j的样本xx采取决策βi\beta_i所带来的风险(损失)。

  • 注意到:λ(βi,aj)\lambda(\beta_i,a_j),当i=ji=j时,分类正确;i≠ji =\not j时,为把属于ii类分为第jj类的损失。

2.2.1 决策风险及其计算

若有 nn 个类和 kk 个决策,则损失是:
R(βix)=j=1nλ(βi,aj)P(ajx),i=1,...k R(\beta_i|x)=\sum_{j=1}^n{\lambda(\beta_i,a_j)P(a_j|x)},i=1,...k 对于决策规则β(x)=βΔ\beta(x)=\sum{\beta_{\Delta}},其损失的总体期望为:
R(β)=R(βΔx)p(x)dx R(\beta)=\int{R(\beta_{\Delta}|x)p(x)dx}

对于一个实际问题,求取最小风险贝叶斯决策可以按照以下步骤求取:

  1. 由贝叶斯公式计算后验概率:
    P(aix)=p(xai)P(ai)j=1np(xaj)P(aj),i=1,2,...,nP(a_i|x)=\frac{p(x|a_i)P(a_i)}{ \sum_{j=1}^n{ p(x|a_j)P(a_j) } },i=1,2,...,n
  2. 计算条件风险:
    R(βix)=j=1nλ(βi,aj)P(ajx),i=1,...kR(\beta_i|x)=\sum_{j=1}^n{\lambda(\beta_i,a_j)P(a_j|x)},i=1,...k
  3. 优化目标:
    β=argmini=1,...,kR(βix)\beta^* = arg\min_{i=1,...,k}R(\beta_i|x)

2.2.2 最小风险贝叶斯决策向最小错误率决策的转化

考虑二分类问题,简记λij=λ(βi,aj)\lambda_{ij}=\lambda(\beta_i,a_j)
λ11P(a1x)+λ12P(a2x)λ21P(a1x)+λ22P(a2x),x{a1a2 \lambda_{11}P(a_1|x)+\lambda_{12}P(a_2|x) \lessgtr \lambda_{21}P(a_1|x)+\lambda_{22}P(a_2|x), x \in \begin{cases} {a_1}\\ {a_2} \end{cases} \cdot\cdot\cdot\cdot\cdot\cdot ①

  • 注意到:λij\lambda_{ij}i=ji=j时,分类正确;i≠ji =\not j时,为把属于ii类分为第jj类的损失。

注意:此处的 \lessgtr 与上文中的 \gtrless 正好相反。

不失一般性,可以假设λ11<λ21\lambda_{11}<\lambda_{21}λ22<λ12\lambda_{22}<\lambda_{12}
则①式可化为:
(λ11λ21)P(a1x)(λ22λ12)P(a2x),x{a1a2P(a2x)P(a1x)(λ21λ11)(λ12λ22),x{a1a2p(xa2)P(a2)p(xa1)P(a1)=P(a2x)p(x)P(a1x)p(x)(λ21λ11)(λ12λ22),x{a1a2l(x)1=p(xa2)p(xa1)λ1=P(a1)P(a2)×(λ21λ11)(λ12λ22),x{a1a2l(x)=p(xa1)p(xa2)λ=P(a2)P(a1)×(λ12λ22)(λ21λ11),x{a1a2 \begin{aligned} (\lambda_{11}-\lambda_{21})P(a_1|x) &\lessgtr (\lambda_{22}-\lambda_{12})P(a_2|x), x \in \begin{cases} {a_1}\\ {a_2} \end{cases} \cdot\cdot\cdot\cdot\cdot\cdot ②\\ \frac{P(a_2|x)}{P(a_1|x)} &\lessgtr \frac{(\lambda_{21}-\lambda_{11})}{(\lambda_{12}-\lambda_{22})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}\\ \frac{p(x|a_2)P(a_2)}{p(x|a_1)P(a_1)} = \frac{P(a_2|x)p(x)}{P(a_1|x)p(x)} &\lessgtr \frac{(\lambda_{21}-\lambda_{11})}{(\lambda_{12}-\lambda_{22})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}\\ l(x)^{-1} = \frac{p(x|a_2)}{p(x|a_1)} &\lessgtr \lambda^{-1} = \frac{P(a_1)}{P(a_2)} \times \frac{(\lambda_{21}-\lambda_{11})}{(\lambda_{12}-\lambda_{22})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases}\\ l(x) = \frac{p(x|a_1)}{p(x|a_2)} &\gtrless \lambda = \frac{P(a_2)}{P(a_1)} \times \frac{{(\lambda_{12}-\lambda_{22})}}{(\lambda_{21}-\lambda_{11})}, x \in \begin{cases} {a_1}\\ {a_2} \end{cases} \end{aligned}

  • λ11=λ22=0\lambda_{11}=\lambda_{22}=0λ12=λ21=c\lambda_{12}=\lambda_{21}=c (cc为正常数)时,就是最小错误率贝叶斯分类决策。即分类正确时无风险,分类错误时风险一致。

注意:此处的 \lessgtr 与上文中的 \gtrless 的方向,后者意为 x=m>n?a1:a2x = m>n?a_1:a_2


3 两类错误率

二分类问题中,有以下决策分布表:

决策分布表 决策
已知 阳性 阴性
正类 (真阳)TP (假阴)FN
负类 (假阳)FP (真阴)TN
分界线 P(阳性)和N(阴性)之间的线即为分界线;P高则N少,反之亦然。

3.1 正确分类的指标

  • 灵敏度(命中率,sensitivity) = 真阳除以所有正类:
    Sn=TPTP+FNTPRS_n=\frac{TP}{TP+FN} \cdot\cdot\cdot TPR
  • 特异度(敏感率,specificity) = 真阴除以所有负类:
    Sp=TNTN+FPTNRS_p=\frac{TN}{TN+FP} \cdot\cdot\cdot TNR

很容易注意到:

  • SnS_n表示真正的阳性样本(正类)中有多少能被正确检测出来;灵敏度高指的是能够正确分辨多少目标个体。
  • SnS_n表示真正的阴性样本(负类)中有多少能被正确检测出来;特异度高指的是不易把非目标个体选中。
  • 显然,鉴于二分类器的特性,二者不可能同时取得高值(若分类器认为的P的个体数多,则N的个体数必然变少)。

3.2 错误分类的指标

  • 第一类分类误差(假阳性,假报率,False Alarm,TypeType-Ⅰ ErrorError) = 假阳除以所有负类:
    α=1Sp=FPTN+FPFPR \begin{aligned} \alpha &= 1 - S_p \\ &= \frac{FP}{TN+FP} \end{aligned} \cdot\cdot\cdot FPR
  • 第二类分类误差(假阴性,漏检率,Missed Detection,TypeType-Ⅱ ErrorError) = 假阴除以所有正类:
    β=1Sn=FNTP+FNFNR \begin{aligned} \beta&= 1 - S_n \\ &= \frac{FN}{TP+FN} \end{aligned} \cdot\cdot\cdot FNR

很容易注意到:

  • α\alpha表示非目标样本中有多少会被错误地挑选出来。
  • β\beta表示目标样本中有多少会被漏检。
  • 第一类错误概率与第二类正确概率之和显然为1(不是第一类就是第二类),这也是α=1Sp\alpha = 1 - S_p的由来;反之亦然。
  • 显然,鉴于二分类器的特性,二者不可能同时取得低值(若分类器认为的P的个体数多,则N的个体数必然变少)。

3.3 ROC曲线

对于二分类任务,无法同时满足正确分类的两个指标同时达到较好的值,因此,引入ROC曲线作为衡量指标:

ROC曲线:

  • 以第一类正确率(真阳性,灵敏度, sensitivity,TPR)为yy轴;
  • 以第一类分类误差(假阳性,假报率,False Alarm,TypeType-Ⅰ ErrorError,FPR)为xx轴;

在理解上,可以这么理解——在xx尽量小的情况下,取得较高的yy值,是描绘ROC曲线的目标;即第一类分类时误差小、正确率高

注意到:第一类分类误差实际上就是1Sp1-S_p,有的文献则以(1-特异度)为xx轴作为介绍,但并不直观。
[数理知识]统计决策理论——贝叶斯决策与两类错误率

  • 这是标准ROC曲线,若将xx轴取为SpS_p即第二类分类正确率(真阴性,特异度,TNR),则意味着需要在曲线中找到一点,满足一类和二类分类性能同时较高,并反向得出此时的阈值。

关于ROC曲线,可以参考>数据挖掘-分类器的ROC曲线及相关指标(ROC、AUC、ACC)详解<