什么是贝叶斯网络?原理入门

简介: 什么是贝叶斯网络?原理入门

现实生活中的很多问题都是概率问题,由多个变量(因素,要素)相互影响。而想要用贝叶斯网络对其建模,我们需要考虑三个问题:1. 如何定义节点;2.如何定义节点之间的概率依赖关系;3. 如何表示联合概率分布。

  假设我们现在有N 量,每个变量有K KK个取值,则可建模为如下形式:

image.png

若使用枚举法,参数个数为:K N

  假设变量之间相互独立,则联合概率分布大大简化为如下形式:


image.png

贝叶斯网络


  贝叶斯网络是一个有向无圈图(Directed Acyclic Graph, DAG)(有向边并不会形成一个圈),由代表变量节点及连接 这些节点有向边构成。节点代表随机变量,节点间的有向边代表了节点间的互相关系(由父节点指向其子节点),用条件概率表达变量间依赖关系,没有父节点的用先验概率进行信息表达。

image.png


我们以一个例子来对其进行实例化建模:

  实际生活中的一个例子:对一个学生能否拿到老师的推荐信这一问题进行建模研究。假设与该问题相关的变量有以下五个:试题难度、学生智力、考试成绩、高考成绩、是否 得到老师推荐信。那么其节点可定义为如下形式:

  可以看到Grade有两个父节点,SAT有一个父节点(有父子节点的表示为条件概率分布的形式)。所以其联合概率分布可表示为如下形式:

image.png

那写成这这种联合概率分布的情况有什么好处呢?我们可以看一下其参数形式:

  • 枚举法2 * 2 * 3 * 2 * 2 - 1 = 47 个参数(减去1的原因是联合概率分布求和需要等于1)。
  • 结构化分解1 + 1 + 8 + 3 + 2 = 15个参数 (每一行的参数求和需要等于1)。

  更一般地,假设n nn个二元随机变量的联合概率分布,表示该分布需要 2 n − 1 个参数。如果用贝叶斯网络建模,假设每个节点最多有 k kk 个父节点,所需要 的参数最多为 n ∗ 2 k,一般每个变量局部依赖于少数变量。

  算一个实际的例子:

  那为什么联合概率为什么可以表示为局部条件 概率表的乘积?

  • 随机变量 X ,Y 相互独立, 则会满足以下三个等式:


image.png

或者说上面三个等式中的任意一个等式成立,则随机变量X Y 是相互独立的。下图是其举例:

  • 随机变量 X ,Y 在给定 Z 条件下条件独立, 如果满足:


image.png

我们可以将下图中具体的数值代进去,其将会成立:

概率影响的流动性

  为了更好地去介绍贝叶斯网里面的条件独立性,我们引入新的概念,概率影响的流动性。概率影响的流动性说地是:在一定的观测条件下,变量间的取值概率是否会相互影响。所谓的观测条件是这个系统是否有观测变量,或者观测变量的取值是否确定。当变量取值未知,通常根据观测变量取值,对隐变量的取值概率进行推理

  比如:判断 W WW 是否为观测变量,X XXY YY的概率影响的流动性。

  这里要注意第3和第4中情况,第3种情况:当W WW未知的时候你才可以对X XXY YY进行推断。第4种情况:当W WW已知的时候,X XXY YY才可以进行概率之间的推断。

概率影响的流动性

  在贝叶斯网络里面有一个概率独立性定理:父节点已知时,该节点与其所有非后代的节点(non-descendants)条件独立。

  如上图所示,当SAT的父节点Intelligence已知时,DifficultyGradeLetter都与SAT条件独立。

贝叶斯网链式法则

  依据上述定理我们可以得到贝叶斯网络因子分解的形式:

贝叶斯网络推理的直观理解

  因果推断Causal Reasoning):顺着箭头方向推断。得到贝叶斯网络之后我们就可以进行推理计算。这种因果推理是顺着箭头方向进行的推理。

  贝叶斯网络的第二种推断叫做证据推断Evidential Reasoning):是逆着箭头推断的。

  交叉因果推断Intercausal Reasoning):双向箭头推断。

我的微信公众号名称:深度学习与先进智能决策

微信公众号ID:MultiAgent1024

公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!

