当前位置: 首页 > news >正文

机器学习1——贝叶斯理论上

贝叶斯理论

基础概念

  • 贝叶斯公式(Bayes’ Theorem)的本质是利用 已有信息更新对事件概率的认知,它提供了一种在 已知条件下推断未知事件 的数学工具。其核心思想是 从结果推原因,即根据观察到的证据,反向推测某个假设的可能性。

    1. 贝叶斯公式的数学表达
    P ( A ∣ B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B) = \frac{P(B|A)P(A)}{P(B)} P(AB)=P(B)P(BA)P(A)
    其中:

    • P ( A ∣ B ) P(A \mid B) P(AB):在已知 B 发生的情况下,事件 A 发生的概率(后验概率)。

    • P ( B ∣ A ) P(B \mid A) P(BA) :在 A 发生的情况下,事件 B 发生的概率(似然)。

    • P ( A ) P(A) P(A):事件 A 发生的 先验概率,即在没有额外信息时我们对 A 发生的初始判断。

    • P ( B ) P(B) P(B) :事件 B 发生的概率,称为全概率,可通过全概率公式计算:

      P ( B ) = P ( B ∣ A ) P ( A ) + P ( B ∣ ¬ A ) P ( ¬ A ) P(B) = P(B \mid A) P(A) + P(B \mid \neg A) P(\neg A) P(B)=P(BA)P(A)+P(B¬A)P(¬A)

      这里$ \neg A$ 代表 A A A 未发生。

    2. 贝叶斯公式的本质理解

    贝叶斯公式的本质可以从几个角度理解:

    (1) 先验概率 + 证据更新 = 后验概率

    • 先验概率 P ( A ) P(A) P(A):这是我们在没有观察到任何证据之前对事件 A 发生的主观信念或统计估计。
    • 似然 P ( B ∣ A ) P(B \mid A) P(BA):在 A 发生的情况下,我们观察到 B 的可能性。
    • 后验概率 P ( A ∣ B ) P(A \mid B) P(AB):当我们观察到 B 之后,我们对 A 发生的信念如何调整。

    贝叶斯定理的作用就是利用证据 更新 先验概率,使其更符合现实。

    (2) 反向推断:从结果推原因

    • 经典概率通常是 从原因推结果(已知 A,计算 B 的概率)。
    • 贝叶斯公式是 从结果推原因(已知 B,推测 A发生的可能性)。

    (3) 贝叶斯思想 vs. 频率派思想

    • 频率派(Frequentist):认为概率是 长期频率,如抛硬币大量实验后的统计结果。
    • 贝叶斯派(Bayesian):认为概率是 对未知世界的不确定性度量,可以根据新信息不断调整。

贝叶斯分类器(Bayesian Classifier)

