Skip to content

Files

Latest commit

Feb 17, 2020
2f9e453 · Feb 17, 2020

History

History
67 lines (53 loc) · 3.89 KB

19.RBM.md

File metadata and controls

67 lines (53 loc) · 3.89 KB

受限玻尔兹曼机

玻尔兹曼机是一种存在隐节点的无向图模型。在图模型中最简单的是朴素贝叶斯模型(朴素贝叶斯假设),引入单个隐变量后,发展出了 GMM,如果单个隐变量变成序列的隐变量,就得到了状态空间模型(引入齐次马尔可夫假设和观测独立假设就有HMM,Kalman Filter,Particle Filter),为了引入观测变量之间的关联,引入了一种最大熵模型-MEMM,为了克服 MEMM 中的局域问题,又引入了 CRF,CRF 是一个无向图,其中,破坏了齐次马尔可夫假设,如果隐变量是一个链式结构,那么又叫线性链 CRF。

在无向图的基础上,引入隐变量得到了玻尔兹曼机,这个图模型的概率密度函数是一个指数族分布。对隐变量和观测变量作出一定的限制,就得到了受限玻尔兹曼机(RBM)。

我们看到,不同的概率图模型对下面几个特点作出假设:

  1. 方向-边的性质
  2. 离散/连续/混合-点的性质
  3. 条件独立性-边的性质
  4. 隐变量-节点的性质
  5. 指数族-结构特点

将观测变量和隐变量分别记为 v , h , h = h 1 , , h m , v = v 1 , , v n 。我们知道,无向图根据最大团的分解,可以写为玻尔兹曼分布的形式 p ( x ) = 1 Z i = 1 K ψ i ( x c i ) = 1 Z exp ( i = 1 K E ( x c i ) ) ,这也是一个指数族分布。

一个玻尔兹曼机存在一系列的问题,在其推断任务中,想要精确推断,是无法进行的,想要近似推断,计算量过大。为了解决这个问题,一种简化的玻尔兹曼机-受限玻尔兹曼机作出了假设,所有隐变量内部以及观测变量内部没有连接,只在隐变量和观测变量之间有连接,这样一来: $$ p(x)=p(h,v)=\frac{1}{Z}\exp(-E(v,h)) $$ 其中能量函数 E ( v , h ) 可以写出三个部分,包括与节点集合相关的两项以及与边 w 相关的一项,记为: $$ E(v,h)=-(h^Twv+\alpha^T v+\beta^T h) $$ 所以: $$ p(x)=\frac{1}{Z}\exp(h^Twv)\exp(\alpha^T v)\exp(\beta^T h)=\frac{1}{Z}\prod_{i=1}^m\prod_{j=1}^n\exp(h_iw_{ij}v_j)\prod_{j=1}^n\exp(\alpha_jv_j)\prod_{i=1}^m\exp(\beta_ih_i) $$ 上面这个式子也和 RBM 的因子图一一对应。

推断

推断任务包括求后验概率 $ p(v|h),p(h|v)$ 以及求边缘概率 p ( v )

p ( h | v )

对于一个无向图,满足局域的 Markov 性质,即 p ( h 1 | h h 1 , v ) = p ( h 1 | N e i g h b o u r ( h 1 ) ) = p ( h 1 | v ) 。我们可以得到: $$ p(h|v)=\prod_{i=1}^mp(h_i|v) $$ 考虑 Binary RBM,所有的隐变量只有两个取值 0 , 1 : $$ p(h_l=1|v)=\frac{p(h_l=1,h_{-l},v)}{p(h_{-l},v)}=\frac{p(h_l=1,h_{-l},v)}{p(h_l=1,h_{-l},v)+p(h_l=0,h_{-l},v)} $$ 将能量函数写成和 l 相关或不相关的两项: $$ E(v,h)=-(\sum\limits_{i=1,i\ne l}^m\sum\limits_{j=1}^nh_iw_{ij}v_j+h_l\sum\limits_{j=1}^nw_{lj}v_j+\sum\limits_{j=1}^n\alpha_j v_j+\sum\limits_{i=1,i\ne l}^m\beta_ih_i+\beta_lh_l) $$ 定义:$h_lH_l(v)=h_l\sum\limits_{j=1}^nw_{lj}v_j+\beta_lh_l,\overline{H}(h_{-l},v)=\sum\limits_{i=1,i\ne l}^m\sum\limits_{j=1}^nh_iw_{ij}v_j+\sum\limits_{j=1}^n\alpha_j v_j+\sum\limits_{i=1,i\ne l}^m\beta_ih_i$。

代入,有: $$ p(h_l=1|v)=\frac{\exp(H_l(v)+\overline{H}(h_{-l},v))}{\exp(H_l(v)+\overline{H}(h_{-l},v))+\exp(\overline{H}(h_{-l},v))}=\frac{1}{1+\exp(-H_l(v))}=\sigma(H_l(v)) $$ 于是就得到了后验概率。对于 v 的后验是对称的,所以类似的可以求解。

p ( v )

p ( v ) = h p ( h , v ) = h 1 Z exp ( h T w v + α T v + β T h ) = exp ( α T v ) 1 Z h 1 exp ( h 1 w 1 v + β 1 h 1 ) h m exp ( h m w m v + β m h m ) = exp ( α T v ) 1 Z ( 1 + exp ( w 1 v + β 1 ) ) ( 1 + exp ( w m v + β m ) ) = 1 Z exp ( α T v + i = 1 m log ( 1 + exp ( w i v + β i ) ) )

其中,$\log(1+\exp(x))$ 叫做 Softplus 函数。