相关文章
|
1月前
|
机器学习/深度学习 PyTorch TensorFlow
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic,深度学习探索者。深耕TensorFlow与PyTorch,分享框架对比、性能优化与实战经验,助力技术进阶。
|
1月前
|
监控 负载均衡 安全
WebSocket网络编程深度实践:从协议原理到生产级应用
蒋星熠Jaxonic,技术宇宙中的星际旅人,以代码为舟、算法为帆,探索实时通信的无限可能。本文深入解析WebSocket协议原理、工程实践与架构设计,涵盖握手机制、心跳保活、集群部署、安全防护等核心内容,结合代码示例与架构图,助你构建稳定高效的实时应用,在二进制星河中谱写极客诗篇。
WebSocket网络编程深度实践:从协议原理到生产级应用
|
2月前
|
机器学习/深度学习 人工智能 算法
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic带你深入卷积神经网络(CNN)核心技术,从生物启发到数学原理,详解ResNet、注意力机制与模型优化,探索视觉智能的演进之路。
387 11
|
4月前
|
机器学习/深度学习 数据采集 算法
贝叶斯状态空间神经网络:融合概率推理和状态空间实现高精度预测和可解释性
本文将BSSNN扩展至反向推理任务,即预测X∣y,这种设计使得模型不仅能够预测结果,还能够探索特定结果对应的输入特征组合。在二元分类任务中,这种反向推理能力有助于识别导致正负类结果的关键因素,从而显著提升模型的可解释性和决策支持能力。
401 42
贝叶斯状态空间神经网络:融合概率推理和状态空间实现高精度预测和可解释性
|
2月前
|
机器学习/深度学习 算法 搜索推荐
从零开始构建图注意力网络:GAT算法原理与数值实现详解
本文详细解析了图注意力网络(GAT)的算法原理和实现过程。GAT通过引入注意力机制解决了图卷积网络(GCN)中所有邻居节点贡献相等的局限性,让模型能够自动学习不同邻居的重要性权重。
449 0
从零开始构建图注意力网络:GAT算法原理与数值实现详解
|
2月前
|
安全 测试技术 虚拟化
VMware-三种网络模式原理
本文介绍了虚拟机三种常见网络模式(桥接模式、NAT模式、仅主机模式)的工作原理与适用场景。桥接模式让虚拟机如同独立设备接入局域网;NAT模式共享主机IP,适合大多数WiFi环境;仅主机模式则构建封闭的内部网络,适用于测试环境。内容简明易懂,便于理解不同模式的优缺点与应用场景。
376 0
|
2月前
|
机器学习/深度学习 传感器 数据采集
基于贝叶斯优化CNN-LSTM混合神经网络预测(Matlab代码实现)
基于贝叶斯优化CNN-LSTM混合神经网络预测(Matlab代码实现)
475 0
|
4月前
|
机器学习/深度学习 人工智能 PyTorch
零基础入门CNN:聚AI卷积神经网络核心原理与工业级实战指南
卷积神经网络(CNN)通过局部感知和权值共享两大特性,成为计算机视觉的核心技术。本文详解CNN的卷积操作、架构设计、超参数调优及感受野计算,结合代码示例展示其在图像分类、目标检测等领域的应用价值。
278 7
|
5月前
|
机器学习/深度学习 API TensorFlow
BayesFlow:基于神经网络的摊销贝叶斯推断框架
BayesFlow 是一个基于 Python 的开源框架,利用摊销神经网络加速贝叶斯推断,解决传统方法计算复杂度高的问题。它通过训练神经网络学习从数据到参数的映射,实现毫秒级实时推断。核心组件包括摘要网络、后验网络和似然网络,支持摊销后验估计、模型比较及错误检测等功能。适用于流行病学、神经科学、地震学等领域,为仿真驱动的科研与工程提供高效解决方案。其模块化设计兼顾易用性与灵活性,推动贝叶斯推断从理论走向实践。
187 7
BayesFlow:基于神经网络的摊销贝叶斯推断框架
|
6月前
|
监控 应用服务中间件 Linux
掌握并发模型:深度揭露网络IO复用并发模型的原理。
总结,网络 I/O 复用并发模型通过实现非阻塞 I/O、引入 I/O 复用技术如 select、poll 和 epoll,以及采用 Reactor 模式等技巧,为多任务并发提供了有效的解决方案。这样的模型有效提高了系统资源利用率,以及保证了并发任务的高效执行。在现实中,这种模型在许多网络应用程序和分布式系统中都取得了很好的应用成果。
205 35
下一篇
oss云网关配置