本质是选择 后验概率最大 的类别作为分类结果。

  1. 公式解析
    ω i = arg ⁡ max ⁡ i P ( ω i ∣ x ) \omega_i = \arg\max_{i} P(\omega_i \mid x) ωi=argimaxP(ωix)
    其中:

    • ω i ωi ωi:第 iii 个类别(class)。
    • x x x:观测到的特征(feature)。
    • P ( ω i ∣ x ) P(\omega_i | x) P(ωix):在给定特征 x 的情况下,类别 ω i \omega_i ωi发生的后验概率(posterior probability)。
    • arg ⁡ max ⁡ i \arg\max_{i} argmaxi:表示寻找使得 P ( ω i ∣ x ) P(\omega_i | x) P(ωix) 最大的 i,即找到概率最大的类别。

    这个公式的含义是:

    我们应该把观测到的样本 x 归入后验概率 P ( ω i ∣ x ) P(\omega_i | x) P(ωix) 最大的类别

    这就是 最大后验概率决策准则(Maximum A Posteriori, MAP)

  2. 结合贝叶斯公式
    P ( ω i ∣ x ) = P ( x ∣ ω i ) P ( ω i ) P ( x ) P(\omega_i | x) = \frac{P(x|\omega_i)P(\omega_i)}{P(x)} P(ωix)=P(x)P(xωi)P(ωi)
    其中

    • P ( ω i ) P(\omega_i) P(ωi):类别 ω i \omega_i ωi发生的 先验概率(prior probability),表示该类别在总体数据中的分布情况。

    • P ( x ∣ ω i ) P(x | \omega_i) P(xωi):在类别 ω i \omega_i ωi的前提下,样本 x 发生的 似然(likelihood)

      条件概率 P ( x ∣ ω i ) P(x | \omega_i) P(xωi) 表示:在已知样本属于类别 ω i \omega_i ωi 的情况下,样本 x x x 出现的可能性

      我们可以用一个形象的比喻来理解这个概念:

      比喻 :水果分类

      假设你在一个水果篮里挑选水果,水果篮里有苹果(类别 ω 1 \omega_1 ω1)和橘子(类别 ω 2 \omega_2 ω2)。现在,你盲选了一颗水果,并摸到了它的表面(即观察到样本特征 x x x),发现它是光滑的。

      • P ( x ∣ ω 1 ) P(x | \omega_1) P(xω1) 表示:如果这颗水果已经被确定是苹果( ω 1 \omega_1 ω1),那么它的表面是光滑的概率有多大。
      • P ( x ∣ ω 2 ) P(x | \omega_2) P(xω2) 表示:如果这颗水果已经被确定是橘子( ω 2 \omega_2 ω2),那么它的表面是光滑的概率有多大。

      如果苹果的表面通常是光滑的,而橘子的表面通常是粗糙的,则 P ( x ∣ ω 1 ) P(x | \omega_1) P(xω1) 会较大,而 P ( x ∣ ω 2 ) P(x | \omega_2) P(xω2) 会较小。

    • P ( x ) P(x) P(x):样本 x 发生的 全概率(evidence)(x可以理解成观察到的特征),可以看作归一化因子:
      P ( x ) = ∑ j P ( x ∣ ω j ) P ( ω j ) P(x) = \sum_{j} P(x \mid \omega_j) P(\omega_j) P(x)=jP(xωj)P(ωj)

    由于 P(x) 与类别无关,在求最大值时可以忽略,所以 MAP 规则可以改写为:
    ω i = arg ⁡ max ⁡ i P ( x ∣ ω i ) P ( ω i ) \omega_i = \arg\max_{i} P(x | \omega_i) P(\omega_i) ωi=argimaxP(xωi)P(ωi)

  3. 朴素贝叶斯(Naïve Bayes)分类器
    ω i = arg ⁡ max ⁡ i P ( ω i ) ∏ j P ( x j ∣ ω i ) \omega_i = \arg\max_{i} P(\omega_i) \prod_{j} P(x_j \mid \omega_i) ωi=argimaxP(ωi)jP(xjωi)
    我们假设所有特征独立,因此使用乘积形式(即朴素假设)。

贝叶斯决策规则 (Bayes Decision Rule)

基本概念
  • 贝叶斯决策规则的目标是最小化分类错误率,即在给定观测值 x 的情况下,尽可能做出正确的分类决策。

  • 两类情况的决策规则

    假设我们有 两个类别 o m e g a 1 omega_1 omega1 ω 2 \omega_2 ω2,当我们观察到数据 x 时,我们希望选择最可能的类别。

    如果 P ( w 1 ∣ x ) > P ( w 2 ∣ x ) , 则选择 w 1 否则 w 2 如果P(w_1|x) > P(w_2|x),则选择w_1 否则w_2 如果P(w1x)>P(w2x),则选择w1否则w2

  • 错误概率计算

    定义为:

    P ( e r r o r ∣ x ) = m i n P ( w 1 ∣ x ) , P ( w 2 ∣ x ) P(error∣x)=min{P(w_1∣x),P(w_2∣x)} P(errorx)=minP(w1x),P(w2x)

    这意味着对于每一个 x,我们总是选择最大概率的类别,使得错误率尽可能小。

广义贝叶斯决策规则 (Generalized Bayes Decision Rule)
基本贝叶斯决策规则仅适用于:
  1. 只有两个类别 w 1 和 w 2 w_1和w_2 w1w2)。
  2. 仅基于后验概率做决策,假设错误的代价相同。

但在实际应用中,很多问题并不是简单的二分类问题,而是:

  • 有多个类别(不止两类)。
  • 有多个特征(不止一个 x)。
  • 采取的行动不仅仅是分类(可能有多种决策)。
  • 不同的决策可能有不同的损失(错误分类的代价可能不同)。

