机器学习07——贝叶斯分类器(贝叶斯决策论、极大似然估计、朴素贝叶斯分类器)

发布于:2025-09-10 ⋅ 阅读:(17) ⋅ 点赞:(0)

上一章:机器学习06——支持向量机
下一章:机器学习08——集成学习
机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备

一、贝叶斯决策论(概率框架下的决策基础)

贝叶斯决策论是在概率框架下实施决策的基本方法,核心是基于后验概率和误判损失选择最优类别标记,以最小化总体风险。

(一)核心概念与准则
  • 条件风险:将样本 x x x分类为类别 c i c_i ci的期望损失,计算公式为:
    R ( c i ∣ x ) = ∑ j = 1 N λ i j P ( c j ∣ x ) R(c_i | x) = \sum_{j=1}^N \lambda_{ij} P(c_j | x) R(cix)=j=1NλijP(cjx)
    其中 λ i j \lambda_{ij} λij是将真实类别 c j c_j cj误判为 c i c_i ci的损失, P ( c j ∣ x ) P(c_j | x) P(cjx)是后验概率。
  • 贝叶斯判定准则:为最小化总体风险,对每个样本选择条件风险最小的类别标记,即:
    h ∗ ( x ) = a r g m i n c ∈ Y R ( c ∣ x ) h^*(x) = \underset{c \in \mathcal{Y}}{argmin} R(c | x) h(x)=cYargminR(cx)
    此时的分类器 h ∗ ( x ) h^*(x) h(x)称为贝叶斯最优分类器,对应的总体风险 R ( h ∗ ) R(h^*) R(h)为贝叶斯风险,是机器学习模型精度的理论上限。
  • 最小化分类错误率:若误判损失 λ i j = 0 \lambda_{ij} = 0 λij=0(正确分类)或1(错误分类),则条件风险简化为 R ( c ∣ x ) = 1 − P ( c ∣ x ) R(c | x) = 1 - P(c | x) R(cx)=1P(cx),此时最优分类器为选择后验概率最大的类别:
    h ∗ ( x ) = a r g m a x c ∈ Y P ( c ∣ x ) h^*(x) = \underset{c \in \mathcal{Y}}{argmax} P(c | x) h(x)=cYargmaxP(cx)
(二)后验概率的获取

后验概率 P ( c ∣ x ) P(c | x) P(cx)是贝叶斯决策的关键,主要通过两种策略获取:

  • 判别式模型:直接建模 P ( c ∣ x ) P(c | x) P(cx),如决策树、神经网络、支持向量机等;
  • 生成式模型:先建模联合概率 P ( x , c ) P(x, c) P(x,c),再通过贝叶斯定理推导后验概率:
    P ( c ∣ x ) = P ( c ) P ( x ∣ c ) P ( x ) P(c | x) = \frac{P(c)P(x | c)}{P(x)} P(cx)=P(x)P(c)P(xc)
    其中 P ( c ) P(c) P(c)是先验概率(类别的先验分布), P ( x ∣ c ) P(x | c) P(xc)是类条件概率(似然), P ( x ) P(x) P(x)是证据因子(与类别无关)。

二、极大似然估计(类条件概率的参数估计)

极大似然估计是频率主义学派对类条件概率 P ( x ∣ c ) P(x | c) P(xc)的参数估计方法,核心是假设概率分布形式,通过训练样本最大化似然函数求解参数。

(一)基本思想
  • 假设类条件概率 P ( x ∣ c ) P(x | c) P(xc)服从某种确定的分布(如正态分布),其参数为 θ c \theta_c θc
  • 似然函数:给定参数 θ c \theta_c θc时,训练集 D c D_c Dc(第 c c c类样本)出现的概率,即:
    P ( D c ∣ θ c ) = ∏ x ∈ D c P ( x ∣ θ c ) P(D_c | \theta_c) = \prod_{x \in D_c} P(x | \theta_c) P(Dcθc)=xDcP(xθc)
  • 极大似然估计:寻找使似然函数最大的参数 θ ^ c \hat{\theta}_c θ^c,即 θ ^ c = a r g m a x θ c P ( D c ∣ θ c ) \hat{\theta}_c = \underset{\theta_c}{argmax} P(D_c | \theta_c) θ^c=θcargmaxP(Dcθc)
(二)对数似然与实例
  • 为避免连乘下溢,通常使用对数似然:
    L L ( θ c ) = log ⁡ P ( D c ∣ θ c ) = ∑ x ∈ D c log ⁡ P ( x ∣ θ c ) LL(\theta_c) = \log P(D_c | \theta_c) = \sum_{x \in D_c} \log P(x | \theta_c) LL(θc)=logP(Dcθc)=xDclogP(xθc)
  • 实例:若 P ( x ∣ c ) P(x | c) P(xc)服从正态分布 N ( μ c , σ c 2 ) N(\mu_c, \sigma_c^2) N(μc,σc2),则参数的极大似然估计为:
    μ ^ c = 1 ∣ D c ∣ ∑ x ∈ D c x , σ ^ c 2 = 1 ∣ D c ∣ ∑ x ∈ D c ( x − μ ^ c ) 2 \hat{\mu}_c = \frac{1}{|D_c|} \sum_{x \in D_c} x \quad, \quad \hat{\sigma}_c^2 = \frac{1}{|D_c|} \sum_{x \in D_c} (x - \hat{\mu}_c)^2 μ^c=Dc1xDcx,σ^c2=Dc1xDc(xμ^c)2
    即均值为样本均值,方差为样本方差。
