概率图模型基础(3)——贝叶斯网络的独立性

2023-10-22 01:40

本文主要是介绍概率图模型基础(3)——贝叶斯网络的独立性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

贝叶斯网络的独立性

  • 1. 贝叶斯网的基本独立性
  • 2. 图与分布
    • 2.1 I-Maps(independency map)
      • 2.1.1 I-Maps是啥?
        • 2.1.1.1 定义
        • 2.1.1.2 理解
      • 2.1.2 等价I-Maps
        • 2.1.2.1 定义
        • 2.1.2.2 例子
      • 2.1.3 I-Maps怎么变身分布的表达
      • 2.1.4 最小I-Map
    • 2.2 $d-sep_G(X,Y|Z)$
      • 2.3.1 定义
      • 2.2.2 寻找所有d-sep
    • 2.3 P-Map
  • 3. 参考文献

1. 贝叶斯网的基本独立性

学生成绩
在学生成绩示例图中,用边表示其直接依赖关系。

根据上一节概率图模型基础(2)——贝叶斯网络中的因果关系,在节点的独立性方面,可以得出什么结论呢?

局部独立性定义

在学生成绩的例子中:在给定父节点Grade的情况下,Letter与图中其他节点都独立。有 P ( L ⊥ I , D , S ∣ G ) P(L \perp I,D,S|G) P(LI,D,SG)成立。


2. 图与分布

这一节概念有点抽象?(至少我是这么觉得,所以后面后回来重新修改了。)

首先我自己先瞎BB几句:
当我们在实际应用中面对一系列的数据的时候,一般来说会从下面两个方面理解:

  • 观察数据(其实就是观察数据的分布),从一堆变量中找出相互独立的变量(I、G)以及在某些条件下独立的变量(类似G、I、S),根据观察结果绘制图。这一些列的动作,就是由条件概率分布作注释的图,这个图通过链式法则为贝叶斯网定义了一个联合分布。
  • 贝叶斯图其实就是好几堆独立性变量组合在一起的可视化结果。

这就是分布之间的关系,认清这个关系对后文的理解非常重要。

2.1 I-Maps(independency map)

2.1.1 I-Maps是啥?

2.1.1.1 定义

P P P χ \chi χ上的分布, I ( P ) I(P) I(P)定义为 P P P中满足独立性的集合。

2.1.1.2 理解

I-map:记贝叶斯网络为 G G G,概率分布为 P P P,若 G G G中表现出的独立性的集合是 P P P中表现出的独立性的集合的子集。则 G G G P P P的一个I-map。比如
概率图模型-原理与技术.png

先看Graph:

  • 对于 G ∅ G_\varnothing G来说, X X X, Y Y Y未连接,故而 X X X, Y Y Y独立。
  • 对于 G X → Y G_{X \rightarrow Y} GXY来说, X X X影响 Y Y Y,故而 X X X, Y Y Y不独立,表现出的独立性为 ∅ \varnothing
  • 对于 G Y → X G_{Y \rightarrow X} GYX来说, Y Y Y影响 X X X,故而 X X X, Y Y Y不独立,表现出的独立性为 ∅ \varnothing

再看分布P:

  • 对于左表来说, P ( X , Y ) = P ( X ) P ( Y ) P(X,Y)=P(X)P(Y) P(X,Y)=P(X)P(Y),所以 X X X, Y Y Y独立。
    • G ∅ G_\varnothing G表现出 X X X, Y Y Y独立,满足条件;
    • G X → Y G_{X \rightarrow Y} GXY G Y → X G_{Y \rightarrow X} GYX独立性为 ∅ \varnothing ,可归为任何分布P的I-map。

所以三个图都是P的I-map。

  • 对于右表来说, P ( X , Y ) ≠ P ( X ) P ( Y ) P(X,Y) \neq P(X)P(Y) P(X,Y)=P(X)P(Y),所以 X X X, Y Y Y不独立。
    • G ∅ G_\varnothing G表现出 X X X, Y Y Y独立,不满足条件。
    • G X → Y G_{X \rightarrow Y} GXY G Y → X G_{Y \rightarrow X} GYX独立性为 ∅ \varnothing ,可归为任何分布P的I-map

所以只有 G X → Y , G Y → X G_{X\rightarrow Y},G_{Y \rightarrow X} GXY,GYX是P的I-map。

2.1.2 等价I-Maps

2.1.2.1 定义

2.1.2.2 例子


上图中的(a,b,c),虽然网络结构不同,但是都体现了相同的独立性假设: ( X ⊥ Y ∣ Z ) (X \perp Y|Z) (XYZ)

2.1.3 I-Maps怎么变身分布的表达

熟悉贝叶斯公式的人都清楚,不管啥网络结构(以学生成绩为例),
image.png
上图的联合分布必然能写成:
P ( I , D , G , L , S ) = P ( I ) P ( D ∣ I ) P ( G ∣ I , D ) P ( L ∣ I , D , G ) P ( S ∣ I , D , G , L ) (2.1) P(I,D,G,L,S)=P(I)P(D|I)P(G|I,D)P(L|I,D,G)P(S|I,D,G,L) \tag{2.1} P(I,D,G,L,S)=P(I)P(DI)P(GI,D)P(LI,D,G)P(SI,D,G,L)(2.1)
有了I-maps之后,就可以简化一些因子:

  • D,I独立,所以有 P ( D ∣ I ) = P ( D ) P(D|I)=P(D) P(DI)=P(D)
  • 在给定G的条件下,L和I,D独立,所以有 P ( L ∣ I , D , G ) = P ( L ∣ G ) P(L|I,D,G)=P(L|G) P(LI,D,G)=P(LG)

