机器学习笔记之玻尔兹曼机(一)基本介绍

引言

受限玻尔兹曼机——模型表示(Representation)一节中以玻尔兹曼机为引,介绍了受限玻尔兹曼机。从本节开始,将正式介绍玻尔兹曼机。相比于它的表示和推断过程,我们更关注它在求解过程中出现的问题

回顾:玻尔兹曼机的模型表示

玻尔兹曼机本质上是一个马尔可夫随机场(MArkov Random Field),该概率图中结点均表示离散型随机变量,并被限定为伯努利分布

并且,概率图中结点之间的边是随意的,并没有具体约束。但如果想要描述更加复杂的函数,自然需要结点之间复杂的边作为支撑:
请添加图片描述
其中左图表示全连接玻尔兹曼机,无论是观测变量,还是隐变量,结点之间均存在边相连接;而右图同样表示玻尔兹曼机,只不过结点之间无明确约束,结点之间的边连接更加随意。

并且玻尔兹曼机并没有被严格要求一定有隐变量。也就是说,玻尔兹曼机可能是一个非隐变量模型,它的结点均由观测变量构成(Fully Observed Model);与之相对的,从生成模型的角度考虑,我们更关注观测变量与隐变量相混合的概率图结构。

依然以包含隐变量的玻尔兹曼机为例,假设某玻尔兹曼机中包含观测变量集合 v v v隐变量集合 h h h,并且 v v v中的 D \mathcal D D个分量和 h h h中的 P \mathcal P P个分量均服从伯努利分布
{ v = ( v 1 , v 2 , ⋯   , v D ) T ∈ { 0 , 1 } D h = ( h 1 , h 2 , ⋯   , h P ) T ∈ { 0 , 1 } P \begin{cases} v = (v_1,v_2,\cdots,v_{\mathcal D})^T \in \{0,1\}^{\mathcal D} \\ h = (h_1,h_2,\cdots,h_{\mathcal P})^T \in \{0,1\}^{\mathcal P} \end{cases} { v=(v1,v2,,vD)T{ 0,1}Dh=(h1,h2,,hP)T{ 0,1}P
关于结点之间边的权重,可以将其分成三类

  • 观测变量结点之间的边的权重表示:
    L = [ L i j ] D × D \mathcal L = \left[\mathcal L_{ij}\right]_{\mathcal D \times \mathcal D} L=[Lij]D×D
  • 隐变量结点之间的边的权重表示:
    J = [ J i j ] P × P \mathcal J = \left[\mathcal J_{ij}\right]_{\mathcal P \times \mathcal P} J=[Jij]P×P
  • 观测变量隐变量结点之间的边的权重表示:
    同理,隐变量到观测变量结点之间的权重表示为 [ W j i ] P × D [\mathcal W_{ji}]_{\mathcal P \times \mathcal D} [Wji]P×D,两者之间仅差一个转置,信息并没有发生变化。
    W = [ W i j ] D × P \mathcal W = \left[\mathcal W_{ij}\right]_{\mathcal D \times \mathcal P} W=[Wij]D×P

至此,结点与边权重均已确定,关于玻尔兹曼机中随机变量(结点)的概率密度函数表示为:
P ( v , h ) = 1 Z exp ⁡ { − E ( v , h ) } \begin{aligned} \mathcal P(v,h) = \frac{1}{\mathcal Z} \exp \{- \mathbb E(v,h)\} \end{aligned} P(v,h)=Z1exp{ E(v,h)}
而能量函数 E ( v , h ) \mathbb E(v,h) E(v,h)可根据玻尔兹曼机的结构表示,有:

  • 从能量的角度考虑, v i ⋅ W i j ⋅ h j v_i \cdot \mathcal W_{ij} \cdot h_j viWijhj表示结点 v i v_i vi和结点 h j h_j hj之间的能量表示。
  • 从概率角度考虑,无论是 v i ⋅ W i j ⋅ h j v_i \cdot \mathcal W_{ij} \cdot h_j viWijhj还是 v i ⋅ L i j ⋅ v j v_i \cdot \mathcal L_{ij} \cdot v_j viLijvj,还是 h i ⋅ J i j ⋅ h j h_i \cdot \mathcal J_{ij} \cdot h_j hiJijhj,它们的‘配分函数结果’均表示‘基于某结点的条件下,其他结点发生的概率结果’。
  • 观测变量 v v v和隐变量 h h h均需要乘以 1 2 \frac{1}{2} 21是因为无向图模型,仅需要计算一次边对应的能量即可,但实际上每条边在执行运算过程中,均加重了一次。
    这里取上述‘全连接玻尔兹曼机’中的观测变量内部连接为例。
    关于观测变量的局部图
    观察上图,观测变量内部仅包含三条边,仅需要计算 v 1 ⋅ L 12 ⋅ v 2 v_1 \cdot \mathcal L_{12} \cdot v_2 v1L12v2 v 3 ⋅ L 32 ⋅ v 2 v_3 \cdot \mathcal L_{32} \cdot v_2 v3L32v2 v 1 ⋅ L 13 ⋅ v 3 v_1 \cdot \mathcal L_{13} \cdot v_3 v1L13v3这三项即可。但实际上却加了9次
    ∑ i = 1 3 ∑ j = 1 3 v i ⋅ L i j ⋅ v j = ( v 1 , v 2 , v 3 ) ( L 11 = 0 , L 12 , L 13 L 21 , L 22 = 0 , L 23 L 31 , L 32 , L 33 = 0 ) ( v 1 v 2 v 3 ) \sum_{i=1}^3\sum_{j=1}^3 v_i \cdot \mathcal L_{ij} \cdot v_j = (v_1,v_2,v_3)\begin{pmatrix} \mathcal L_{11} = 0,\mathcal L_{12},\mathcal L_{13} \\ \mathcal L_{21},\mathcal L_{22} = 0,\mathcal L_{23} \\ \mathcal L_{31},\mathcal L_{32},\mathcal L_{33} = 0 \end{pmatrix}\begin{pmatrix} v_1 \\ v_2 \\ v_3 \end{pmatrix} i=13j=13viLijvj=(v1,v2,v3) L11=0,L12,L13L21,L22=0,L23L31,L32,L33=0 v1v2v3
    其中 L \mathcal L L本身是实对称矩阵,对角线上包含 3 3 3个零项;并且 L i j = L j i ( i , j ∈ { 1 , 2 , 3 } ; i ≠ j ) \mathcal L_{ij} = \mathcal L_{ji}(i,j \in \{1,2,3\};i\neq j) Lij=Lji(i,j{ 1,2,3};i=j),因而剩余 6 6 6项加重了三项,使用 1 2 \frac{1}{2} 21将多加的项去掉。
    E ( v , h ) = − [ ∑ i = 1 D ∑ j = 1 P v i ⋅ W i j ⋅ h j + 1 2
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静静的喝酒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值