【机器学习理论】朴素贝叶斯网络

news2025/2/2 21:05:13

基础知识:
先验概率:对某个事件发生的概率的估计。可以是基于历史数据的估计,可以由专家知识得出等等。一般是单独事件概率。

后验概率:指某件事已经发生,计算事情发生是由某个因素引起的概率。一般是一个条件概率。

条件概率:条件事件发生后,另一个事件发生的概率。一般的形式为 P ( B ∣ A ) P(B|A) P(BA),表示 A A A发生的条件下 B B B发生的概率。
P ( B ∣ A ) = P ( A B ) P ( A ) P(B|A) = \frac {P(AB)}{P(A)} P(BA)=P(A)P(AB)
贝叶斯公式基于先验概率,计算后验概率的方法;公式为:
P ( A ∣ B ) = P ( B ∣ A ) ⋅ P ( A ) P ( B ) P(A|B) = \frac {P(B|A) \cdot P(A)}{P(B)} P(AB)=P(B)P(BA)P(A)

  • P ( A ∣ B ) P(A∣B) P(AB): 在事件  B B B 发生的条件下,事件  A A A 发生的概率(后验概率)。
  • P ( B ∣ A ) P(B | A) P(BA):在事件 A A A 发生的条件下,事件 B B B 的发生概率(似然概率)。
  • P ( A ) P(A) P(A):事件 A A A 发生的先验概率(先验知识)。
  • P ( B ) P(B) P(B):事件 B B B 发生的总概率。

贝叶斯公式可以从条件概率和全概率公式推导得出:

  1. 条件概率定义:
    P ( A ∣ B ) = P ( A ∩ B ) P ( B ) , P ( B ∣ A ) = P ( A ∩ B ) P ( A ) P(A | B) = \frac {P(A \cap B)}{P(B)}, P(B|A) = \frac {P(A \cap B)}{P(A)} P(AB)=P(B)P(AB),P(BA)=P(A)P(AB)
  2. 公式联立:
    P ( A ∩ B ) = P ( B ∣ A ) ⋅ P ( A ) = P ( A ∣ B ) ⋅ P ( B ) P(A \cap B) = P(B|A) \cdot P(A) = P(A | B) \cdot P(B) P(AB)=P(BA)P(A)=P(AB)P(B)
  3. 整理得到贝叶斯公式:
    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 ) P(A) P(A)、似然概率  P ( B ∣ A ) P(B∣A) P(BA) 和证据  P ( B ) P(B) P(B) 结合,计算后验概率 P ( A ∣ B ) P(A∣B) P(AB)

朴素贝叶斯做出了一个假设”属性条件独立假设“:对所有已知标签的样本,假设每个属性独立地对标签结果产生影响。(这是一个很强的条件)

