贝叶斯分类——数学模型

贝叶斯分类是一类分类算法的总称,这类算法均以贝叶斯定理为基础,故统称为贝叶斯分类。

贝叶斯分类是一类利用概率统计知识进行分类的算法,其分类原理是贝叶斯定理。贝叶斯定理是由18世纪概率论和决策论的早期研究者Thomas Bayes发明的,故用其名字命名为贝叶斯定理。

贝叶斯定理是概率论中的一个结果,它跟随机变量的条件概率以及边缘分布有关。在有些关于概率的解说中,贝叶斯定理能够告诉我们如何利用新证据修改已有的看法。通常,事件A在事件B(发生)的条件下的概率,与事件B在事件A的条件下的概率是不一样的;然而,这两者有确定的关系,贝叶斯定理就是对这种关系的陈述。

假设 X X X Y Y Y是一对随机变量,它们的联合概率 P ( X = x , Y = y ) P(X=x,Y=y) P(X=x,Y=y)是指 X X X取值 x x x Y Y Y取值 y y y的概率,条件概率是指一随机变量在另一随机变量取值已知的情况下取某一特定值的概率。例如,条件概率 P ( Y = y ∣ X = x ) P(Y=y|X=x) P(Y=yX=x)是指在变量 X X X取值 x x x的情况下,变量 Y Y Y取值 y y y的概率。 X X X Y Y Y的联合概率、条件概率满足如下关系:

P ( X , Y ) = P ( Y ∣ X ) P ( X ) = P ( X ∣ Y ) P ( Y ) P(X,Y)=P(Y|X)P(X)=P(X|Y)P(Y) P(X,Y)=P(YX)P(X)=P(XY)P(Y)
此式变形可得到下面的公式
P ( Y ∣ X ) = P ( X ∣ Y ) P ( Y ) P ( X ) P(Y|X)=\frac{P(X|Y)P(Y)}{P(X)} P(YX)=P(X)P(XY)P(Y)
称为贝叶斯定理。

贝叶斯定理很有用,因为它允许我们用先验概率 P ( Y ) P(Y) P(Y)、条件概率 P ( X ∣ Y ) P(X|Y) P(XY)和证据 P ( X ) P(X) P(X)来表示后验概率。而在贝叶斯分类器中,朴素贝叶斯最为常用,下面介绍朴素贝叶斯的原理。

朴素贝叶斯分类是一种十分简单的分类算法,朴素贝叶斯的思想基础是这样的:对于给出的待分类项,求解在此项出现的条件下各个类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。

朴素贝叶斯分类器以简单的结构和良好的性能受到人们的关注,它是最优秀的分类器之一。朴素贝叶斯分类器建立在一个类条件独立性假设(朴素假设)基础之上:给定类结点(变量)后,各属性结点(变量)之间相互独立。根据朴素贝叶斯的类条件独立假设,则有
P ( X ∣ C i ) = ∏ k = 1 m P ( X k ∣ C i ) P(X|C_i)=\prod_{k=1}^mP(X_k|C_i) P(XCi)=k=1mP(XkCi)

条件概率 P ( X 1 ∣ C i ) , P ( X 2 ∣ C i ) , ⋯   , P ( X k ∣ C i ) P(X_1|C_i),P(X_2|C_i),\cdots,P(X_k|C_i) P(X1Ci),P(X2Ci),,P(XkCi)可以从训练数据集求得,根据此方法,对一个未知类别的样本 X X X,可以先计算出 X X X属于每一个类别的概率 P ( X ∣ C i ) P ( C i ) P(X|C_i)P(C_i) P(XCi)P(Ci),然后选择其中概率最大的类别作为其类别。

朴素贝叶斯分类的正式步骤如下

  1. x = { a 1 , a 2 , ⋯   , a m } x=\{a_1,a_2,\cdots,a_m\} x={a1,a2,,am}为一个待分类项,而每个 a a a x x x的一个特征属性;

  2. 有类别集合 C = { y 1 , y 2 , ⋯   , y n } C=\{y_1,y_2,\cdots,y_n\} C={y1,y2,,yn}

  3. 计算 P ( y 1 ∣ x ) , P ( y 2 ∣ x ) , ⋯   , P ( y n ∣ x ) P(y_1|x),P(y_2|x),\cdots,P(y_n|x) P(y1x),P(y2x),,P(ynx)

  4. 如果 P ( y k ∣ x ) = m a x { P ( y 1 ∣ x ) , P ( y 2 , x ) , ⋯   , P ( y n ∣ x ) } P(y_k|x)=max\{P(y_1|x),P(y_2,x),\cdots,P(y_n|x)\} P(ykx)=max{P(y1x),P(y2,x),,P(ynx)},则 x ∈ y k x\in y_k xyk

