1.基础知识
要理解限制玻尔兹曼机,需要的基础知识为:
1.最大似然估计,这是我的上一篇博客。
2.玻尔兹曼分布(Boltzmann distribution)
Boltzmann分布是一个系统中各种状态时,粒子的概率分布,概率测量或频率分布:
F(state)∝e−EkT
∝ 是正比于符号, E 是状态能量,
热力学温度。
pi 表示状态 i 的可能性,
2.限制玻尔兹曼机 Restricted Boltzmann Machine (RBM)
限制波尔兹曼机 Restricted Boltzmann Machine (RBM)是深度学习中用于特征学习的,所以他的目标也是Wake-Sleep中先认知再生成,两者的误差最小。
所以它的目标便是得到一个权重使得,原输入和一次认知再生成后生成的数的误差最小。
在上图的结构中,下层是可视层(像素层),它的偏置用
b
表示,上层是隐藏层(特征描述),它的偏置单元用
RBM是一个层内节点互相独立,层间节点的联合概率分布满足Boltzmann分布的二部图模型。引入能量函数,
可视节点(Visible)和隐藏节点(Hidden)的联合概率分布为
p(v,h)=1Ze−E(v,h)
式中: Z=∑v,he−E(v,h) 是能量函数的指数函数的和。
然后,我们就可以得到
p(v)=∑he−E(v,h)∑v,he−E(v,h)
p(v|h)=e−E(v,h)∑ve−E(v,h)
同理,可知 p(h) , p(h|v)
这时,可以定义 ∏vp(v) 的似然函数为
L(θ)=1N∑n=1Nlogpθ(v(n))
N 为节点的个数,
(因为,我们知道 v 层的值,根据我上个博客的例子一,就相当于抽出的球的序列,而
这样,我们就可以求出
∂L(θ)∂Wij=EPdata[vjhi]−Epθ[vjhi]
其中获得模型期望比较困难,有兴趣的同学可以搜下 CDk(contrastive divergence) 方法。
以上就是限制玻尔兹曼机的大概内容了。