(三)局限性

估计结果依赖于假设的概率分布形式是否符合真实数据分布,若假设错误,估计精度会大幅下降。

三、朴素贝叶斯分类器(简化的生成式模型)

朴素贝叶斯分类器通过“属性条件独立性假设”简化类条件概率的计算,适用于高维数据场景。

(一)核心假设与表达式
  • 属性条件独立性假设:每个属性独立影响分类结果,即类条件概率可分解为单个属性条件概率的乘积:
    P ( x ∣ c ) = ∏ i = 1 d P ( x i ∣ c ) P(x | c) = \prod_{i=1}^d P(x_i | c) P(xc)=i=1dP(xic)
    其中 d d d为属性数, x i x_i xi是样本 x x x在第 i i i个属性上的取值。
  • 分类器表达式:由于 P ( x ) P(x) P(x)对所有类别相同,分类器简化为:
    h n b ( x ) = a r g m a x c ∈ Y P ( c ) ∏ i = 1 d P ( x i ∣ c ) h_{nb}(x) = \underset{c \in \mathcal{Y}}{argmax} P(c) \prod_{i=1}^d P(x_i | c) hnb(x)=cYargmaxP(c)i=1dP(xic)
(二)概率估计方法
  1. 先验概率 P ( c ) P(c) P(c)
    P ( c ) = ∣ D c ∣ ∣ D ∣ P(c) = \frac{|D_c|}{|D|} P(c)=DDc
    其中 D c D_c Dc是训练集 D D D中第 c c c类样本的集合。

  2. 离散属性的条件概率 P ( x i ∣ c ) P(x_i | c) P(xic)
    P ( x i ∣ c ) = ∣ D c , x i ∣ ∣ D c ∣ P(x_i | c) = \frac{|D_{c, x_i}|}{|D_c|} P(xic)=DcDc,xi
    其中 D c , x i D_{c, x_i} Dc,xi D c D_c Dc中第 i i i个属性取值为 x i x_i xi的样本集合。

  3. 连续属性的条件概率 p ( x i ∣ c ) p(x_i | c) p(xic)
    通常假设服从正态分布,概率密度函数为:
    p ( x i ∣ c ) = 1 2 π σ c , i exp ⁡ ( − ( x i − μ c , i ) 2 2 σ c , i 2 ) p(x_i | c) = \frac{1}{\sqrt{2\pi}\sigma_{c,i}} \exp\left(-\frac{(x_i - \mu_{c,i})^2}{2\sigma_{c,i}^2}\right) p(xic)=2π σc,i1exp(2σc,i2(xiμc,i)2)
    其中 μ c , i \mu_{c,i} μc,i σ c , i 2 \sigma_{c,i}^2 σc,i2分别是第 c c c类样本在第 i i i个属性上的均值和方差。

(三)实例:西瓜数据集分类

在这里插入图片描述

在这里插入图片描述

对测试例“测1”(色泽=青绿,根蒂=蜷缩,…,密度=0.697,含糖率=0.460),通过计算:

  • 好瓜的概率: P ( 好瓜 = 是 ) × ∏ P ( x i ∣ 是 ) ≈ 0.052 P(好瓜=是) \times \prod P(x_i | 是) \approx 0.052 P(好瓜=)×P(xi)0.052
  • 坏瓜的概率: P ( 好瓜 = 否 ) × ∏ P ( x i ∣ 否 ) ≈ 6.80 × 1 0 − 5 P(好瓜=否) \times \prod P(x_i | 否) \approx 6.80 \times 10^{-5} P(好瓜=)×P(xi)6.80×105
    最终分类为“好瓜”。

四、拉普拉斯修正(解决零概率问题)

当训练集中某个属性值与类别未同时出现时,直接计算会导致条件概率为0,掩盖其他属性的信息,拉普拉斯修正可解决这一问题。

(一)修正公式
  • 先验概率修正:
    P ^ ( c ) = ∣ D c ∣ + 1 ∣ D ∣ + N \hat{P}(c) = \frac{|D_c| + 1}{|D| + N} P^(c)=D+NDc+1
    其中 N N N是类别数。
  • 条件概率修正:
    P ^ ( x i ∣ c ) = ∣ D c , x i ∣ + 1 ∣ D c ∣ + N i \hat{P}(x_i | c) = \frac{|D_{c, x_i}| + 1}{|D_c| + N_i} P^(xic)=Dc+NiDc,xi+1
    其中 N i N_i Ni是第 i i i个属性的可能取值数。
(二)作用

通过添加1个虚拟样本,避免概率为0的极端情况,同时保证概率之和为1,使分类更合理(如“敲声=清脆”在好瓜中未出现时,修正后不会直接导致好瓜概率为0)。

五、朴素贝叶斯的应用场景

  • 速度要求高:模型简单,预测时仅需查表计算概率乘积;
  • 数据更替频繁:支持“懒惰学习”(无需预先训练,实时计算概率);
  • 增量学习:可通过不断添加新样本更新概率估计,适应动态数据。

上一章:机器学习06——支持向量机
下一章:机器学习08——集成学习
机器学习实战项目:【从 0 到 1 落地】机器学习实操项目目录:覆盖入门到进阶,大学生就业 / 竞赛必备


网站公告

今日签到

点亮在社区的每一天
去签到