那么现在的关键就是如何计算第(3)步中的各条件概率

  1. 找到一个已知分类的待分类项集合,这个集合叫作训练样本集;

  2. 统计得到在各类别下各个特征属性的条件概率估计,即
    P ( a i ∣ y 1 ) , P ( a 2 ∣ y 1 ) , ⋯   , P ( a m ∣ y 1 ) P ( a i ∣ y 2 ) , P ( a 2 ∣ y 2 ) , ⋯   , P ( a m ∣ y 2 ) ⋮                     P ( a i ∣ y n ) , P ( a 2 ∣ y n ) , ⋯   , P ( a m ∣ y n ) \begin{aligned} P(a_i|y_1),P(a_2|y_1),\cdots,P(a_m|y_1)\\ P(a_i|y_2),P(a_2|y_2),\cdots,P(a_m|y_2)\\ \vdots~~~~~~~~~~~~~~~~~~~ \\ P(a_i|y_n),P(a_2|y_n),\cdots,P(a_m|y_n) \end{aligned} P(aiy1),P(a2y1),,P(amy1)P(aiy2),P(a2y2),,P(amy2)                   P(aiyn),P(a2yn),,P(amyn)

  3. 如果各个特征属性是条件独立的,则根据贝叶斯定理有如下推导
    P ( y i ∣ x ) = P ( x ∣ y i ) P ( y i ) P ( x ) P(y_i|x)=\dfrac{P(x|y_i)P(y_i)}{P(x)} P(yix)=P(x)P(xyi)P(yi)

    因为分母对于所有类别为常数,因此只要将分子最大化即可;又因为各特征属性是条件独立的,所以有

P ( x ∣ y i ) = P ( a 1 ∣ y i ) P ( a 2 ∣ y i ) ⋯ P ( a m ∣ y i ) P ( y i ) = P ( y i ) ∏ j = 1 m P ( a j ∣ y i ) P(x|y_i)=P(a_1|y_i)P(a_2|y_i)\cdots P(a_m|y_i)P(y_i)=P(y_i)\prod_{j=1}^mP(a_j|y_i) P(xyi)=P(a1yi)P(a2yi)P(amyi)P(yi)=P(yi)j=1mP(ajyi)

根据上述分析,朴素贝叶斯分类的流程可以由下图表示

请添加图片描述
由图可知,整个朴素贝叶斯分类分为三个阶段。

第一阶段:准备工作阶段。这个阶段的任务是为朴素贝叶斯分类做必要的准备,主要工作是根据具体情况确定特征属性,并为每个特征属性进行适当划分,如何由人工对一部分待分类项进行分类,形成训练样本集合。这一阶段的输入是所有待分类数据,输出是特征属性和训练样本。这一阶段是整个朴素贝叶斯分类中唯一需要人工完成的阶段,其质量对整个过程将有重要影响。分类器的质量很大程度上由特征属性、特征属性划分及训练样本质量决定。

第二阶段:分类器训练阶段。这个阶段的任务就是生成分类器,主要工作是计算每个类别在训练样本中的出现频率及每个特征属性划分对每个类别的条件概率估计,并记录结果。其输入是特征属性和训练样本,输出是分类器。这一阶段是机械性阶段,根据前面讨论的公式,由程序自动计算完成。

第三阶段:应用阶段。这个阶段的任务是使用分类器对待分类项进行分类,其输入是分类器和待分类项,输出是待分类项与类别的映射关系。这一阶段也是机械性阶段,由程序完成。

朴素贝叶斯算法成立的前提是各属性之间相互独立。当数据集满足这种独立行假设时,分类的准确度较高,否则可能较低。另外,该算法没有分类规则输出。

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

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

相关文章

爬虫与反爬虫实现全流程

我选取的网页爬取的是ppt nba版 需要的工具:pycharm,浏览器 爬虫需要观察它的网页信息,然后开始首先爬取它的html,可以看到有人气,标题,日期,咨询 可以看到用get方法 import requests url"https://img-home.csdnimg.cn/images/20230724024159.png?origin_urlhttps%3A%2…

云计算学习架构篇之HTTP协议、Nginx常用模块与Nginx服务实战

一.HTTP协议讲解 1.1rsync服务重构 bash 部署服务端: 1.安装服务 [rootbackup ~]# yum -y install rsync 2.配置服务 [rootbackup ~]# vim /etc/rsyncd.conf uid rsync gid rsync port 873 fake super yes use chroot no max connections 200 timeout 600 ignore erro…

【210】成绩管理系统

--基于springboot毕业设计成绩管理系统 主要功能: 个人中心 管理员管理 毕业论文管理 答辩秘书管理 基础数据管理 公告信息管理 公告信息管理 评阅教师管理 用户管理 指导教师管理 开发技术栈: 开发语言 : Java 开发软件 : Eclipse/MyEclipse/IDEA JDK版本 : JDK8…

Delphi历史版本对照及主要版本特性

