[数理知识]贝叶斯公式和最大似然估计笔记
记 x x x 为观察到的样本特征,分类空间为 A = { a 1 , a 2 . . . , a n } A=\{a_1, a_2...,a_n\} A={a1,a2...,an},其中 a i a_i ai为第 i i i个类, P ( a i ) P(a_i) P(ai)为类 a i a_i ai的发生概率。
- x = [ x 1 , x 2 , . . . , x d ] T x=[x_1,x_2,...,x_d]^T x=[x1,x2,...,xd]T为由 d d d维空间组成的特征向量。
- 当 P ( a j ) > P ( a o t h e r s ) P(a_j)>P(a_{others}) P(aj)>P(aothers)时,记决策规则 x ∈ a j x \in a_j x∈aj。
- 当做出决策 x ∈ a j x \in a_j x∈aj之后,单类分类错误率 P ( e r r o r j ) = 1 − P ( a j ) P({error}_j)=1-P(a_j) P(errorj)=1−P(aj),即 x ∉ a j x \notin a_j x∈/aj的概率。
可以看到,一般决策过程仅依靠先验概率 P ( a j ) P(a_j) P(aj),使得对 x x x 的观察(特征参考)并没有对决策过程产生影响,总体错误率仍有降低的空间。
贝叶斯决策:在观察到 x x x 的样本特征后,基于贝叶斯公式,可以有效降低分类错误率:
P ( a i ∣ x ) = p ( x ∣ a i ) P ( a i ) p ( x ) = p ( x ∣ a i ) P ( a i ) ∑ j = 1 n p ( x ∣ a j ) P ( a j ) \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(ai∣x)=p(x)p(x∣ai)P(ai)=∑j=1np(x∣aj)P(aj)p(x∣ai)P(ai)其中, p ( x ∣ a i ) p(x|a_i) p(x∣ai)是类条件密度, P ( a i ) P(a_i) P(ai)是先验概率, p ( x ) p(x) p(x)是总体密度, P ( a i ∣ x ) P(a_i|x) P(ai∣x)是后验概率;
贝叶斯决策也被称作统计决策理论。
贝叶斯分类决策增益 λ \lambda λ 是对先验概率 P ( a i ) P(a_i) P(ai)的增益,是基于对 x x x的观测而得到的,其值等于类条件概率在总体密度上的归一值,增益程度取决于类条件概率 p ( x ∣ a i ) p(x|a_i) p(x∣ai)——当 a i a_i ai越容易导致 x x x的发生时(类条件概率越大),则增益程度越高( λ \lambda λ越大),第 i i i类的分类错误率越低。
(总体)决策错误率定义为所有服从同样分布的独立样本上的单类错误率的期望,即:
P ( e ) = ∫ P ( e ∣ x ) × p ( x ) d x P(e)=\int P(e|x) \times p(x) dx P(e)=∫P(e∣x)×p(x)dx
- 其中, P ( e ∣ x ) P(e|x) P(e∣x)即为单类分类错误率 P ( e r r o r i ) P({error}_i) P(errori)在连续函数上的表示法。
- 显然,贝叶斯决策由于增益 λ \lambda λ的存在,能有效降低决策错误率。
对于每次决策,取后验概率最大的决策,即可使得决策错误率最小。
P ( a i ∣ x ) = max j = 1.. n P ( a j ∣ x ) P(a_i|x)=\max_{j=1..n} {P(a_j|x)} P(ai∣x)=j=1..nmaxP(aj∣x)
针对二分类问题,由于总体概率密度 p ( x ) p(x) p(x)相同,有以下变体:
l ( x ) = p ( x ∣ a 1 ) p ( x ∣ a 2 ) ≷ λ = P ( a 2 ) P ( a 1 ) , x ∈ { a 1 a 2 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)=p(x∣a2)p(x∣a1)≷λ=P(a1)P(a2),x∈{a1a2
当 l ( x ) l(x) l(x)大于阈值 λ \lambda λ时,分为第一类,否则为第二类。(注意:此处的 λ \lambda λ与上文的"增益"概念不同)
m ≷ n , x ∈ { a 1 a 2 m\gtrless n,x \in \begin{cases} {a_1}\\ {a_2} \end{cases} m≷n,x∈{a1a2Tips: 上式可用伪代码表示为: x = m > n ? a 1 : a 2 x = m>n ? a_1:a_2 x=m>n?a1:a2
当 l ( x ) = λ l(x)=\lambda l(x)=λ,即后验概率 P ( a 1 ∣ x ) = P ( a 2 ∣ x ) P(a_1|x)=P(a_2|x) P(a1∣x)=P(a2∣x)时,使得样本 x x x 落在分界线左侧( l ( x ) > λ l(x)>\lambda l(x)>λ)时分为第一类,否则为第二类;该分界线被称为决策面或分类面。
- 记 − ( ∞ , t ) -(\infin,t) −(∞,t)为 ℜ 1 \real_1 ℜ1, ( t , ∞ ) (t,\infin) (t,∞)为 ℜ 2 \real_2 ℜ2; t t t为分类面对 x x x的划分值。
则二分类问题中的平均错误率为:
P ( e ) = ∫ − ∞ t P ( a 2 ∣ x ) p ( x ) d x + ∫ t ∞ P ( a 1 ∣ x ) p ( x ) d x = ∫ − ∞ t p ( x ∣ a 2 ) P ( a 2 ) d x + ∫ t ∞ p ( x ∣ a 1 ) P ( a 1 ) d x = ∫ ℜ 1 p ( x ∣ a 2 ) P ( a 2 ) d x + ∫ ℜ 2 p ( x ∣ a 1 ) P ( a 1 ) d x = P ( a 2 ) ∫ ℜ 1 p ( x ∣ a 2 ) d x + P ( a 1 ) ∫ ℜ 2 p ( x ∣ a 1 ) d x = P ( a 2 ) P 2 ( e ) + P ( a 1 ) P 1 ( 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} P(e)=∫−∞tP(a2∣x)p(x)dx+∫t∞P(a1∣x)p(x)dx=∫−∞tp(x∣a2)P(a2)dx+∫t∞p(x∣a1)P(a1)dx=∫ℜ1p(x∣a2)P(a2)dx+∫ℜ2p(x∣a1)P(a1)dx=P(a2)∫ℜ1p(x∣a2)dx+P(a1)∫ℜ2p(x∣a1)dx=P(a2)P2(e)+P(a1)P1(e)
记 λ ( β i , a j ) \lambda(\beta_i,a_j) λ(βi,aj)是指对实际为 a j a_j aj的样本 x x x采取决策 β i \beta_i βi所带来的风险(损失)。
- 注意到: λ ( β i , a j ) \lambda(\beta_i,a_j) λ(βi,aj),当 i = j i=j i=j时,分类正确; i = j̸ i =\not j i=j时,为把属于 i i i类分为第 j j j类的损失。
若有 n n n 个类和 k k k 个决策,则损失是:
R ( β i ∣ x ) = ∑ j = 1 n λ ( β i , a j ) P ( a j ∣ x ) , i = 1 , . . . k R(\beta_i|x)=\sum_{j=1}^n{\lambda(\beta_i,a_j)P(a_j|x)},i=1,...k R(βi∣x)=j=1∑nλ(βi,aj)P(aj∣x),i=1,...k对于决策规则 β ( x ) = ∑ β Δ \beta(x)=\sum{\beta_{\Delta}} β(x)=∑βΔ,其损失的总体期望为:
R ( β ) = ∫ R ( β Δ ∣ x ) p ( x ) d x R(\beta)=\int{R(\beta_{\Delta}|x)p(x)dx} R(β)=∫R(βΔ∣x)p(x)dx
对于一个实际问题,求取最小风险贝叶斯决策可以按照以下步骤求取:
考虑二分类问题,简记 λ i j = λ ( β i , a j ) \lambda_{ij}=\lambda(\beta_i,a_j) λij=λ(βi,aj):
λ 11 P ( a 1 ∣ x ) + λ 12 P ( a 2 ∣ x ) ≶ λ 21 P ( a 1 ∣ x ) + λ 22 P ( a 2 ∣ x ) , x ∈ { a 1 a 2 ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ① \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 ① λ11P(a1∣x)+λ12P(a2∣x)≶λ21P(a1∣x)+λ22P(a2∣x),x∈{a1a2⋅⋅⋅⋅⋅⋅①
注意:此处的 ≶ \lessgtr ≶ 与上文中的 ≷ \gtrless ≷ 正好相反。
不失一般性,可以假设 λ 11 < λ 21 \lambda_{11}<\lambda_{21} λ11<λ21, λ 22 < λ 12 \lambda_{22}<\lambda_{12} λ22<λ12。
则①式可化为:
( λ 11 − λ 21 ) P ( a 1 ∣ x ) ≶ ( λ 22 − λ 12 ) P ( a 2 ∣ x ) , x ∈ { a 1 a 2 ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ② P ( a 2 ∣ x ) P ( a 1 ∣ x ) ≶ ( λ 21 − λ 11 ) ( λ 12 − λ 22 ) , x ∈ { a 1 a 2 p ( x ∣ a 2 ) P ( a 2 ) p ( x ∣ a 1 ) P ( a 1 ) = P ( a 2 ∣ x ) p ( x ) P ( a 1 ∣ x ) p ( x ) ≶ ( λ 21 − λ 11 ) ( λ 12 − λ 22 ) , x ∈ { a 1 a 2 l ( x ) − 1 = p ( x ∣ a 2 ) p ( x ∣ a 1 ) ≶ λ − 1 = P ( a 1 ) P ( a 2 ) × ( λ 21 − λ 11 ) ( λ 12 − λ 22 ) , x ∈ { a 1 a 2 l ( x ) = p ( x ∣ a 1 ) p ( x ∣ a 2 ) ≷ λ = P ( a 2 ) P ( a 1 ) × ( λ 12 − λ 22 ) ( λ 21 − λ 11 ) , x ∈ { a 1 a 2 \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−λ21)P(a1∣x)P(a1∣x)P(a2∣x)p(x∣a1)P(a1)p(x∣a2)P(a2)=P(a1∣x)p(x)P(a2∣x)p(x)l(x)−1=p(x∣a1)p(x∣a2)l(x)=p(x∣a2)p(x∣a1)≶(λ22−λ12)P(a2∣x),x∈{a1a2⋅⋅⋅⋅⋅⋅②≶(λ12−λ22)(λ21−λ11),x∈{a1a2≶(λ12−λ22)(λ21−λ11),x∈{a1a2≶λ−1=P(a2)P(a1)×(λ12−λ22)(λ21−λ11),x∈{a1a2≷λ=P(a1)P(a2)×(λ21−λ11)(λ12−λ22),x∈{a1a2
注意:此处的 ≶ \lessgtr ≶ 与上文中的 ≷ \gtrless ≷ 的方向,后者意为 x = m > n ? a 1 : a 2 x = m>n?a_1:a_2 x=m>n?a1:a2 。
在二分类问题中,有以下决策分布表:
决策分布表 | 决策 | |
---|---|---|
已知 | 阳性 | 阴性 |
正类 | (真阳)TP | (假阴)FN |
负类 | (假阳)FP | (真阴)TN |
分界线 | P(阳性)和N(阴性)之间的线即为分界线;P高则N少,反之亦然。 |
很容易注意到:
- S n S_n Sn表示真正的阳性样本(正类)中有多少能被正确检测出来;灵敏度高指的是能够正确分辨多少目标个体。
- S n S_n Sn表示真正的阴性样本(负类)中有多少能被正确检测出来;特异度高指的是不易把非目标个体选中。
- 显然,鉴于二分类器的特性,二者不可能同时取得高值(若分类器认为的P的个体数多,则N的个体数必然变少)。
很容易注意到:
- α \alpha α表示非目标样本中有多少会被错误地挑选出来。
- β \beta β表示目标样本中有多少会被漏检。
- 第一类错误概率与第二类正确概率之和显然为1(不是第一类就是第二类),这也是 α = 1 − S p \alpha = 1 - S_p α=1−Sp的由来;反之亦然。
- 显然,鉴于二分类器的特性,二者不可能同时取得低值(若分类器认为的P的个体数多,则N的个体数必然变少)。
对于二分类任务,无法同时满足正确分类的两个指标同时达到较好的值,因此,引入ROC曲线作为衡量指标:
ROC曲线:
- 以第一类正确率(真阳性,灵敏度, sensitivity,TPR)为 y y y轴;
- 以第一类分类误差(假阳性,假报率,False Alarm, T y p e − Ⅰ Type-Ⅰ Type−Ⅰ E r r o r Error Error,FPR)为 x x x轴;
在理解上,可以这么理解——在 x x x尽量小的情况下,取得较高的 y y y值,是描绘ROC曲线的目标;即第一类分类时误差小、正确率高。
注意到:第一类分类误差实际上就是 1 − S p 1-S_p 1−Sp,有的文献则以(1-特异度)为 x x x轴作为介绍,但并不直观。
- 这是标准ROC曲线,若将 x x x轴取为 S p S_p Sp即第二类分类正确率(真阴性,特异度,TNR),则意味着需要在曲线中找到一点,满足一类和二类分类性能同时较高,并反向得出此时的阈值。
关于ROC曲线,可以参考>数据挖掘-分类器的ROC曲线及相关指标(ROC、AUC、ACC)详解<