所以公式2.1可以简化为
P ( I , D , G , L , S ) = P ( I ) P ( D ) P ( G ∣ I , D ) P ( L ∣ G ) P ( S ∣ I ) (2.2) P(I,D,G,L,S)=P(I)P(D)P(G|I,D)P(L|G)P(S|I) \tag{2.2} P(I,D,G,L,S)=P(I)P(D)P(GI,D)P(LG)P(SI)(2.2)
公式2.2正好满足《概率图模型基础(2)——贝叶斯网络中的因果关系》中贝叶斯网络表达式的书写规律。

另外,多一句嘴,所谓分布的表达,其实就是因子分解

2.1.4 最小I-Map


image.png




最小I-map与给定的节点顺序有关。

2.2 d − s e p G ( X , Y ∣ Z ) d-sep_G(X,Y|Z) dsepG(X,YZ)

我又来瞎BB了:这个其实就是给定条件下的I-Maps

2.3.1 定义

d − s e p G ( X , Y ∣ Z ) d-sep_G(X,Y|Z) dsepG(X,YZ):在概率图中,在给定结点 Z Z Z的条件下,结点 X X X和结点 Y Y Y存在有效(只要是结点连着的,不管方向对不对就称为),若结点 X X X和结点 Y Y Y相互独立,则可以表示为 d − s e p G ( X , Y ∣ Z ) d-sep_G(X,Y|Z) dsepG(X,YZ)

示例:image.png
若G为不观测变量则S与D的关系可表示为:
d − s e p G ( S , D ∣ I ) d-sep_G(S,D|I) dsepG(S,DI)

具体如何判断 d-分离,请参考《概率图模型基础(2)——贝叶斯网络中的因果关系》文中第 3.2 结:贝叶斯网络中各节点如何相互影响?

扩展:
与d-separate 相对应的独立性的集合用 I ( G ) I(G) I(G)表示:
I ( G ) = { ( X ⊥ Y ∣ Z ) : d − s e p G ( X ; Y ∣ Z ) } I(G)=\left \{ (X \perp Y | Z): d-sep_G(X; Y | Z) \right \} I(G)={(XYZ):dsepG(X;YZ)}

2.2.2 寻找所有d-sep

思路
在寻找之前,确保有:观测变量 Z Z Z的集合;贝叶斯网络图结构。
1.从下到上,从叶子结点到根的遍历图结构,标记 Z Z Z及其后代的所有节点。
2. 使用广度优先遍历,遇到如下情况停止,说明不存在d-sep,否则,说明存在d-sep:
a. 节点在v-结构中间,但在第一步中未被标记。
b. 节点不在v-结构中间,但是在第一步中被标记了。

2.3 P-Map

P-Map 的一个直观解释:能够完全刻画分布 P P P的最小I-Map。


3. 参考文献

Coursera——Probabilistic Graphical Models

这篇关于概率图模型基础(3)——贝叶斯网络的独立性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/258295

相关文章

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

Spring的基础事务注解@Transactional作用解读

《Spring的基础事务注解@Transactional作用解读》文章介绍了Spring框架中的事务管理,核心注解@Transactional用于声明事务,支持传播机制、隔离级别等配置,结合@Tran... 目录一、事务管理基础1.1 Spring事务的核心注解1.2 注解属性详解1.3 实现原理二、事务事

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4

Python实现简单封装网络请求的示例详解

《Python实现简单封装网络请求的示例详解》这篇文章主要为大家详细介绍了Python实现简单封装网络请求的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录安装依赖核心功能说明1. 类与方法概览2.NetHelper类初始化参数3.ApiResponse类属性与方法使用实

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

Debian 13升级后网络转发等功能异常怎么办? 并非错误而是管理机制变更

《Debian13升级后网络转发等功能异常怎么办?并非错误而是管理机制变更》很多朋友反馈,更新到Debian13后网络转发等功能异常,这并非BUG而是Debian13Trixie调整... 日前 Debian 13 Trixie 发布后已经有众多网友升级到新版本,只不过升级后发现某些功能存在异常,例如网络转

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

从基础到进阶详解Python条件判断的实用指南

《从基础到进阶详解Python条件判断的实用指南》本文将通过15个实战案例,带你大家掌握条件判断的核心技巧,并从基础语法到高级应用一网打尽,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录​引言:条件判断为何如此重要一、基础语法:三行代码构建决策系统二、多条件分支:elif的魔法三、

Python WebSockets 库从基础到实战使用举例

《PythonWebSockets库从基础到实战使用举例》WebSocket是一种全双工、持久化的网络通信协议,适用于需要低延迟的应用,如实时聊天、股票行情推送、在线协作、多人游戏等,本文给大家介... 目录1. 引言2. 为什么使用 WebSocket?3. 安装 WebSockets 库4. 使用 We