Delphi编程的关键特性包括: 可视化开发:Delphi以其独特的开发方法而闻名,它允许开发者通过直观的表单设计器来创建用户界面。这种快速应用程序开发(RAD)的方法大大简化并加速了图形用户界面(GUI&#xff09…

嵌入式系统 第九讲 设备驱动程序设计基础

• 9.1 Linux设备驱动程序简介 • 系统调用:是操作系统内核(Linux系统内核)和应用程序之间 的接口。 • 设备驱动程序:是操作系统内核(Linux系统内核)和机器硬件 之间的接口,设备驱动程序为应用…

算法学习(19)—— 队列与 BFS

关于bfs bfs又称宽搜,全称是“宽度优先遍历”,然后就是关于bfs的三个说法:“宽度优先搜索”,“宽度优先遍历”,“层序遍历”,这三个都是同一个东西,前面我们介绍了大量的深度优先遍历的题目已经…

cellphoneDB进行CCI以及可视化

除了cellchat,在单细胞转录组或者空间组的分析中,cellphoneDB也是一个常用的细胞通讯软件,这个数据库更注重配受体关系,对于有明确先验知识的配受体研究比较友好。 但值得注意的是,它的数据库只包括人的基因名称信息&…

003 字节码

字节码的位置 当我们讨论到字节码,我们需要清楚它在整个学习框架中的位置 如图,字节码是我们写的代码编译之后的结果,与虚拟机很近。 字节码是Java能实现跨平台的基础。 字节码基本知识体系 我们需要关注的点在于class文件的构成上。 字节…

基本算法——回归

本节将通过分析能源效率数据集(Tsanas和Xifara,2012)学习基本的回归算法。我们将基 于建筑的结构特点(比如表面、墙体与屋顶面积、高度、紧凑度)研究它们的加热与冷却负载要 求。研究者使用一个模拟器设计了12种不…

U盘文件剪切丢失的全方位解析与恢复指南

一、U盘文件剪切丢失现象描述 在日常使用U盘的过程中,我们时常会遇到需要将文件从一个位置移动到另一个位置的情况,而剪切加粘贴便是最常用的操作之一。然而,有时在剪切文件后,却意外发现目标位置并没有出现这些文件,…

洛谷 P1075 [NOIP2012 普及组] 质因数分解 C语言

题目: P1075 [NOIP2012 普及组] 质因数分解 - 洛谷 | 计算机科学教育新生态 题目描述 已知正整数 n 是两个不同的质数的乘积,试求出两者中较大的那个质数。 输入格式 输入一个正整数 n。 输出格式 输出一个正整数 p,即较大的那个质数。…

Lecture 17

10’s Complement Representation 主要内容: 1. 10’s 补码表示: • 10’s 补码表示法需要指定表示的数字位数(用 n 表示)。 • 表示的数字取决于 n 的位数,这会影响具体数值的解释。 2. 举例: • 如果采用 3 位补码&…

电子电器架构 --- 智能座舱HUD技术革新

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源&…

零基础微信小程序开发——全局配置之tabBar(保姆级教程+超详细)

🎥 作者简介: CSDN\阿里云\腾讯云\华为云开发社区优质创作者,专注分享大数据、Python、数据库、人工智能等领域的优质内容 🌸个人主页: 长风清留杨的博客 🍃形式准则: 无论成就大小,…

docker redis安装

一.镜像拉取 docker pull redis:5.0新建文件 touch /home/redis/redis.conf touch /home/redis/redis_6379.pid # bind 192.168.1.100 10.0.0.1 # bind 127.0.0.1 ::1 #bind 127.0.0.1protected-mode noport 6379tcp-backlog 511requirepass roottimeout 0tcp-keepali…

0基础跟德姆(dom)一起学AI 自然语言处理08-认识RNN模型

1 什么是RNN模型 RNN(Recurrent Neural Network), 中文称作循环神经网络, 它一般以序列数据为输入, 通过网络内部的结构设计有效捕捉序列之间的关系特征, 一般也是以序列形式进行输出. 一般单层神经网络结构: RNN单层网络结构: 以时间步对RNN进行展开后的单层网络结构: RNN的…

Xilinx PCIe高速接口入门实战(三)

引言:为保证FPGA设备可以连接并被系统识别,本节讨论了PCIe基础规范和PCIe板卡电气规范的对FPGA配置时间具体要求。 1. 配置访问时间 在PCIe的标准系统中,当系统通电时,处理器上运行的配置软件开始扫描PCIe总线以发现机器拓扑。…

InfoNCE Loss详解(上)

引言 InfoNCE对比学习损失是学习句嵌入绕不开的知识点,本文就从头开始来探讨一下它是怎么来的。 先验知识 数学期望与大数定律 期望(expectation,expected value,数学期望,mathematical expectation)是随机变量的平均值&#…

抽象工厂设计模式的理解和实践

在软件开发中,设计模式是前人通过大量实践总结出的、可复用的、解决特定问题的设计方案。它们为我们提供了一种标准化的解决方案,使得代码更加简洁、灵活和易于维护。在众多设计模式中,抽象工厂模式(Abstract Factory Pattern&…

爱思唯尔word模板

爱思唯尔word模板 有时候并不一定非得latex https://download.csdn.net/download/qq_38998213/90199214 参考文献书签链接