广义贝叶斯决策规则通过引入损失函数 (Loss Function) 和期望损失 (Risk),来实现更一般化的决策方法。允许多个特征和类别

  • 多个特征:数据 x 可能属于 d 维欧几里得空间 R d \mathbb{R}^d Rd
  • 多个类别:我们可能有 c 个类别 ω 1 , ω 2 , . . . , ω c \omega_1, \omega_2, ..., \omega_c ω1,ω2,...,ωc
  • 多种可能的行动 α 1 , α 2 , . . . , α a \alpha_1, \alpha_2, ..., \alpha_a α1,α2,...,αa,其中 a 可能与 c 不同。
引入损失函数 (Loss Function)
  • 在某些情况下,我们不仅关心分类是否正确,还关心错误的代价。例如,在医学诊断中,误诊为癌症的代价远大于误诊为健康。为此,我们引入损失函数 λ \lambda λ,用来衡量决策错误的代价:
    λ : Ω × A → R \lambda:\Omega× A \rightarrow R λ:Ω×AR
    其中:

    • Ω \Omega Ω 是类别集合,即 ω 1 , ω 2 , . . . , ω c \omega_1, \omega_2, ..., \omega_c ω1,ω2,...,ωc
    • A 是可能的决策集合,即 α 1 , α 2 , . . . , α a \alpha_1, \alpha_2, ..., \alpha_a α1,α2,...,αa
    • λ ( α i ∣ ω j ) \lambda(\alpha_i \mid \omega_j) λ(αiωj)表示当真实类别是 $ \omega_j$但我们选择 α i \alpha_i αi 时的损失

    例如:

    • 正确分类: λ ( α i ∣ ω i ) = 0 \lambda(\alpha_i \mid \omega_i) = 0 λ(αiωi)=0 (没有损失)。
    • 错误分类: λ ( α i ∣ ω j ) \lambda(\alpha_i \mid \omega_j) λ(αiωj) 可能不相等,例如错诊癌症的损失远大于误诊普通感冒。
最小化期望损失 (Risk Minimization)
  • 由于真实类别 ω j \omega_j ωj 是不确定的,我们不能直接最小化损失,而应该最小化期望损失(又称风险 (Risk))
    R ( α ∣ x ) = ∑ j = 1 c P ( ω j ∣ x ) λ ( α i ∣ ω j ) R(\alpha \mid x) = \sum_{j = 1} ^ c P(\omega_j \mid x) \lambda(\alpha_i \mid \omega_j) R(αx)=j=1cP(ωjx)λ(αiωj)
    其中:

    • P ( ω j ∣ x ) P(\omega_j \mid x) P(ωjx)) 是给定 x 时,类别 ω j \omega_j ωj 发生的后验概率。
    • λ ( α i ∣ ω j ) \lambda(\alpha_i \mid \omega_j) λ(αiωj) 是决策 α i \alpha_i αi 时,真实类别是 ω j \omega_j ωj 所造成的损失。

    最终的决策规则是:
    α ∗ = arg ⁡ min ⁡ α i R ( α i ∣ x ) \alpha_* = \arg \min_{\alpha_i} R(\alpha_i \mid x) α=argαiminR(αix)

    选择使得期望损失最小的决策 α ∗ \alpha^* α

