本文的目的是记录一些在学习贝叶斯网络(Bayesian Networks)过程中遇到的基本问题。主要包括有向无环图(DAG),I-Maps,分解(Factorization),有向分割(d-Separation),最小I-Maps(Minimal I-Maps)等。主要参考Nir Friedman的相关PPT。

1  概率分布(Probability Distributions)

令X1,...,Xn表示随机变量;令P是X1,...,Xn的联合分布(joint distribution)。如果每个变量均可有两种取值(0-1分布),那么最终我们将得到2^n种取值,也就是说,我们需要用2^n个变量来描述P的分布。

2 随机变量的独立性

如果随机变量X和Y相互独立(independent),那么:

1)P(X=x|Y=y)=p(X=x),对于所有的x和y均成立;2)也就是说,随机变量Y的取值(或者说随机事件Y是否发生),不影响X。

3)P(X,Y)=P(X|Y)*P(Y)=P(X)*P(Y);

推广,如果X1,。。。,Xn独立,那么:

P(X1,,,,,Xn)=P(X1)...P(Xn),共需O(n)个参数。

3 条件独立(Conditional Independence)

上述独立的情况比较理想,不幸的是,现实中大多数我们感兴趣的随机变量都不是相互独立的。更加常见的假设是条件独立。两个随机变量X和Y对于给定条件Z条件独立,如果:

P(X=x|Y=y,Z=z) = P(X=x|Z=z),对于所有随机变量取值x,y,z均成立。

也就是说,当我们知道Z的取值时,Y的取值不影响X的预测。记为Ind(X;Y|Z)

4 马尔科夫假设(Markov Assumption)

马尔科夫假设是针对有向无环图做的更清晰的独立性假设。对于图G中的任意一个节点X,X代表一个随机变量,在给定X的父节点集Par(X)的情况下,X和X的所有非子节点相互独立。一般记作Ind(X;NonDesc(x)|Par(x))。这也称作变量的局部马尔科夫性。实例见下图:

5 I-Maps

一个有向无环图G是分布P的一个I-Map当对G的所有马尔科夫假设也适合于对P(假设G和P均具有相同的随机变量)。这是从有向无环图到概率公式推理的基础。

6 分解 Factorization

如果G是P的一个I-Map,那么我们能简化P的表示么?

例如,对于随机变量X和Y,如果Ind(X;Y),我们可以知道:P(X|Y)=P(X)。

根据链式法则(Chain Rules),我们知道:P(X,Y)=P(X|Y)*P(Y)=P(X)*P(Y)。

这样,我们就将P(X,Y)简化成为P(X)*P(Y)的形式。

7 分解定理

如果G是P的一个I-Map,那么:

8 最小I-Map, Minimal I-Map

一个有向无环图G是P的一个最小I-Map当:G是P的一个I-Map;如果G‘是G的子图,那么G’不是P的I-Map。

9 d-separated 有向分割

d-separated这个概念是由Judea Pearl于1988年提出的算法的名字。这个算法是用来衡量图中的所有的条件独立关系。

令X, Y和Z是一个有向无环图 G中二个不相 交节点的子集,如果在集合X和Y中所有节点间的所有路径都被集合Z所 阻塞,则称集合X和Y被Z集合d-s eparation。

也称Z 为X和Y的切割集。否则,称在给定集合Z下集合X和Y依赖。

那么,什么时候称点集X和Y中所有节点间的路径被点集Z阻塞呢?如下图所示:

1.每条从A中的变量(顶点)到B中变量(顶点)的路径都经过集合Z,则称Z分开了点集A和B;

2.Z阻塞了从A到B的所有路径。

10 信息理论

增加这个定义的原因是因为评价概率模型时常常要用到,作为笔记留作查阅。

11.扩展阅读

图模型的介绍

An introduction to graphical models,Kevin P. Murphy

关于图模型的课程:课件以书的形式给出,易读

Statistical Learning Theory,berkeley CS281A

http://www.cs.berkeley.edu/~jordan/courses/281A-fall02/

更多的tutorials

http://www.cs.ubc.ca/~murphyk/

http://research.microsoft.com/~cmbishop/talks.htm

http://research.microsoft.com/~heckerman/

http://www.autonlab.org/tutorials/

http://www.cs.berkeley.edu/~jordan/tutorials.html

一些工具/源代码

Intel Probabilistic Network Library:C++

www.intel.com/technology/computing/pnl/index.htm

Jie Cheng :KDDCup01的优胜者

http://www.cs.ualberta.ca/~jcheng/

Matlab工具:http://prdownloads.sourceforge.net/bnt/

