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

学习笔记二十九:贝叶斯决策论

1. 基本概念

1.1 贝叶斯决策论的定义

贝叶斯决策论(Bayesian Decision Theory)
概率框架下实施决策的基本方法。

分类任务中的贝叶斯决策论
在理想情况下,当所有相关概率都已知时,贝叶斯决策论考虑如何基于这些概率和误判损失来选择最优的类别标记。

基本假设
假设有NNN种可能的类别标记,即Y={c1,c2,…,cN}\mathcal{Y} = \{c_1, c_2, \ldots, c_N\}Y={c1,c2,,cN}

1.2 误判损失

误判损失λij\lambda_{ij}λij
将一个真实标记为cjc_jcj的样本误分类为cic_ici所产生的损失。

0/1损失函数
若目标是最小化分类错误率,则误判损失可写为:

λij={0,if i=j1,otherwise\lambda_{ij} = \begin{cases} 0, & \text{if } i = j \\ 1, & \text{otherwise} \end{cases}λij={0,1,ifi=jotherwise

即正确分类损失为0,错误分类损失为1。

1.3 条件风险

条件风险(Conditional Risk)
基于后验概率P(cj∣x)P(c_j | x)P(cjx),可获得将样本xxx分类为cic_ici所产生的期望损失,即在样本xxx上的条件风险:

R(ci∣x)=∑j=1NλijP(cj∣x)R(c_i | x) = \sum_{j=1}^{N} \lambda_{ij} P(c_j | x)R(cix)=j=1NλijP(cjx)

条件风险的含义
条件风险表示在给定样本xxx的情况下,将xxx分类为cic_ici的期望损失。

1.4 总体风险

总体风险(Overall Risk)
寻找一个判定准则h:X→Yh: \mathcal{X} \to \mathcal{Y}h:XY以最小化总体风险:

R(h)=Ex[R(h(x)∣x)]R(h) = \mathbb{E}_x [R(h(x) | x)]R(h)=Ex[R(h(x)x)]

总体风险的含义
总体风险表示判定准则hhh在所有样本上的平均期望损失。

1.5 贝叶斯判定准则

贝叶斯判定准则(Bayes Decision Rule)
对每个样本xxx,若hhh能最小化条件风险R(h(x)∣x)R(h(x) | x)R(h(x)x),则总体风险R(h)R(h)R(h)也将被最小化。为最小化总体风险,只需在每个样本上选择那个能使条件风险R(c∣x)R(c | x)R(cx)最小的类别标记:

h∗(x)=arg⁡min⁡c∈YR(c∣x)h^*(x) = \arg\min_{c \in \mathcal{Y}} R(c | x)h(x)=argcYminR(cx)

贝叶斯最优分类器
h∗h^*h称为贝叶斯最优分类器(Bayes Optimal Classifier),与之对应的总体风险R(h∗)R(h^*)R(h)称为贝叶斯风险(Bayes Risk)。

贝叶斯风险的意义
1−R(h∗)1 - R(h^*)1R(h)反映了分类器所能达到的最好性能,即通过机器学习所能产生的模型精度的理论上限。

2. 具体方法

2.1 最小化分类错误率

0/1损失下的条件风险
当使用0/1损失函数时,条件风险为:

R(c∣x)=1−P(c∣x)R(c | x) = 1 - P(c | x)R(cx)=1P(cx)

最小化分类错误率的贝叶斯最优分类器
此时,最小化分类错误率的贝叶斯最优分类器为:

h∗(x)=arg⁡max⁡c∈YP(c∣x)h^*(x) = \arg\max_{c \in \mathcal{Y}} P(c | x)h(x)=argcYmaxP(cx)

直观理解
即对每个样本xxx,选择能使后验概率P(c∣x)P(c | x)P(cx)最大的类别标记。这符合直觉:选择最可能的类别。

2.2 后验概率的估计

核心问题
欲使用贝叶斯判定准则来最小化决策风险,首先要获得后验概率P(c∣x)P(c | x)P(cx)。然而,在现实任务中这通常难以直接获得。

机器学习的目标
从这个角度来看,机器学习所要实现的是基于有限的训练样本集尽可能准确地估计出后验概率P(c∣x)P(c | x)P(cx)

两种建模策略

  1. 判别式模型(Discriminative Models)

    • 给定xxx,可通过直接建模P(c∣x)P(c | x)P(cx)来预测ccc
    • 例如:决策树、BP神经网络、支持向量机等
  2. 生成式模型(Generative Models)

    • 先对联合概率分布P(x,c)P(x, c)P(x,c)建模,然后再由此获得P(c∣x)P(c | x)P(cx)
    • 例如:朴素贝叶斯分类器等

2.3 贝叶斯定理

贝叶斯定理
基于贝叶斯定理,P(c∣x)P(c | x)P(cx)可写为:

P(c∣x)=P(x,c)P(x)=P(c)P(x∣c)P(x)P(c | x) = \frac{P(x, c)}{P(x)} = \frac{P(c) P(x | c)}{P(x)}P(cx)=P(x)P(x,c)=P(x)P(c)P(xc)

各项的含义

  • P(c)P(c)P(c):类"先验"概率

    • 表达了样本空间中各类样本所占的比例
    • 根据大数定律,当训练集包含充足的独立同分布样本时,P(c)P(c)P(c)可通过各类样本出现的频率来进行估计
  • P(x∣c)P(x | c)P(xc):样本xxx相对于类标记ccc类条件概率,或称为"似然"

  • P(x)P(x)P(x):用于归一化的"证据"因子

    • 对给定样本xxx,证据因子P(x)P(x)P(x)与类标记ccc无关
    • 因此估计P(c∣x)P(c | x)P(cx)的问题就转化为如何基于训练数据DDD来估计先验P(c)P(c)P(c)和似然P(x∣c)P(x | c)P(xc)

2.4 估计类条件概率的困难

类条件概率的特点
类条件概率P(x∣c)P(x | c)P(xc)涉及关于xxx所有属性的联合概率。

估计困难
直接根据样本出现的频率来估计将会遇到严重的困难。

具体例子
假设样本的ddd个属性都是二值的,则样本空间将有2d2^d2d种可能的取值。在现实应用中,这个值往往远大于训练样本数mmm

核心问题
很多样本取值在训练集中根本没有出现,"未被观测到"与"出现概率为零"通常是不同的。

解决方案
需要采用其他方法来估计类条件概率,例如:

  • 假设属性之间相互独立(朴素贝叶斯)
  • 使用参数估计方法
  • 使用非参数估计方法

3. 总结

贝叶斯决策论的核心思想

  1. 概率框架:在概率框架下实施决策,基于概率和误判损失选择最优类别标记
  2. 最小化风险:通过最小化条件风险来最小化总体风险
  3. 理论最优:贝叶斯最优分类器提供了分类器性能的理论上限

贝叶斯判定准则

  • 一般形式:选择使条件风险最小的类别标记
  • 0/1损失下:选择使后验概率最大的类别标记
  • 理论保证1−R(h∗)1 - R(h^*)1R(h)反映了分类器所能达到的最好性能

后验概率的估计

  • 判别式模型:直接建模P(c∣x)P(c | x)P(cx)
  • 生成式模型:通过建模P(x,c)P(x, c)P(x,c)来获得P(c∣x)P(c | x)P(cx)
  • 贝叶斯定理:将后验概率分解为先验概率和类条件概率

实际应用中的挑战

  • 类条件概率估计困难:样本空间往往远大于训练样本数
  • 需要假设或近似:通常需要假设属性独立性或使用其他估计方法
  • 理论指导实践:贝叶斯决策论为实际分类方法提供了理论指导

贝叶斯决策论的意义

  • 为分类问题提供了概率框架下的理论基础
  • 明确了最优分类器的定义和性质
  • 指导了判别式模型和生成式模型的设计
  • 为评估分类器性能提供了理论基准
http://www.cnnetsun.cn/news/42726.html

相关文章:

  • 告别开题报告模板拼凑!虎贲等考 AI 智能生成,让选题逻辑从模糊想法变身可执行研究计划
  • 【LeetCode刷题】跳跃游戏
  • 鸿蒙PC UI控件库 - PasswordInput 密码输入框详解
  • day37简单的神经网络@浙大疏锦行
  • 【水果识别】基于机器视觉苹果和香蕉的成熟度和大小检测附Matlab代码
  • JAVA的平凡之路——此峰乃是最高峰JVM-附加小菜-04
  • 【电力系统】电力系统优化与控制热液调度附Matlab代码和报告
  • 基于6种最新算法(小龙虾优化算法COA、MSA、RTH、NOA、BFO、SWO)求解机器人路径规划研究附Matlab代码
  • Golang实战:构建综合多头(逾期+反欺诈)风险查询的高性能客户端
  • 【TSP问题】基于蜣螂算法DBO和改进的蜣螂算法FADBO求解旅行商TSP问题(可根据自己的经纬度设置自己想要到达的地区)附Matlab代码
  • 【太阳能学报EI复现】基于粒子群优化算法的风-水电联合优化运行分析附Matlab代码
  • 数据结构:二叉排序树,平衡二叉树,红黑树的介绍
  • 软件复用的分类与实现
  • google服务
  • 进程PCB
  • 实战教程:1小时掌握逆向Unity游戏 (共13课时)
  • [从零构建操作系统]08 函数调用时栈的底层行为解析
  • 力扣hot100:搜索插入位置
  • Java冷启动全指南:从原理到实战优化
  • 测试 - 单元测试(JUnit)
  • C++中多态
  • c++经典练习题-多分支
  • qt为什么转向用cmake放弃qmake
  • 云屋音视频 SDK 凭何成为信创技术困局的 “破局者”?
  • 纯电动汽车动力经济性仿真:Cruise与Simulink联合仿真(2015版),包含BMS、再...
  • 【怎么理解maven中的镜像和仓库?】
  • comsol枝晶生长,沉积模型,包括:典型,形状成核,随机成核,均匀沉积,雪花晶形成过程。 适...
  • 终极指南:Qwen3-30B-A3B多GPU分布式推理完整解决方案
  • 腾讯混元语音驱动数字人技术:重塑动态视频生成新范式
  • 【MicroPython编程-ESP32篇】-Web页面显示DHT11传感器数据