广义贝叶斯决策规则在两分类决策中的具体应用
  • 对于两分类情况,我们有两个类别:
    Ω = { ω 1 , ω 2 } \Omega = \{ \omega_1, \omega_2\} Ω={ω1,ω2}
    以及对应的决策动作:
    A = { α 1 , α 2 } A = \{ \alpha_1, \alpha_2 \} A={α1,α2}
    在上一部分,我们已经得出:
    R ( α 1 ∣ x ) = λ 11 P ( ω 1 ∣ x ) + λ 12 P ( ω 2 ∣ x ) R ( α 2 ∣ x ) = λ 21 P ( ω 1 ∣ x ) + λ 22 P ( ω 2 ∣ x ) \begin{array}{l} R\left(\alpha_1 \mid x\right)=\lambda_{11} P\left(\omega_1 \mid x\right)+\lambda_{12} P\left(\omega_2 \mid x\right) \\ R\left(\alpha_2 \mid x\right)=\lambda_{21} P\left(\omega_1 \mid x\right)+\lambda_{22} P\left(\omega_2 \mid x\right) \end{array} R(α1x)=λ11P(ω1x)+λ12P(ω2x)R(α2x)=λ21P(ω1x)+λ22P(ω2x)
    我们的决策准则是选择能使风险最小的决策:
    如果  R ( α 2 ∣ x ) > R ( α 1 ∣ x ) ,则选择  α 1 \begin{equation}\text { 如果 } R\left(\alpha_2 \mid x\right)>R\left(\alpha_1 \mid x\right) \text { ,则选择 } \alpha_1\end{equation}  如果 R(α2x)>R(α1x) ,则选择 α1
    即:
    λ 21 P ( ω 1 ∣ x ) + λ 22 P ( ω 2 ∣ x ) > λ 11 P ( ω 1 ∣ x ) + λ 12 P ( ω 2 ∣ x ) \lambda_{21} P\left(\omega_1 \mid x\right)+\lambda_{22} P\left(\omega_2 \mid x\right)>\lambda_{11} P\left(\omega_1 \mid x\right)+\lambda_{12} P\left(\omega_2 \mid x\right) λ21P(ω1x)+λ22P(ω2x)>λ11P(ω1x)+λ12P(ω2x)
    进一步整理得到:
    ( λ 21 − λ 11 ) P ( ω 1 ∣ x ) > ( λ 12 − λ 22 ) P ( ω 2 ∣ x ) \left(\lambda_{21}-\lambda_{11}\right) P\left(\omega_1 \mid x\right)>\left(\lambda_{12}-\lambda_{22}\right) P\left(\omega_2 \mid x\right) (λ21λ11)P(ω1x)>(λ12λ22)P(ω2x)
    转换为似然比形式: 我们使用贝叶斯公式:
    P ( ω i ∣ x ) = p ( x ∣ ω i ) P ( ω i ) p ( x ) P\left(\omega_i \mid x\right)=\frac{p\left(x \mid \omega_i\right) P\left(\omega_i\right)}{p(x)} P(ωix)=p(x)p(xωi)P(ωi)
    于是:
    ( λ 21 − λ 11 ) ⋅ p ( x ∣ ω 1 ) P ( ω 1 ) p ( x ) > ( λ 12 − λ 22 ) ⋅ p ( x ∣ ω 2 ) P ( ω 2 ) p ( x ) \left(\lambda_{21}-\lambda_{11}\right) \cdot \frac{p\left(x \mid \omega_1\right) P\left(\omega_1\right)}{p(x)}>\left(\lambda_{12}-\lambda_{22}\right) \cdot \frac{p\left(x \mid \omega_2\right) P\left(\omega_2\right)}{p(x)} (λ21λ11)p(x)p(xω1)P(ω1)>(λ12λ22)p(x)p(xω2)P(ω2)
    消去分母 p(x):
    ( λ 21 − λ 11 ) p ( x ∣ ω 1 ) P ( ω 1 ) > ( λ 12 − λ 22 ) p ( x ∣ ω 2 ) P ( ω 2 ) \left(\lambda_{21}-\lambda_{11}\right) p\left(x \mid \omega_1\right) P\left(\omega_1\right)>\left(\lambda_{12}-\lambda_{22}\right) p\left(x \mid \omega_2\right) P\left(\omega_2\right) (λ21λ11)p(xω1)P(ω1)>(λ12λ22)p(xω2)P(ω2)
    最终可以转换为似然比测试
    η = ( λ 12 − λ 22 ) P ( ω 2 ) ( λ 21 − λ 11 ) P ( ω 1 ) \eta=\frac{\left(\lambda_{12}-\lambda_{22}\right) P\left(\omega_2\right)}{\left(\lambda_{21}-\lambda_{11}\right) P\left(\omega_1\right)} η=(λ21λ11)P(ω1)(λ12λ22)P(ω2)
    那么决策规则可以表述为:
    如果 p ( x ∣ ω 1 ) p ( x ∣ ω 2 ) > η ,则选择 α 1 。否则,选择 α 2 如果 \frac{p\left(x \mid \omega_1\right)}{p\left(x \mid \omega_2\right)}>\eta ,则选择 \alpha_1 。 否则,选择 \alpha_2 如果p(xω2)p(xω1)>η,则选择α1。否则,选择α2
    这个决策准则表示:

    • 如果某个观测数据 x x x 使得类别 ω 1 \omega_1 ω1 的后验概率更大(超过一个特定的阈值 η \eta η ),则我们选择类别 ω 1 \omega_1 ω1
    • 否则,选择类别 ω 2 \omega_2 ω2

    这个形式是一个最优判别函数,它利用了损失函数 ( λ i j ) \left(\lambda_{i j}\right) (λij) 和类别的先验概率 ( P ( ω i ) ) \left(P\left(\omega_i\right)\right) (P(ωi)) 来确定决策边界。

