【模式识别】贝叶斯决策模型理论总结

贝叶斯决策模型理论

    • 一、引言
    • 二、贝叶斯定理
    • 三、先验概率和后验概率
      • 3.1 先验概率
      • 3.2 后验概率
    • 四、最大后验准则
    • 五、最小错误率
    • 六、最小化风险
    • 七、最小最大决策
    • 八、贝叶斯决策建模
    • 参考

一、引言

在概率计算中,我们常常遇到这样的一类问题,某事件的发生可能依赖于多种原因,对这样的事件直接求规律往往是无能为力的。概率与我们的生存、生活是密不可分的,在我们的生活中要想使我们的期望效用最大化,我们必须考虑各种客观条件的存在,用理性的科学的思维去判断问题、分析问题,最终做出正确的决策。

二、贝叶斯定理

贝叶斯定理(Bayes theorem)是概率论中的一个结果,它跟随机变量的条件概率以及边缘概率分布有关。

通常,事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的;然而,这两者是有确定的关系,贝叶斯定理就是这种关系的陈述。

贝叶斯定理是关于随机事件A和B的条件概率和边缘概率的一则定理。

其中P(A|B)是在B发生的情况下A发生的可能性。
在贝叶斯定理中,每个名词都有约定俗成的名称:
 P(A)是A的先验概率或边缘概率。之所以称为"先验"是因为它不考虑任何B方面的因素。
 P(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率。
 P(B|A)是已知A发生后B的条件概率,也由于得自A的取值而被称作B的后验概率。
 P(B)是B的先验概率或边缘概率,也作标准化常量(normalized constant)。

三、先验概率和后验概率

3.1 先验概率

直观理解,所谓“先”,就是在事情之前,即在事情发生之前事情发生的概率。是根据以往经验和分析得到的概率。比如抛硬币,我们都认为正面朝上的概率是0.5,这就是一种先验概率,在抛硬币前,我们只有常识。这个时候事情还没发生,我们进行概率判断。所谓的先验概率是对事情发生可能性猜测的数学表示。

3.2 后验概率

后验概率是事情已经发生了,事情发生可能有很多原因,判断事情发生时由哪个原因引起的概率。

比如今天你没去学校,原因有两个,可能是生病了,也可能是自行车坏了。然后上课时老师发现你没来。(这里是一个结果,就是你没来学校这件事情已经发生了)老师叫学霸计算一下概率,分别是因为生病了没来学校的概率和自行车坏了没来学校的概率。

很显然,后验概率就是在事情发生后判断由哪一个原因引起的概率。这里的事情是你上学迟到,原因有生病了和自行车坏了。

数学表达:
在这里插入图片描述

四、最大后验准则

在对一个物体进行分类时,最直观的方法是根据这个物体的特征,选择最契合这个特征的类,这种思想就是最大化后验准则。形式化地描述就是根据某个物体的特征向量x,估计每个类在这特征向量下的后验概率,然后选择后验概率最大的类。
在这里插入图片描述
P(x)和P(w)作为先验概率。如果我们没有先验知识,只能忽略掉先验,这时候决策准则就变成了最大似然(Maximum Likelihood,ML)准则:

最大似然准则一个的直观理解是在什么样的状态下,最可能产生现在的观测到的数据。

假设我们需要设计一个能分开鲈鱼和鲑鱼的分类器(约定w_1代表鲑鱼,w_2代表鲈鱼)。当我们唯一能利用的信息是先验概率时,即只知道鲈鱼和鲑鱼的出现概率P(w_1)和P(w_2),那么我们就按照以下准则判断:若P(w_1)>P(w_2)就判定为w1,反之亦然。

如果只进行一次判决,这样的准则还是合理的,但是如果我们需要多次进行判断,那这样判断就很奇怪。好在大多数情况下,我们不会只根据先验进行判断,假设我们已经统计出了鲈鱼和鲑鱼身长的概率:
在这里插入图片描述
那么,在进行判断时,我们可以根据鱼的身长x最大化P(x|w)判断属于哪一类,如下图,这样就是最大似然准则。
在这里插入图片描述

五、最小错误率

最小错误率决策指将样本分错的概率最小,换句话说就是在对样本进行分类的时候分为正确类别的概率最大。也就是说,把使得后验概率p(wi|x)最大的wi作为x的判定类别。因为p(wi|x)最大即表示x属于wi的概率最大,也就是x被判错的概率最小。

决策的好坏可以通过错误率进行衡量,错误率可以根据全概率公式总合每个类分错的概率和这个类的概率,下面的公式很直观地解释了错误率。
在这里插入图片描述
其中,P[error|w]是类被分错的概率,所谓分错就是被分成了其他类。
以上面鲑鱼、鲈鱼分类为例,我们根据最大似然准则确定了对鲈鱼和鲑鱼的分类。直观上,错误率就如下图的阴影部分:
在这里插入图片描述
公式表示为:
在这里插入图片描述
其中,对P[x|w1]在R2决策区域的积分就是w1被错分为w2的概率,对应阴影部分ε1。
上面的错误率是在每个类别的分布(即先验)已知的状态下计算的。我们也可以根据全概率公式综合所有样本计算错误率:
在这里插入图片描述
对于最大后验准则,我们选择P(w|x)最大的决策。直观上,某类后验概率的最大化对应着其他类的后验概率之和最小化,也就是P[error|x]的最小化,而P(x)是固定的,所以直观上最大后验概率准则最小化了错误率。

六、最小化风险

最大化后验准则假设每类分错时代价(或者说惩罚)是一样的。然而在实际生活中,往往没有这么理想,如疾病诊断时把实际有病的人分类为健康的代价就比把健康的人分类为有病的代价大。贝叶斯准则就是考虑了误分类带来的不同的风险,最小化风险进行分类。定义贝叶斯风险如下:
在这里插入图片描述
其中,C_ij表示将j类错分为i类导致的代价,代价乘以该类的概率就是将该类错分为i类的风险。因此分类为i类的贝叶斯风险就是将其他类错分为i类的风险总合。我们在决策时,选择的是贝叶斯风险最小的类。
可以发现,当C_ij是如下形式时,贝叶斯准则就成为了最大后验准则:
在这里插入图片描述
因此,最大后验准则是贝叶斯准则的一个特定情况,最大似然准则是最大后验准则的一个特定情况。
与最大后验准则最小化的错误率相对应,贝叶斯准则最小化的是贝叶斯风险。

七、最小最大决策

从最小错误率和最小风险贝叶斯决策中可以看出其决策都是与先验概率P(w_i)有关的。如果给定的x,其P(w_i)不变,按照贝叶斯决策规则,可以使错误率和风险最小。但是如果P(w_i)是可变的,或事先对先验概率毫不知道的情况下,若再按某个固定的P(w_i)条件下的决策进行就往往得不到最小错误率或最小风险。而最小最大决策就是考虑在P(w_i)变化的情况下,如何使最大可能的风险为最小,也就是在最差的条件下争取到最好的结果。

在做最小最大贝叶斯决策时,若考虑P(w_i)有可能改变或对先验概率毫不知晓的情况下,应选择贝叶斯风险R为最大值时的P(w_i)来设计分类器,此时能保证其风险相对于其它的P(w_i)为最大,而能保证在不管P(w_i)如何变化,使最大最小风险为最小。

八、贝叶斯决策建模

  1. 确定决策问题的状态空间和决策空间;
  2. 确定各状态的先验概率分布;
  3. 确定各状态下各决策的条件概率分布;
  4. 计算各决策的期望损失,并选择期望损失最小的决策。

参考

http://t.csdnimg.cn/lrdGp
http://t.csdnimg.cn/3LNPF

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/103714.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MobileNetV3

相对重量级网络而言,轻量级网络的特点是参数少、计算量小、推理时间短。更适用于存储空间和功耗受限的场景,例如移动端嵌入式设备等边缘计算设备。因此轻量级网络受到了广泛的关注,其中MobileNet可谓是其中的佼佼者。MobileNetV3经过了V1和V2…

iOS 配置通用链接(Universal Link)服务端和开发者后台都配置好了,还是跳转不到App

目录 一、什么是 Universal Link? 1.背景介绍 2.特点 3.运行机制原理&流程图 二、配置教程 1.第一步:开启 Associated Domains 服务 1.1 开通 Associated Domains 2.第二步:服务器配置 apple-app-site-association(AAS…

RISC-V架构——中断处理和中断控制器介绍

1、ARM架构中断机制介绍 本文不是从零开始讲解中断,对于中断的基本知识不再赘述,对中断不是很了解可以先学习ARM中断的文章。参考博客:《ARM架构的外部中断介绍(S5PV210芯片)》; 2、RIAC_V架构的中断控制器架构 (1&…

Qt之自定义事件QEvent

在Qt中,自定义事件的步骤大概如下: 1.创建自定义事件,自定义事件需要继承QEvent 2.使用QEvent::registerEventType()注册自定义事件类型,事件的类型需要在 QEvent::User 和 QEvent::MaxUser 范围之间,在QEvent::User之前是预留给系统的事件 3.使用sendEvent() 和 postEv…

【软件安装】Linux系统中安装MySQL数据库服务

这篇文章,主要介绍如何在Linux系统中安装MySQL数据库服务。 目录 一、Linux安装MySQL 1.1、下载MySQL安装包 1.2、解压MySQL安装包 1.3、更改存放目录 1.4、创建用户组和用户 1.5、创建数据目录data 1.6、创建my.cnf配置文件 1.7、初始化数据库 1.8、添加m…

C# 基于腾讯云人脸核身和百度云证件识别技术相结合的 API 实现

目录 腾讯云人脸核身技术 Craneoffice.net 采用的识别方式 1、活体人脸核身(权威库): 2、活体人脸比对: 3、照片人脸核身(权威库): 调用成本 百度云身份证识别 调用成本 相关结合点 核心代码 实现调用人脸核身API的示例 实现调用身…

微信小程序设置 wx.showModal 提示框中 确定和取消按钮的颜色

wx官方提供的 showModal 无疑是个非常优秀的选择提示工具 但是 我们还可以让他的颜色更贴近整体的小程序风格 cancelColor 可以改变取消按钮的颜色 confirmColor 则可以控制确定按钮的颜色 参考代码如下 wx.showModal({cancelColor: #0000FF,confirmColor: #45B250,content:…

行业追踪,2023-10-25

自动复盘 2023-10-25 凡所有相,皆是虚妄。若见诸相非相,即见如来。 k 线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让…

如何构建一个外卖微信小程序

随着外卖行业的不断发展,越来越多的商家开始关注外卖微信小程序的开发。微信小程序具有使用方便、快速上线、用户覆盖广等优势,成为了商家们的首选。 那么,如何快速开发一个外卖微信小程序呢?下面就让我们来看看吧! 首…

Python Opencv实践 - 入门使用Tesseract识别图片中的文字

做车牌识别项目前试一试tesseract识别中文。tesseract的安装使用请参考: Python OCR工具pytesseract详解 - 知乎pytesseract是基于Python的OCR工具, 底层使用的是Google的Tesseract-OCR 引擎,支持识别图片中的文字,支持jpeg, png…

面试题之Vue和React的区别是什么?

一提到前端框架,相信大家都对Vue和React不陌生,这两个前端框架都是比较主流的,用户也都比较多,但是我们在使用这些框架的时候,是否对这两个框架之间的区别有所了解呢?接下来,让我们来一起的系统…

RK3399平台开发中安卓系统去除USB权限弹窗

RK3399平台开发中安卓系统去除USB权限弹窗 问题方法 问题 当我们在访问一个插入到Android系统的USB设备的时候往往是需要权限的,此时系统会弹出询问权限的对话框,而我们此时希望让它默认允许访问USB设备并且不希望用户看到这个对话框。 方法 文件目录&…

Git不常用命令(持续更新)

今日鸡汤:当你最满足的时候,通常也最孤独;当你最愤慨的时候,通常也最可怜。 此博文会列出一些平时不常用,但是能提高效率的git命令,后续会出IDEA对应的操作步骤 快看看你是不是都用过... 分支(…

蓝桥算法赛(铺地板)

问题描述 小蓝家要装修了,小蓝爸爸买来了很多块(你可以理解为数量无限) 23 规格的地砖,小蓝家的地板是 nm 规格的,小蓝想问你,能否用这些 23 的地砖铺满地板。 铺满地板:对于地板的每个区域&…

C语言-面试题实现有序序列合并

要求: a.输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。 数据范围: 1≤n,m≤1000 1≤n,m≤1000 , 序列中的值满足 0≤val≤30000 输入描述: 1.输入包含三行, 2.第一行包含两个正整数n, m&am…

Kubernetes 的有状态和无状态服务

Author:rab 目录 前言一、无状态服务案例1.1 yml 案例1.2 扩容与缩容1.2.1 扩容1.2.2 缩容 1.3 暂停与恢复1.3.1 暂停1.3.2 恢复 1.4 回滚 二、有状态服务案例2.1 yml 案例2.2 扩容与缩容2.2.1 扩容2.2.2 缩容 总结 前言 在 Kubernetes(k8s)…

(Java)中的数据类型和变量

文章目录 一、字面常量二、数据类型三、变量1.变量的概念2.语法的格式3.整型变量4.长整型变量5.短整型变量6.字节型变量 四、浮点型变量1.双精度浮点数2.单精度浮点数 五、字符型常量六、布尔型变量七、类型转换1.自动类型转换(隐式)2.强制类型转换(显式…

SCT52240STDR双路 4A/4A 高速MOSFET/IGBT栅极驱动器, 可并联输出

SCT52240是是一款宽供电电压、双通道、高速、低测栅极驱动器,包括功率MOSFET,IGBT。单个通道能够提供高达4A拉电流和4A灌电流的轨到轨驱动能力,并实现轨到轨输出。高达24V宽电压范围提高功率器件开关瞬间栅极驱动的振铃幅值裕度。13ns输入输出…

Pytorch公共数据集、tensorboard、DataLoader使用

本文将主要介绍torchvision.datasets的使用,并以CIFAR-10为例进行介绍,对可视化工具tensorboard进行介绍,包括安装,使用,可视化过程等,最后介绍DataLoader的使用。希望对你有帮助 Pytorch公共数据集 torc…

如何理解某一个开发框架的意图,从而去写和落代码文件位置不会出错

理解一个开发框架的意图并正确地组织代码和文件位置是一个重要的技能。这不仅需要对框架本身有深入的理解,还需要对框架背后的设计哲学和最佳实践有所了解。以下是一些帮助你达到这一目标的步骤和建议: 1. 学习框架的文档 详细阅读: 开始使用任何框架前…