PGM学习之六 从有向无环图(DAG)到贝叶斯网络(Bayesian Networks)的更多相关文章

  1. 大数据工作流任务调度--有向无环图(DAG)之拓扑排序

    点击上方蓝字关注DolphinScheduler(海豚调度) |作者:代立冬 |编辑:闫利帅 回顾基础知识: 图的遍历 图的遍历是指从图中的某一个顶点出发,按照某种搜索方法沿着图中的边对图中的所有顶点 ...

  2. 【学习笔记】有向无环图上的DP

    手动博客搬家: 本文发表于20180716 10:49:04, 原地址https://blog.csdn.net/suncongbo/article/details/81061378 首先,感谢以下几 ...

  3. C#实现有向无环图(DAG)拓扑排序

    对一个有向无环图(Directed Acyclic Graph简称DAG)G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在 ...

  4. 【模板整合计划】图论—有向无环图 (DAG) 与树

    [模板整合计划]图论-有向无环图 (DAG) 与树 一:[拓扑排序] 最大食物链计数 \(\text{[P4017]}\) #include<cstring> #include<cs ...

  5. 判断有向无环图(DAG)

    1.拓扑排序 bfs 所有入度为0的先入选. 2.tarjan 1个点1个集合 3.暴力 一个点不能重新到达自己

  6. [笔记] 有向无环图 DAG

    最小链覆盖 (最长反链) 最小链覆盖 \(=n-\) 最大匹配. 考虑首先每个点自成一条链,此时恰好有 \(n\) 条链,最终答案一定是合并(首尾相接)若干条链形成的. 将两点匹配的含义其实就是将链合 ...

  7. PGM:有向图模型:贝叶斯网络

    http://blog.csdn.net/pipisorry/article/details/52489270 为什么用贝叶斯网络 联合分布的显式表示 Note: n个变量的联合分布,每个x对应两个值 ...

  8. PGM学习之五 贝叶斯网络

    本文的主题是“贝叶斯网络”(Bayesian Network) 贝叶斯网络是一个典型的图模型,它对感兴趣变量(variables of interest)及变量之间的关系(relationships) ...

  9. 【拓扑】【宽搜】CSU 1084 有向无环图 (2016湖南省第十二届大学生计算机程序设计竞赛)

    题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1804 题目大意: 一个有向无环图(DAG),有N个点M条有向边(N,M<=105 ...

随机推荐

  1. python 实现redis订阅发布功能

    redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set ...

  2. Python对中文的支持

    在Python中,经常会出现中文,出现中文有时候会报错,这时候很多新手在处理中文编码的时候会有点不知所措. Python主要有2.x和3.x版本两个区别,在3.x版本中,已经支持中文直接开发,而不需要 ...

  3. python继承与多继承

    1.类与对象里的父类与子类(继承): 类的继承主要是指自子类对于之前父类的方法的继承,如果子类里面写了父类里的方法,则它会将父类里的方法覆盖掉,从而不能再调用到父类的方法. 2.为了解决父类与子类里的 ...

  4. easyx图形库做贪吃蛇游戏

    编程总是对着一个黑窗口,可以说是非常乏味了,于是喵喵就翻出来了以前用easyx图形库做图形界面的贪吃蛇游戏. 不过大家只是当做提高编程的乐趣来学习吧,想进一步做的话可以学习QT,还有其他的框架. 这是 ...

  5. 10款常见MySQL高可用方案选型解读

    一.概述 我们在考虑MySQL数据库的高可用架构时,主要考虑如下几方面: 如果数据库发生了宕机或者意外中断等故障,能尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据库的故障而中断. ...

  6. ClickOnce 创建桌面快捷方式

    static void Main() { bool bCreatedNew; Mutex m = new Mutex(false, "TestClickOnceClientName" ...

  7. Beta阶段基于NABCD评论作品

    组名:杨老师粉丝群 组长:乔静玉 组员:吴奕瑶  刘佳瑞  公冶令鑫  杨磊  刘欣  张宇  卢帝同 一.拉格朗日2018--<飞词> 1.1.NABCD分析 N(Need,需求):该小 ...

  8. TFS任务预览

    不太熟悉TFS任务项的建立. 初步建立及按老师要求分配到个人的任务设置与时间安排如下: (长时间任务可由多人合作完成,具体根据情况迅速调整任务分配) 加上每人需要进行阅读前一小组的代码需要时间2*8= ...

  9. 作业6 团队项目之(开始第一个Sprint)

    一.模仿并超越--类似应用. 五个app:1.四则运算小学堂(500-999次下载 3.57M) 2.小学生算术练习(9000+次下载 232K) 3.小学生加减题生成练习工具(2万-3万次下载 1. ...

  10. SGU 223 little kings BSOJ2772 状压DP

    1896 [SCOI2005]互不侵犯King [问题描述]在n*n(1<=n<=10)的棋盘上放k(0<=k<=n*n)个国王(可攻击相邻的8 个格子),求使它们无法互相攻击 ...