【机器学习系列】概率图模型第六讲:因子图和道德图


作者:CHEONG

公众号:AI机器学习与知识图谱

研究方向:自然语言处理与知识图谱

阅读本文之前,先注意一下两点:

1、机器学习系列文章常含有大量公式推导证明,为了更好理解,文章在最开始会给出本文的重要结论,方便最快速度理解本文核心。需要进一步了解推导细节可继续往后看;

2、文中含有大量公式,若读者需要获取含公式原稿Word文档,可关注公众号【AI机器学习与知识图谱】后回复:概率图模型第六讲,可添加微信号【17865190919】进公众号讨论群,加好友时备注来自CSDN。原创不易,转载请告知并注明出处!


本文主要介绍概率图中的两类图:因子图和道德图。



一、本文结论


1、因子图作用:有向图有时需要转为无向图,但在转化过程中会引入环,图中存在环不好处理,因子图的作用是:一方面因子图可以将图中的环去掉;另一方面因子图会使得图计算变得简便;

2、道德图含义:道德图是指在有向图转化为无向图时,这个无向图就又被称为道德图,主要需要掌握的是如何将一个有向图转化为道德图,具体看正文。



二、因子图Factor Graph


有向图可以转为无向图,但转为无向图过程中可能会引入环。例如Belief Propagation算法只能处理树形结构,含有环便不好处理。因此因子图的引入有以下两个作用:

1、首先因子图可以将图中的环去掉,转化为无环图,2、因子图会使得计算变得简便

对于图 G = { x 1 , x 2 , . . . , x n } G=\{x_1,x_2,...,x_n\} G={x1,x2,...,xn},因子图可表达成:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g39H2mJh-1615623123079)(file:///C:/Users/zl_sd/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png)]

其中 S S S是图中节点子集, x s x_s xs s s s的随机变量子集。因式分解本身就对应一个特殊的因子图。一个无向图可以存在多个因子图,在无向图中加入因子节点,以下展现了一个有环无向图两种因子分解图的形式:

在这里插入图片描述
在这里插入图片描述



三、Moral Graph道德图


将有向图转化为无向图时,该无向图又被称为道德图Moral Graph,为什么要将有向图转化为无向图:因为无向图更加Generalize一些,更方便处理。有向图 G G G转化为无向图有两大准则:

1 ∀ x i ϵ G \forall x_i \epsilon G xiϵG,将 P a r e n t ( x i ) Parent(x_i) Parent(xi)两两连接起来;
2、将 G G G中的有向边替换成无向边。

下面展现了四种有向图转化为无向图的例子:

在这里插入图片描述

上图中有向图因式分解: p ( a , b , c ) = p ( a ) ⋅ p ( b ∣ a ) ⋅ p ( c ∣ b ) p(a,b,c)=p(a)\cdot p(b|a)\cdot p(c|b) p(a,b,c)=p(a)p(ba)p(cb),转化后的无向图因子分解为: p ( a , b , c ) = ψ ( a , b ) ⋅ ψ ( b , c ) p(a,b,c)=\psi(a,b)\cdot \psi(b,c) p(a,b,c)=ψ(a,b)ψ(b,c),其中 ψ ( a , b ) \psi(a,b) ψ(a,b)相当于有向图中的 p ( a ) ⋅ p ( b ∣ a ) p(a)\cdot p(b|a) p(a)p(ba) ψ ( b , c ) \psi(b,c) ψ(b,c)相当于有向图中的 p ( c ∣ b ) p(c|b) p(cb)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5M8vgYTB-1615623123105)(file:///C:/Users/zl_sd/AppData/Local/Temp/msohtmlclip1/01/clip_image038.jpg)]

上图中有向图因式分解: p ( a , b , c ) = p ( a ) ⋅ p ( b ∣ a ) ⋅ p ( c ∣ a ) p(a,b,c)=p(a)\cdot p(b|a)\cdot p(c|a) p(a,b,c)=p(a)p(ba)p(ca),转化后的无向图因子分解为: p ( a , b , c ) = ψ ( a , b ) ⋅ ψ ( a , c ) p(a,b,c)=\psi(a,b)\cdot \psi(a,c) p(a,b,c)=ψ(a,b)ψ(a,c),同理: ψ ( a , b ) \psi(a,b) ψ(a,b)近似 p ( a ) ⋅ p ( b ∣ a ) p(a)\cdot p(b|a) p(a)p(ba) ψ ( a , c ) \psi(a,c) ψ(a,c)近似 p ( c ∣ a ) p(c|a) p(ca)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-H7fFyAwo-1615623123108)(file:///C:/Users/zl_sd/AppData/Local/Temp/msohtmlclip1/01/clip_image050.jpg)]

上图这种情况较为特殊,不仅仅将有向边替换成无向边还需要将父节点两两相连接,可以从有向图和无向图因子分解证明其合理性。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IhbUrF7Q-1615623123111)(file:///C:/Users/zl_sd/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png)]

简单说明一下,例如上式为有向图因子分解,将 p ( a ) ⋅ p ( b ) ⋅ p ( c ∣ a , b ) p(a)\cdot p(b)\cdot p(c|a,b) p(a)p(b)p(ca,b) ψ \psi ψ函数替换则合理的近似是 p ( a ) ⋅ p ( b ) ⋅ p ( c ∣ a , b ) = ψ ( a , b , c ) p(a)\cdot p(b)\cdot p(c|a,b)=\psi(a,b,c) p(a)p(b)p(ca,b)=ψ(a,b,c),则说明节点a,b,c是一个团,所以两两相连,符合转化后的结果。
在这里插入图片描述

参考视频资料:【机器学习】【白板推导系列】 作者:shuhuai008

参考书籍资料:Pattern Recognition and Machine Learning 作者:Christopher Bishop

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值