概率图模型基础(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

相关文章

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

详解如何使用Python从零开始构建文本统计模型

《详解如何使用Python从零开始构建文本统计模型》在自然语言处理领域,词汇表构建是文本预处理的关键环节,本文通过Python代码实践,演示如何从原始文本中提取多尺度特征,并通过动态调整机制构建更精确... 目录一、项目背景与核心思想二、核心代码解析1. 数据加载与预处理2. 多尺度字符统计3. 统计结果可

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

SpringBoot整合Sa-Token实现RBAC权限模型的过程解析

《SpringBoot整合Sa-Token实现RBAC权限模型的过程解析》:本文主要介绍SpringBoot整合Sa-Token实现RBAC权限模型的过程解析,本文给大家介绍的非常详细,对大家的学... 目录前言一、基础概念1.1 RBAC模型核心概念1.2 Sa-Token核心功能1.3 环境准备二、表结

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4