声明:译自A Beginner’s Guide to Restricted Boltzmann Machines (RBMs)
Definition & Structure
受限玻尔兹曼机(RBM)由深度学习先驱Geoffrey Hinton提出,可用于降维、分类、回归、协同过滤、特征提取和主题建模(topic modeling)。
RBM是一个浅层网络,包括输入层(input layer/visible layer)和隐藏层(hidden layer)。它的前向传递与常见的人工神经网络一致。
activation f((weight w * input x) + bias b ) = output a

前向传递中,输入为 x x x,输出为 a a a,权重为 w w w,偏执为 b b b。
Reconstruction
RBM是一种无监督学习方法,其反向传递继续使用当前的 ( w , b ) (w,b) (w,b)进行线性计算。

反向传递中,输入为 a a a,输出为 r r r,权重为 w w w,偏执为 b b b。此时的输出 r r r可以看做是重构输入(reconstructions), r r r与 x x x的差值作为误差。在模型训练开始时, ( w , b ) (w,b) (w,b)是随机初始化的,所以误差较大,随着训练次数的增多,误差慢慢减小。
RBM是一种生成学习方法,即学习输入数据的概率模型。可以把 x x x和 r r r都看做概率曲线 p ( x ) p(x) p(x)和 q ( x ) q(x) q(x),RBM的目标就是是这两条概率曲线重合。KL散度(Kullback Leibler Divergence)被用来描述两个概率分布的一致性,KL散度 D K L ( P ∥ Q ) D_{KL}(P\|Q) DKL(P∥Q)越小,两个分布越相似。

为了让两个分布相似,RBM需要不断的调整参数 ( w , b ) (w,b) (w,b)使 q ( x ) q(x) q(x)如上图所示进行移动。