一、概述
- 基本规则
概率图模型使用图的形式表示概率分布,首先总结一下几个随机变量分布的一些规则:
Sum Rule: p ( x 1 ) = ∫ p ( x 1 , x 2 ) d x 2 p(x_{1})=\int p(x_{1},x_{2})\mathrm{d}x_{2} p(x1)=∫p(x1,x2)dx2
Product Rule: p ( x 1 , x 2 ) = p ( x 1 ∣ x 2 ) p ( x 2 ) p(x_{1},x_{2})=p(x_{1}|x_{2})p(x_{2}) p(x1,x2)=p(x1∣x2)p(x2)
Chain Rule: p ( x 1 , x 2 , ⋯ , x p ) = ∏ i = 1 p p ( x i ∣ x i + 1 , x i + 2 , ⋯ , x p ) p(x_{1},x_{2},\cdots ,x_{p})=\prod_{i=1}^{p}p(x_{i}|x_{i+1},x_{i+2},\cdots ,x_{p}) p(x1,x2,⋯,xp)=∏i=1pp(xi∣xi+1,xi+2,⋯,xp)
Bayesian Rule: P ( x 2 ∣ x 1 ) = P ( x 1 , x 2 ) P ( x 1 ) = P ( x 1 , x 2 ) ∫ P ( x 1 , x 2 ) d x 2 = P ( x 2 ) P ( x 1 ∣ x 2 ) ∫ P ( x 2 ) P ( x 1 ∣ x 2 ) d x 2 P(x_{2}|x_{1})=\frac{P(x_{1},x_{2})}{P(x_{1})}=\frac{P(x_{1},x_{2})}{\int P(x_{1},x_{2})\mathrm{d}x_{2}}=\frac{P(x_{2})P(x_{1}|x_{2})}{\int P(x_{2})P(x_{1}|x_{2})\mathrm{d}x_{2}} P(x2∣x1)=P(x1)P(x1,x2)=∫P(x1,x2)dx2P(x1,x2)=∫P(x2)P(x1∣x2)dx2P(x2)P(x1∣x2)
- 简化运算的假设
在链式规则中如果数据的维度过高,就会出现计算复杂的困境,因此我们需要对此做出一些简化,以下是一些例子:
① 相 互 独 立 的 假 设 : P ( x 1 , x 2 , ⋯ , x p ) = ∏ i = 1 p P ( x i ) , 朴 素 贝 叶 斯 中 的 条 件 独 立 性 假 设 : P ( x ∣ y ) = ∏ i = 1 p P ( x i ∣ y ) ; ② M a r k o v P r o p e r t y : x j ⊥ x i + 1 ∣ x i , j < i , H M M 中 的 齐 次 M a r k o v 假 设 ; ③ 条 件 独 立 性 假 设 : x A ⊥ x B ∣ x C , x A 、 x B 、 x C 是 集 合 , 且 不 相 交 。 ①\; 相互独立的假设:P(x_{1},x_{2},\cdots ,x_{p})=\prod_{i=1}^{p}P(x_{i}),朴素贝叶斯中的条件独立性假设:P(x|y)=\prod_{i=1}^{p}P(x_{i}|y);\\ ②\; Markov\; Property:x_{j}\perp x_{i+1}| x_{i},j< i,HMM中的齐次Markov假设;\\ ③\; {\color{Red}{条件独立性假设}}:x_{A}\perp x_{B}|x_{C},x_{A}、x_{B}、x_{C}是集合,且不相交。 ①相互独立的假设:P(x1,x2,⋯,xp)=i=1∏pP(xi),朴素贝叶斯中的条件独立性假设:P(x∣y)=i=1∏pP(xi∣y);②MarkovProperty:xj⊥xi+1∣xi,j<i,HMM中的齐次Markov假设;③条件独立性假设:xA⊥xB∣xC,xA、xB、xC是集合,且不相交。
- 概率图模型的知识体系
概 率 图 { R e p r e s e n t a t i o n ( 表 示 ) { 有 向 图 B e y e s i a n N e t w o r k 高 斯 图 ( 连 续 ) { G a u s s i a n B N G a u s s i a n M N 无 向 图 M a r k o v N e t w o r k I n f e r e n c e ( 推 断 ) { 精 确 推 断 近 似 推 断 { 确 定 性 近 似 ( 变 分 推 断 ) 随 机 近 似 ( M C M C ) L e a r n i n g ( 学 习 ) { 参 数 学 习 { 完 备 数 据 { 有 向 无 向 隐 变 量 → E M 结 构 学 习 概率图\left\{\begin{matrix} Representation(表示)\left\{\begin{matrix} 有向图\; Beyesian\; Network\\ 高斯图(连续)\left\{\begin{matrix} Gaussian\; BN\\ Gaussian\; MN \end{matrix}\right.\\ 无向图\; Markov\; Network \end{matrix}\right.\\ Inference(推断)\left\{\begin{matrix} 精确推断\\ 近似推断\left\{\begin{matrix} 确定性近似(变分推断)\\ 随机近似(MCMC) \end{matrix}\right. \end{matrix}\right.\\ Learning(学习)\left\{\begin{matrix} 参数学习\left\{\begin{matrix} 完备数据\left\{\begin{matrix} 有向\\ 无向 \end{matrix}\right.\\ 隐变量\rightarrow EM \end{matrix}\right.\\ 结构学习 \end{matrix}\right. \end{matrix}\right. 概率图⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧Representation(表示)⎩⎪⎪⎨⎪⎪⎧有向图BeyesianNetwork高斯图(连续){GaussianBNGaussianMN无向图MarkovNetworkInference(推断)⎩⎨⎧精确推断近似推断{确定性近似(变分推断)随机近似(MCMC)Learning(学习)⎩⎪⎪⎨⎪⎪⎧参数学习⎩⎨⎧完备数据{有向无向隐变量→EM结构学习
二、有向图-贝叶斯网络
- 基本结构
已知联合概率分布中各个随机变量的依赖关系,可以根据拓扑排序(依赖关系)得到一个有向图。而如果已知一个有向图,可以直接得到联合概率分布的因子分解:
P ( x 1 , x 2 , ⋯ , x p ) = ∏ i = 1 p P ( x i ∣ x p a r e n t ( i ) ) P(x_{1},x_{2},\cdots ,x_{p})=\prod_{i=1}^{p}P(x_{i}|x_{parent(i)}) P(x1,x2,⋯,xp)=i=1∏pP(xi∣xparent(i))
在局部的任何三个节点,可以有以下三种结构:
- head to tail
这种结构满足:
A ⊥ C ∣ B ⇔ 若 B 被 观 测 , 则 路 径 被 阻 塞 。 A\perp C|B\Leftrightarrow 若B被观测,则路径被阻塞。 A⊥C∣B⇔若B被观测,则路径被阻塞。
阻塞也就是独立的意思。
通过因子分解和链式规则可以进行证明:
P ( A , B , C ) = P ( A ) P ( B ∣ A ) P ( C ∣ B ) ⏟ 因 子 分 解 = P ( A ) P ( B ∣ A ) P ( C ∣ B , A ) ⏟ 链 式 法 则 ⇒ P ( C ∣ B ) = P ( C ∣ B , A ) ⇒ P ( C ∣ B ) P ( A ∣ B ) = P ( C ∣ A , B ) P ( A ∣ B ) ⇒ P ( C ∣ B ) P ( A ∣ B ) = P ( C , A ∣ B ) ⇒ C ⊥ A ∣ B P(A,B,C)=\underset{因子分解}{\underbrace{P(A)P(B|A)P(C|B)}}=\underset{链式法则}{\underbrace{P(A)P(B|A)P(C|B,A)}}\\ \Rightarrow P(C|B)=P(C|B,A)\\ \Rightarrow P(C|B)P(A|B)=P(C|A,B)P(A|B)\\ \Rightarrow P(C|B)P(A|B)=P(C,A|B)\\ \Rightarrow C\perp A|B P(A,B,C)=因子分解 P(A)P(B∣A)P(C∣B)=链式法则 P(A)P(B∣A)P(C∣B,A)⇒P(C∣B)=P(C∣B,A)⇒P(C∣B)P(A∣B)=P(C∣A,B)P(A∣B)⇒P(C∣B)P(A∣B)=P(C,A∣B)⇒C⊥A∣B
- tail to tail
这种结构满足:
A ⊥ C ∣ B ⇔ 若 B 被 观 测 , 则 路 径 被 阻 塞 。 A\perp C|B\Leftrightarrow 若B被观测,则路径被阻塞。 A⊥C∣B⇔若B被观测,则路径被阻塞。
通过因子分解和链式规则可以进行证明:
P ( A , B , C ) = P ( A ∣ B ) P ( B ) P ( C ∣ B ) ⏟ 因 子 分 解 = P ( B ) P ( A ∣ B ) P ( C ∣ A , B ) ⏟ 链 式 法 则 ⇒ P ( C ∣ B ) = P ( C ∣ A , B ) ⇒ P ( C ∣ B ) P ( A ∣ B ) = P ( C ∣ A , B ) P ( C ∣ B ) ⇒ P ( C ∣ B ) P ( A ∣ B ) = P ( A , C ∣ B ) ⇒ C ⊥ A ∣ B P(A,B,C)=\underset{因子分解}{\underbrace{P(A|B)P(B)P(C|B)}}=\underset{链式法则}{\underbrace{P(B)P(A|B)P(C|A,B)}}\\ \Rightarrow P(C|B)=P(C|A,B)\\ \Rightarrow P(C|B)P(A|B)=P(C|A,B)P(C|B)\\ \Rightarrow P(C|B)P(A|B)=P(A,C|B)\\ \Rightarrow C\perp A|B P(A,B,C)=因子分解 P(A∣B)P(B)P(C∣B)=链式法则 P(B)P(A∣B)P(C∣A,B)⇒P(C∣B)=P(C∣A,B)⇒P(C∣B)P(A∣B)=P(C∣A,B)P(C∣B)⇒P(C∣B)P(A∣B)=P(A,C∣B)⇒C⊥A∣B
- head to head
这种结构满足:
默认情况下, A ⊥ C A\perp C A⊥C,路径是阻塞的。
若 B B B被观测,则路径是通的。
如果 B B B仍然有后继节点,则如果后继节点被观测,路径也是通的。
通过因子分解和链式规则可以进行证明:
P ( A , B , C ) = P ( A ) P ( C ) P ( B ∣ A , C ) ⏟ 因 子 分 解 = P ( A ) P ( C ∣ A ) P ( B ∣ A , C ) ⏟ 链 式 法 则 ⇒ P ( C ) = P ( C ∣ A ) ⇒ A ⊥ C P(A,B,C)=\underset{因子分解}{\underbrace{P(A)P(C)P(B|A,C)}}=\underset{链式法则}{\underbrace{P(A)P(C|A)P(B|A,C)}}\\ \Rightarrow P(C)=P(C|A)\\ \Rightarrow A\perp C P(A,B,C)=因子分解 P(A)P(C)P(B∣A,C)=链式法则 P(A)P(C∣A)P(B∣A,C)⇒P(C)=P(C∣A)⇒A⊥C
- D划分(D-Seperation)
对于3个集合 A 、 B 、 C A、B、C A、B、C,判断其是否满足条件独立性假设( x A ⊥ x B ∣ x C x_{A}\perp x_{B}|x_{C} xA⊥xB∣xC, x A x_{A} xA、 x B x_{B} xB、 x C x_{C} xC是集合,且不相交。)可以通过D划分这种方法。
D划分是一种判定的方式,其规则是对于上述head to tail以及tail to tail的关系,引入集合 A A A、 B B B,那么满足 x A ⊥ x B ∣ x C x_{A}\perp x_{B}|x_{C} xA⊥xB∣xC的 C C C集合中的元素与 A A A、 B B B中的元素的关系满足head to tail或tail to tail的关系,而满足head to head关系的元素不在 C C C中。下图展示了满足条件独立性的3个集合的有向图:
- 马尔可夫毯(Markov Blanket)
现在来看一下以下概率:
P ( x i ∣ x − i ) = P ( x i , x − i ) P ( x − i ) = P ( x ) ∫ x − i P ( x ) d x i = ∏ j = 1 p P ( x j ∣ x p a r e n t ( j ) ) ∫ x − i ∏ j = 1 p P ( x j ∣ x p a r e n t ( j ) ) d x i P(x_{i}|x_{-i})=\frac{P(x_{i},x_{-i})}{P(x_{-i})}=\frac{P(x)}{\int _{x_{-i}}P(x)\mathrm{d}x_{i}}=\frac{\prod_{j=1}^{p}P(x_{j}|x_{parent(j)})}{\int _{x_{-i}}\prod_{j=1}^{p}P(x_{j}|x_{parent(j)})\mathrm{d}x_{i}} P(xi∣x−i)=P(x−i)P(xi,x−i)=∫x−iP(x)dxiP(x)=∫x−i∏j=1pP(xj∣xparent(j))dxi∏j=1pP(xj∣xparent(j))
在上式中, x − i x_{-i} x−i指的是从 x x x中剔除 x i x_{i} xi剩下的部分。分子分母可以将与 x i x_{i} xi无关的 P ( x j ∣ x p a r e n t ( j ) ) P(x_{j}|x_{parent(j)}) P(xj∣xparent(j))提出来然后约掉,也就是说 x i x_{i} xi与 x − i x_{-i} x−i的关系只与 P ( x i ∣ x p a r e n t ( i ) ) P(x_{i}|x_{parent(i)}) P(xi∣xparent(i))和 P ( x c h i l d ( i ) ∣ x i , x o t h e r p a r e n t ) P(x_{child(i)}|x_{i},x_{otherparent}) P(xchild(i)∣xi,xotherparent)有关,即只与 x i x_{i} xi的父节点, x i x_{i} xi的子节点以及 x i x_{i} xi子节点的其父节点有关,这些节点就叫做马尔可夫毯(Markov Blanket)。画图表示如下:
- 具体模型
实际应⽤的模型中,对这些条件独⽴性作出了假设,从单⼀到混合,从有限到⽆限(时间,空间)可以分为:
{ 单 一 : N a i v e B a y e s 混 合 : G M M 时 间 : { M a r k o v C h a i n G a u s s i a n P r o c e s s 连 续 : G a u s s i a n B a y e s i a n N e t w o r k \left\{\begin{matrix} 单一:Naive Bayes\\ 混合:GMM\\ 时间:\left\{\begin{matrix} Markov\; Chain\\ Gaussian\; Process \end{matrix}\right.\\ 连续:Gaussian\; Bayesian\; Network \end{matrix}\right. ⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧单一:NaiveBayes混合:GMM时间:{MarkovChainGaussianProcess连续:GaussianBayesianNetwork
GMM 与时序结合的动态模型:
- HMM(离散)
- 线性动态系统 LDS(Kalman 滤波)
- 粒⼦滤波(⾮⾼斯,⾮线性)
三、无向图-马尔可夫网络(马尔可夫随机场)
- 全局、局部、成对马尔可夫性
马尔可夫随机场的条件独立性体现在三个方面:
①全局马尔可夫性
②局部马尔可夫性
③成对马尔可夫性
全局、局部、成对马尔可夫性是相互等价的,也就是说可以相互推出来。
- 全局马尔可夫性
在无向图中给定三个集合 A A A、 B B B、 C C C,在无向图中如果满足给定 x C x_C xC的条件下, x A x_A xA和 x B x_B xB相互独立,即 x A ⊥ x B ∣ x C x_{A}\perp x_{B}|x_{C} xA⊥xB∣xC,则满足全局马尔可夫性。
在图中的判定方法为从 A A A中节点到 B B B中节点的任何路径上都至少有一个位于 C C C中的节点:
- 局部马尔可夫性
局部马尔可夫性是指给定一个变量 x x x的所有邻接变量,则 x x x独立于任何其他变量,即:
x ⊥ ( X − N e i g h b o r ( x ) − x ) ∣ N e i g h b o r ( x ) x\perp (X-Neighbor(x)-x)|Neighbor(x) x⊥(X−Neighbor(x)−x)∣Neighbor(x)
举例来说,在下图中, x ⊥ { e , f } ∣ { b , c , d } x\perp \left \{e,f\right \}|\left \{b,c,d\right \} x⊥{e,f}∣{b,c,d}:
- 成对马尔可夫性
成对马尔可夫性是指给定所有其他变量,两个非邻接变量条件独立,即:
x i ⊥ x j ∣ x − i − j , i ≠ j , x i 、 x j 不 相 邻 x_{i}\perp x_{j}|x_{-i-j},i\neq j,x_{i}、x_{j}不相邻 xi⊥xj∣x−i−j,i=j,xi、xj不相邻
- 因子分解
引入团的概念:
团,最大团:图中节点的集合,集合中的节点之间全部互相连接的叫做团,如果不能再添加任何节点,就叫做最大团。
最大团的概念可以参考数据结构中的极大连通子图。
将概率无向图模型的联合概率分布表示为其最大团上的随机变量的函数的乘积形式的操作,称为概率无向图模型的因子分解。
给定概率无向图模型, C i , i = 1 , 2 , ⋯ , k C_i,i=1,2,\cdots ,k Ci,i=1,2,⋯,k为无向图模型上的最大团,则 x x x的联合概率分布 P ( x ) P(x) P(x)可以写为:
P ( x ) = 1 Z ∏ i = 1 k ψ ( x C i ) C i : 最 大 团 x C i : 最 大 团 随 机 变 量 集 合 ψ ( x C i ) : 势 函 数 , 必 须 为 正 Z = ∑ x ∏ i = 1 k ψ ( x C i ) = ∑ x 1 ∑ x 2 ⋯ ∑ x p ∏ i = 1 k ψ ( x C i ) P(x)=\frac{1}{Z}\prod_{i=1}^{k}\psi (x_{C_{i}})\\ C_{i}:最大团\\ x_{C_{i}}:最大团随机变量集合\\ \psi (x_{C_{i}}):势函数,必须为正\\ Z=\sum _{x}\prod_{i=1}^{k}\psi (x_{C_{i}})=\sum _{x_{1}}\sum _{x_{2}}\cdots \sum _{x_{p}}\prod_{i=1}^{k}\psi (x_{C_{i}}) P(x)=Z1i=1∏kψ(xCi)Ci:最大团xCi:最大团随机变量集合ψ(xCi):势函数,必须为正Z=x∑i=1∏kψ(xCi)=x1∑x2∑⋯xp∑i=1∏kψ(xCi)
对于势函数,通常使用 ψ ( x C i ) = e x p { − E ( x C i ) } \psi (x_{C_{i}})=exp\left \{-E(x_{C_{i}})\right \} ψ(xCi)=exp{−E(xCi)},当使用这个势函数时, P ( x ) = 1 Z ∏ i = 1 k ψ ( x C i ) P(x)=\frac{1}{Z}\prod_{i=1}^{k}\psi (x_{C_{i}}) P(x)=Z1∏i=1kψ(xCi)就叫做吉布斯分布(Gibbs Distribution),或者玻尔兹曼分布(Boltzmann Distribution)。进一步观察一下这个分布:
P ( x ) = 1 Z ∏ i = 1 k ψ ( x C i ) = 1 Z ∏ i = 1 k e x p { − E ( x C i ) } = 1 Z e x p { − ∑ i = 1 k E ( x C i ) } ⏟ 指 数 族 分 布 形 式 P(x)=\frac{1}{Z}\prod_{i=1}^{k}\psi (x_{C_{i}})\\ =\frac{1}{Z}\prod_{i=1}^{k}exp\left \{-E(x_{C_{i}})\right \}\\ =\underset{指数族分布形式}{\underbrace{\frac{1}{Z}exp\left \{-\sum_{i=1}^{k}E(x_{C_i})\right \}}} P(x)=Z1i=1∏kψ(xCi)=Z1i=1∏kexp{−E(xCi)}=指数族分布形式 Z1exp{−i=1∑kE(xCi)}
也就是说吉布斯分布满足指数族分布的形式,于是满足最大熵原理。