Exact Inference in Graphical Models
独立(Independence)
统计独立(Statistical Independence)
两个随机变量X,Y统计独立的条件是当且仅当其联合概率分布等于边际概率分布之积:
\[
X \perp Y \leftrightarrow P(X,Y)=P(Y) P(Y)
\]
思考:假设 \(X \perp Y\),\(Y \perp Z\),那么 \(X\) 和 \(Y\) 有没有独立关系呢?
举例:爸吃饭,奥巴马吃饭,妈吃饭
条件独立(Conditional Independence)
两个随机变量X,Y在Z的条件下独立的条件是当且仅当其条件联合概率分布等于条件边际概率分布之积:
\[
X \perp Y | Z \leftrightarrow P(X, Y|Z)=P(X|Z)P(Y|Z)
\]
仅知道 Z 就能够决定 X ,此时 Y 与 X (条件)独立
概率图模型(Probabilistic Graphical Models)
预备知识
对于 D 个 K 项随机变量:\(X_1, ..., X_D \quad X_i \in \left \{ 1, ..., K \right \}\)
边际(Marginal):
\[
P(X_{1:i-1,\ i+1:D})=\sum_{X_i}P(X_{1:D})
\]
链式法则(Chain Rule)求联合分布
\[
P(X_{1:D})=P(X_1)\prod_{d=2}^{D}P(X_{d}|X_{1:d-1})
\]
计算联合分布时浮现的问题
计算该分布共需要 \(O(K^D)\) 个参数(即概率)!
- 推断:推断时计算量太大
- 学习:学习这么多参数需要大量数据
想法:使用条件独立化简模型
有向图与无向图模型(Directed Graph and Undirected Graph Model)
图模型(Graphical Model)是一种能够通过条件独立假设来表达联合分布的方式
- 更高效的参数化(Parameterization)
- 更高效的推断(Inference)
\[
P(X_{1:D})=P(X_1) \prod_{d=2}^D P(X_{d}|X_{d-1})
\]
直观解释:要预测某个随机变量的值,只需要那些与之相关的变量。
有向图模型(Directed Graphical Model)
- DAG -- 有向无环图(Directed Acyclic Graph)
- 用局部条件分布的乘积来表示联合分布
- 条件已经规范化
- 也叫贝叶斯置信网络(Bayesian Belief Network)
关键性质
顺序马尔可夫性质(Ordered Markov Property):节点仅取决于直接父节点,即
\[
X_i \perp X_{pred(i)\setminus parent(i)} | X_{parent(i)}
\]
无向图模型(Undirected Graphical Model)
...
图模型的主要任务(Main Tasks in Graphical Models)
有向图模型的条件独立(Conditional Independence in Directed Graph Model)
条件独立和 D-separation
D-separated Path 是指由一系列包含 Evidence 的节点集合 E 组成的路径 P 满足以下至少一个条件:
- P 构成一条链结构:\(s \rightarrow m \rightarrow t\) 或 \(s \leftarrow m \leftarrow t\),其中 \(m \in E\)
- P 构成一个峰结构:\(_s \swarrow ^m \searrow _t\),其中 \(m \in E\)
- P 构成一个谷结构:\(^s \searrow _m \swarrow ^t\),其中 \(m\cup descendant(m) \notin E\)
此时,我们用 E 将节点集合 A,B 分隔开了。
同时,A 和 B 在 E 的条件下独立:\(A \perp B\ |\ E\)
因此,我们找到了在 DAG 中对应于条件独立的性质 -- D-separation
贝叶斯球算法(Bayesian Ball Algorithm)
Bayesian Ball Algorithm 是一种判断 A B 在 E 下是否条件独立的简单算法。
步骤如下:
- 标记所有 E 中的节点表示其为观察值(Evidence);
- 在 A 中的每个节点放“球”,让它们以一定规则“弹射”(无视图中边的方向);
- 检查“球”是否进入了 B 中的节点。
“弹射”规则:
- 碰到链结构、峰结构中会被“弹回”;
- 碰到谷结构会被“弹回”(注意:谷结构的“谷底”节点不是 Evidence)。
直观解释:谷结构中,两个父节点在共同子节点的条件下,两父节点相关(不独立)。这种现象被称为“explaining away”。例如,抛两枚硬币的先验是相互独立的。而当我们观察到正面硬币的个数时,概率被耦合起来了(正面朝上的硬币个数是1,有1枚硬币正面朝上,则另外1枚硬币必然反面朝上)。
变量消除与精确推断(Exact Inference via Variable Elimination)
- 运用统计独立拆分联合分布
- Push sum into products(Key idea of Variable Elimination)
- Elimination Order:优先清除连接边数最少的节点
联合树算法(Junction Tree Algorithm)
Moralization
将有向图模型(DGM)转化为无向图模型(UGM)时需要的一种方法,任何 share 同一子节点的父节点们必须加一条边接通(教化:未婚先孕必须马上结婚?)
目的:保证 DGM 和 UGM 在条件独立上的对应性
Triangulation
先介绍一个重要概念:弦图(Chordal Graph)
若某图(graph)中所有拥有4个及以上节点的环(Cycle)都有弦(chord),则称该图为弦图。
其中,弦不是环的一部分,但连接环中任意两个节点。
步骤
(实质上就是 variable elimination 算法)
- 根据 elimination order 确定要消除的节点 N;
- 添加 fill-in edges:节点 N 的所有 neighbor 要互相连接,以确保相关性信息不会被同时清除;
同时,保存节点 N 及其 neighbor 构成的 clique;
注意:如果给的图模型已经是弦图,可以证明步骤2能够被跳过。 - 删除该节点 N。
Triangulation 完成后,我们必定会得到一个弦图。
建立 Junction Tree
找出 Triangulation 步骤中保存的所有 cliques 中的 maximal cliques,则这些 maximal cliques 就可以被拿来构成junction tree(也称为 clique tree,cluster tree)
Junction Tree 的树节点(即 clique,又叫 cluster)之间的边是不同树节点中的图节点的交集来标记的;
交集表示这些树可以通过这些图节点交换信息。
Running Intersection Property
如果某个图节点 \(N \in C_i\) 且 \(N \in C_j\)( \(C\) 表示 clique),则 \(N\) 一定包含在 \(C_i\)、\(C_j\)之间路径上的所有 cliques 里面。
Junction Tree 一定满足 RIP,因为 VE 算法中一个图节点存在于 clique 的时间是从出现到直到被消除。
可以证明,如果一棵树满足 RIP,对该树做BP,就会得到我们需要的结果。
Junction Tree 也可以被推广为 Cluster Graph;
Written with StackEdit.
Exact Inference in Graphical Models的更多相关文章
- 图模型的统计推断 inference in graphical models(马尔科夫链的推断)
有关因子图(factor graphs)以及其在sum product 算法,max-algorithm中的应用,将在一下篇博客中分享. 谢谢您的关注,欢迎提出意见问题.
- 深度学习基础 Probabilistic Graphical Models | Statistical and Algorithmic Foundations of Deep Learning
目录 Probabilistic Graphical Models Statistical and Algorithmic Foundations of Deep Learning 01 An ove ...
- Probabilistic Graphical Models
http://innopac.lib.tsinghua.edu.cn/search~S1*chx?/YProbabilistic+Graphical+Models&searchscope=1& ...
- 贝叶斯网络基础(Probabilistic Graphical Models)
本篇博客是Daphne Koller课程Probabilistic Graphical Models(PGM)的学习笔记. 概率图模型是一类用图形模式表达基于概率相关关系的模型的总称.概率图模型共分为 ...
- [Bayesian] “我是bayesian我怕谁”系列 - Exact Inference
要整理这部分内容,一开始我是拒绝的.欣赏贝叶斯的人本就不多,这部分过后恐怕就要成为“从入门到放弃”系列. 但,这部分是基础,不管是Professor Daphne Koller,还是统计学习经典,都有 ...
- 使用 LaTeX 绘制 PGM(Probabilistic Graphical Models)中的贝叶斯网络(bayesian networks)
Software for drawing bayesian networks (graphical models) 这里需要调用 latex 中的绘图库:TikZ and PGF. 注意,下述 tex ...
- PRML读书会第八章 Graphical Models(贝叶斯网络,马尔科夫随机场)
主讲人 网神 (新浪微博: @豆角茄子麻酱凉面) 网神(66707180) 18:52:10 今天的内容主要是: 1.贝叶斯网络和马尔科夫随机场的概念,联合概率分解,条件独立表示:2.图的概率推断in ...
- [Machine Learning] Probabilistic Graphical Models:一、Introduction and Overview(1、Overview and Motivation)
一.PGM用来做什么 1. 医学诊断:从各种病症分析病人得了什么病,该用什么手段治疗 2. 图像分割:从一张百万像素级的图片中分析每个像素点对应的是什么东西 两个共同点:(1)有非常多不同的输入变 ...
- [PGM] What is Probabalistic Graphical Models
学术潜规则: 概率图模型提出的意义在于将过去看似零散的topic/model以一种统一的方式串联了起来,它便于从整体上看待这些问题,而非具体解决了某个细节. 举个例子:梯度下降,并非解决神经网络收敛问 ...
随机推荐
- 关于端口冲突的解决方式Error: listen EACCES 0.0.0.80
笔者昨天下午临走前安装了vs 2017想要运行一下项目的NET后端来让本机的前端直接对接后端,但是没注意到运行vs后IIS直接占用了本机的80端口.第二天跑nodeJS的时候直接Error: list ...
- 小K的农场(差分约束,spfa)
题目描述 小K在MC里面建立很多很多的农场,总共n个,以至于他自己都忘记了每个农场中种植作物的具体数量了,他只记得一些含糊的信息(共m个),以下列三种形式描述: 农场a比农场b至少多种植了c个单位的作 ...
- npm常见配置收集
npm代理设置为走ss通道:npm config set proxy 'http://localhost:1080'
- [异常笔记]启动DFS报错:Cannot find configuration directory: /etc/hadoop
[hadoop@master ~]$ start-dfs.sh Incorrect configuration: namenode address dfs.namenode.servicerpc-ad ...
- Python豆瓣源
pip install -i https://pypi.doubanio.com/simple/ xxxx
- 记一次PHP实现接收邮件信息(我这里测试的腾讯企业邮件)
PHP实现接收邮件信息(我这里测试的腾讯企业邮件) , 其他的类型的没有测,应该只要更换pop3地址 端口号就可以. 代码如下(代码参考网络分享): <?php //此处查看链接状态 heade ...
- day 19 反射
1.isinstance, type, issubclass 的含义 isinstance: 判断你给对象时候是xxx类型的.(向上判断) type: 返回xxx对象的数据类型 issubclass ...
- ELK的端口以及加入x-pack的密码问题
ElasticSearch的端口: http://localhost:9200 http://localhost:9200/_plugin/head Kibana的端口: http://localho ...
- CAT 安装运行配置教程
CAT安装教程 首先安装mysql数据库,具体步骤参阅<mysql免安装教程>--http://www.cnblogs.com/halberts/p/8723938.html 下载CAT代 ...
- STM32 硬件UART接收超时检测设置
STM32 硬件UART接收超时检测设置 -----------------本文作者"智御电子",期待与电子爱好者交流学习.---------------- 应用场景 在uart应 ...