假设样本为: x = { a 1 , a 2 , . . . , a d } x=\{a_{1}, a_{2}, ..., a_{d} \} x={a1,a2,...,ad},label为 Y = { c 1 , c 2 , c 3 , . . . , c n } Y = \{c_{1}, c_{2}, c_{3}, ...,c_{n} \} Y={c1,c2,c3,...,cn};则计算这样一个样本 x x x 的所属类别的公式为:
P ( c k ∣ x ) = max ⁡ { P ( c 1 ∣ x ) , P ( c 2 ∣ x ) , P ( c 3 ∣ x ) , . . . , P ( c n ∣ x ) } P(c_{k} | x) = \max \{ P(c_{1} |x), P(c_{2} | x), P(c_{3} | x), ..., P(c_{n} |x)\} P(ckx)=max{P(c1x),P(c2x),P(c3x),...,P(cnx)}
基于条件独立假设;可以得到
P ( c ∣ x ) = P ( c ) P ( x ∣ c ) P ( x ) = P ( c ) P ( x ) ∏ i = 1 d P ( x i ∣ c ) P(c|x) = \frac {P(c)P(x|c)}{P(x)} = \frac {P(c)}{P(x)} \prod_{i=1}^{d} P(x_{i}|c) P(cx)=P(x)P(c)P(xc)=P(x)P(c)i=1dP(xic)
其中 d d d为属性数目, x i x_{i} xi x x x 在第 i i i 个属性上的取值。
我们重写上述公式:
h n b ( x ) = max ⁡ { P ( c 1 ∣ x ) , P ( c 2 ∣ x ) , P ( c 3 ∣ x ) , . . . , P ( c n ∣ x ) } = arg ⁡ max ⁡ c ∈ Y P ( c ) P ( x ) ∏ i = 1 d P ( x i ∣ C ) = arg ⁡ max ⁡ c ∈ Y P ( c ) ∏ i = 1 d P ( x i ∣ C ) \begin{align} h_{nb}(x) &= \max \{ P(c_{1} |x), P(c_{2} | x), P(c_{3} | x), ..., P(c_{n} |x)\} \\ &= \arg \max_{c \in Y} \frac {P(c)}{P(x)} \prod_{i=1}^{d}P(x_{i} | C) \\ &= \arg \max_{c \in Y} P(c) \prod_{i=1}^{d}P(x_{i} | C) \end{align} hnb(x)=max{P(c1x),P(c2x),P(c3x),...,P(cnx)}=argcYmaxP(x)P(c)i=1dP(xiC)=argcYmaxP(c)i=1dP(xiC) D c D_{c} Dc 表示训练集 D D D 中第 c c c 类样本组成的集合,若有充足的独立同分布样本,则可以容易地估计出类别的先验概率:
P ( c ) = ∣ D c ∣ ∣ D ∣ P(c) = \frac {|D_{c}|}{|D|} P(c)=DDc
对于离散属性而言,令 D c , x i D_{c, x_{i}} Dc,xi 表示 D c D_{c} Dc 中第 i i i 个属性上取值为 x i x_{i} xi 的样本组成的集合,则条件概率 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}|} Pxic=DcDc,xi
对于连续属性可考虑概率密度函数,假定 p ( x i ∣ c ) ∼ N ( μ c , i , σ c , i 2 ) p(x_{i}|c) \sim \mathcal{N}(\mu _{c, i}, \sigma _{c,i}^{2}) p(xic)N(μc,i,σc,i2)d,其中 μ c , i \mu_{c, i} μc,i σ c , i 2 \sigma_{c, i}^{2} σc,i2分别是第 c c c 类样本在第 i i i 个属性上取值的均值和方差,则有:
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 (- \frac {(x_{i}-\mu_{c, i})^2}{2 \sigma_{c, i}^{2}}) p(xic)=2π σc,i1exp(2σc,i2(xiμc,i)2)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Pygame制作“吃豆人”游戏

本篇博客展示如何使用 Python Pygame 编写一个简易版的“吃豆人(Pac-Man)” 风格游戏。这里我们暂且命名为 Py-Man。玩家需要控制主角在一个网格地图里移动、吃掉散布在各处的豆子,并躲避在地图中巡逻的幽灵。此示例可帮助你理解网格地图、角…

SQL入门到精通 理论+实战 -- 在 MySQL 中学习SQL语言

目录 一、环境准备 1、MySQL 8.0 和 Navicat 下载安装 2、准备好的表和数据文件: 二、SQL语言简述 1、数据库基础概念 2、什么是SQL 3、SQL的分类 4、SQL通用语法 三、DDL(Data Definition Language):数据定义语言 1、操…

x86-64数据传输指令

关于汇编语言一些基础概念的更详细的介绍,可移步MIPS指令集(一)基本操作_mips指令 sw-CSDN博客 该指令集中一个字2字节。 该架构有16个64位寄存器,名字都以%r开头,每个寄存器的最低位字节,低1~2位字节&…

【ESP32】ESP-IDF开发 | WiFi开发 | TCP传输控制协议 + TCP服务器和客户端例程

1. 简介 TCP(Transmission Control Protocol),全称传输控制协议。它的特点有以下几点:面向连接,每一个TCP连接只能是点对点的(一对一);提供可靠交付服务;提供全双工通信&…

算法基础学习——快排与归并(附带java模版)

快速排序和归并排序是两种速度较快的排序方式,是最应该掌握的两种排序算法, (一)快速排序(不稳定的) 基本思想:分治 平均时间复杂度:O(nlogn) / 最慢O(n^2) / 最快O(n) 步骤&…

指针的进化—sizeof和strlen对比(字符串和字符数组的区分)

1.前言 如果你对各个数组的内容存放是什么没有个清晰的概念,对指针偏移之后的数量算不出来或者模棱两可,那么本篇就来详细介绍sizeof和strlen来具象化的显示数组的内容存放了多少内容,偏移量变化后的变化,这个数组进行运算后会不会…

TensorFlow简单的线性回归任务

如何使用 TensorFlow 和 Keras 创建、训练并进行预测 1. 数据准备与预处理 2. 构建模型 3. 编译模型 4. 训练模型 5. 评估模型 6. 模型应用与预测 7. 保存与加载模型 8.完整代码 1. 数据准备与预处理 我们将使用一个简单的线性回归问题,其中输入特征 x 和标…