判别函数

在模式识别(Pattern Recognition)和统计分类(Statistical Classification)中,判别函数用于决定数据点 x x x 属于哪个类别 ω i \omega_i ωi。在多分类(Multicategory)问题中,每个类别 ω i \omega_i ωi 都有一个判别函数 g i ( x ) g_i(x) gi(x),其定义如下:
g i ( x ) : R d → R , 1 ≤ i ≤ c g_i(x): \mathbb{R}^d \to \mathbb{R}, \quad 1 \leq i \leq c gi(x):RdR,1ic
其中:

  • c c c 是类别数
  • x x x 是输入样本
  • g i ( x ) g_i(x) gi(x) 是类别 ω i \omega_i ωi 的判别函数

分类器的决策规则是:

α ( x ) = arg ⁡ max ⁡ i g i ( x ) \alpha(x) = \arg\max_{i} g_i(x) α(x)=argimaxgi(x)

  • 最小风险判别(Minimum Risk Case)

    在最小风险(Minimum Risk)分类中,判别函数通常被定义为:
    g i ( x ) = − R ( α i ∣ x ) g_i(x) = -R(\alpha_i | x) gi(x)=R(αix)
    其中, R ( α i ∣ x ) R(\alpha_i | x) R(αix) 是给定样本 x x x 采取分类决策 α i \alpha_i αi 的风险(Risk)。

  • 最小错误率判别(Minimum Error-Rate Case)

    最小错误率(Minimum Error-Rate)决策规则基于后验概率:
    g i ( x ) = P ( ω i ∣ x ) g_i(x) = P(\omega_i | x) gi(x)=P(ωix)
    即,我们将样本 x x x 分配给具有最大后验概率的类别。

    根据贝叶斯公式:
    P ( ω i ∣ x ) = p ( x ∣ ω i ) P ( ω i ) p ( x ) P(\omega_i | x) = \frac{p(x | \omega_i) P(\omega_i)}{p(x)} P(ωix)=p(x)p(xωi)P(ωi)
    p ( x ) p(x) p(x) 在所有类别上都相同,则可以简化为:
    g i ( x ) = p ( x ∣ ω i ) P ( ω i ) g_i(x) = p(x | \omega_i) P(\omega_i) gi(x)=p(xωi)P(ωi)
    在对数域下:
    g i ( x ) = ln ⁡ p ( x ∣ ω i ) + ln ⁡ P ( ω i ) g_i(x) = \ln p(x | \omega_i) + \ln P(\omega_i) gi(x)=lnp(xωi)+lnP(ωi)

  • 决策区域(Decision Regions)

    在多分类问题中,我们通过判别函数划分 决策区域(Decision Region),即:
    R i = { x ∣ g i ( x ) > g j ( x ) , ∀ j ≠ i } R_i = \{ x | g_i(x) > g_j(x), \forall j \neq i \} Ri={xgi(x)>gj(x),j=i}
    两个类别之间的 决策边界(Decision Boundary) 由:
    g i ( x ) = g j ( x ) g_i(x) = g_j(x) gi(x)=gj(x)
    所决定。

  • 正态分布(Normal Distribution)

    在许多实际应用中,类条件概率密度函数 p ( x ∣ ω i ) p(x | \omega_i) p(xωi) 假设服从 正态分布(Gaussian Distribution)
    p ( x ∣ ω i ) = 1 ( 2 π ) d / 2 ∣ Σ i ∣ 1 / 2 exp ⁡ ( − 1 2 ( x − μ i ) T Σ i − 1 ( x − μ i ) ) p(x | \omega_i) = \frac{1}{(2\pi)^{d/2} |\Sigma_i|^{1/2}} \exp\left(-\frac{1}{2} (x - \mu_i)^T \Sigma_i^{-1} (x - \mu_i) \right) p(xωi)=(2π)d/2Σi1/21exp(21(xμi)TΣi1(xμi))
    其中:

    • μ i \mu_i μi 是类别 ω i \omega_i ωi 的均值向量
    • Σ i \Sigma_i Σi 是类别 ω i \omega_i ωi 的协方差矩阵
    • d d d 是特征维度

    当协方差矩阵 Σ i \Sigma_i Σi 相同时,最优决策边界是线性的(线性判别分析 LDA);当协方差矩阵不同,则决策边界为二次曲线(二次判别分析 QDA)。

  • 期望(Expectation)

    随机变量 X X X 的期望(Expectation)定义为:

    • 离散型:
      E [ X ] = ∑ x x P ( X = x ) E[X] = \sum_{x} x P(X = x) E[X]=xxP(X=x)

    • 连续型:
      E [ X ] = ∫ − ∞ ∞ x p ( x ) d x E[X] = \int_{-\infty}^{\infty} x p(x) dx E[X]=xp(x)dx

    • 均值(Mean):
      μ X = E [ X ] \mu_X = E[X] μX=E[X]

    • 方差(Variance):
      σ X 2 = E [ ( X − μ X ) 2 ] = E [ X 2 ] − ( E [ X ] ) 2 \sigma_X^2 = E[(X - \mu_X)^2] = E[X^2] - (E[X])^2 σX2=E[(XμX)2]=E[X2](E[X])2

  • 熵(Entropy)

    • 熵(Entropy)衡量一个随机变量的不确定性。熵应量化随机变量的“不确定性”或“信息量”。事件越不可预测(概率越低),其发生时提供的信息量应越大。均匀分布时熵最大(不确定性最高),确定分布时熵最小(零)。

      • 确定分布(如 P ( x 1 ) = 1 P(x_1) = 1 P(x1)=1):熵为 0(无不确定性)。
      • 均匀分布(如 P ( x i ) = 1 / N P(x_i) = 1/N P(xi)=1/N:熵为 log ⁡ N \log N logN(最大值)。
    • 首先定义单个事件 x i x_i xi的“信息量”(或“惊喜程度”):
      I ( x i ) = − log ⁡ P ( x i ) I(x_i) = - \log P(x_i) I(xi)=logP(xi)

    • 熵需要反映随机变量整体的不确定性,而非单个事件的信息量。因此熵是信息量的期望值(即平均信息量):

      • 对于离散型:
        H ( X ) = E [ I ( X ) ] = ∑ P ( x i ) I ( x i ) = − ∑ P ( x i ) log ⁡ P ( x i ) H(X) = \mathbb{E}[I(X)] = \sum P(x_i)I(x_i) = - \sum P(x_i) \log P(x_i) H(X)=E[I(X)]=P(xi)I(xi)=P(xi)logP(xi)

      • 对于连续型:
        H ( X ) = − ∫ P ( x ) log ⁡ P ( x ) d x H(X) = - \int P(x) \log P(x) dx H(X)=P(x)logP(x)dx

相关文章:

  • GPU 性能可变性分析框架
  • 60 python asyncio模块(异步IO)
  • CANdela/Diva系列10--CDD文件在CANoe工程的应用2
  • LeetCode 312 戳气球题解(Swift)+ 区间 DP 原理详解 + 可运行代码
  • 高斯过程动态规划(GPDP)
  • FLUX.1 Kontext(Dev 版)训练lora基础教程
  • 将listener转换为事件流
  • 系统思考:结构影响行为
  • VS2022配置x86/x64调用32位和64位汇编语言动态库环境
  • 【C/C++】C++26新特性前瞻:全面解析未来编程
  • 【k近邻】 K-Nearest Neighbors算法原理及流程
  • 双指针技巧深度解析
  • 新一代python的包管理软件mamba
  • 详解HashMap底层原理
  • JDBC 工具类:1.0到3.0版本
  • 【大模型水印论文阅读2】前缀文本编码、均匀性约束
  • Java--数组
  • 基于springboot的火锅店点餐系统
  • OpenCV图像添加水印
  • RocketMQ 消息长轮询