【memgpt】letta 课程1/2:从头实现一个自我编辑、记忆和多步骤推理的代理

llms-as-operating-systems-agent-memory llms-as-operating-systems-agent-memory内存 操作系统的内存管理

6-图像金字塔与轮廓检测

文章目录 6.图像金字塔与轮廓检测(1)图像金字塔定义(2)金字塔制作方法(3)轮廓检测方法(4)轮廓特征与近似(5)模板匹配方法6.图像金字塔与轮廓检测 (1)图像金字塔定义 高斯金字塔拉普拉斯金字塔 高斯金字塔:向下采样方法(缩小) 高斯金字塔:向上采样方法(放大)…

深入理解Java引用传递

先看一段代码: public static void add(String a) {a "new";System.out.println("add: " a); // 输出内容:add: new}public static void main(String[] args) {String a null;add(a);System.out.println("main: " a);…

925.长按键入

目录 一、题目二、思路三、解法四、收获 一、题目 你的朋友正在使用键盘输入他的名字 name。偶尔,在键入字符 c 时,按键可能会被长按,而字符可能被输入 1 次或多次。 你将会检查键盘输入的字符 typed。如果它对应的可能是你的朋友的名字&am…

【Rust自学】15.2. Deref trait Pt.1:什么是Deref、解引用运算符*与实现Deref trait

喜欢的话别忘了点赞、收藏加关注哦,对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω・) 15.2.1. 什么是Deref trait Deref的全写是Dereference,就是引用的英文reference加上"de"这个反义前缀&#xff0c…

吴恩达深度学习——超参数调试

内容来自https://www.bilibili.com/video/BV1FT4y1E74V,仅为本人学习所用。 文章目录 超参数调试调试选择范围 Batch归一化公式整合 Softmax 超参数调试 调试 目前学习的一些超参数有学习率 α \alpha α(最重要)、动量梯度下降法 β \bet…

【赵渝强老师】K8s中Pod探针的ExecAction

在K8s集群中,当Pod处于运行状态时,kubelet通过使用探针(Probe)对容器的健康状态执行检查和诊断。K8s支持三种不同类型的探针,分别是:livenessProbe(存活探针)、readinessProbe&#…

如何对系统调用进行扩展?

扩展系统调用是操作系统开发中的一个重要任务。系统调用是用户程序与操作系统内核之间的接口,允许用户程序执行内核级操作(如文件操作、进程管理、内存管理等)。扩展系统调用通常包括以下几个步骤: 一、定义新系统调用 扩展系统调用首先需要定义新的系统调用的功能。系统…

安卓(android)订餐菜单【Android移动开发基础案例教程(第2版)黑马程序员】

一、实验目的(如果代码有错漏,可查看源码) 1.掌握Activity生命周的每个方法。 2.掌握Activity的创建、配置、启动和关闭。 3.掌握Intent和IntentFilter的使用。 4.掌握Activity之间的跳转方式、任务栈和四种启动模式。 5.掌握在Activity中添加…

Python安居客二手小区数据爬取(2025年)

目录 2025年安居客二手小区数据爬取观察目标网页观察详情页数据准备工作:安装装备就像打游戏代码详解:每行代码都是你的小兵完整代码大放送爬取结果 2025年安居客二手小区数据爬取 这段时间需要爬取安居客二手小区数据,看了一下相关教程基本…

happytime

happytime 一、查壳 无壳,64位 二、IDA分析 1.main 2.cry函数 总体:是魔改的XXTEA加密 在main中可以看到被加密且分段的flag在最后的循环中与V6进行比较,刚好和上面v6数组相同。 所以毫无疑问密文是v6. 而与flag一起进入加密函数的v5就…

深度学习 DAY3:NLP发展史

NLP发展史 NLP发展脉络简要梳理如下: (远古模型,上图没有但也可以算NLP) 1940 - BOW(无序统计模型) 1950 - n-gram(基于词序的模型) (近代模型) 2001 - Neural language models&am…

家居EDI:Hom Furniture EDI需求分析

HOM Furniture 是一家成立于1977年的美国家具零售商,总部位于明尼苏达州。公司致力于提供高品质、时尚的家具和家居用品,满足各种家庭和办公需求。HOM Furniture 以广泛的产品线和优质的客户服务在市场上赢得了良好的口碑。公司经营的产品包括卧室、客厅…