2.9. 神经网络模型(无监督)#

2.9.1. 受限玻尔兹曼机#

限制Boltzmann机(RBM)是基于概率模型的无监督非线性特征学习器。当将RBM或RBM层次结构提取的特征输入线性分类器(例如线性支持者或感知器)时,通常会给出良好的结果。

该模型对输入的分布做出了假设。目前,scikit-learn仅提供 BernoulliRBM ,它假设输入是二进制值或0到1之间的值,每个输入都对特定功能打开的概率进行编码。

RBM试图使用特定的图形模型最大化数据的可能性。使用的参数学习算法 (Stochastic Maximum Likelihood )防止表示远离输入数据,这使得它们捕获有趣的数据集,但使模型对小数据集不太有用,而且通常对密度估计也不太有用。

该方法在使用独立RBM的权重初始化深度神经网络方面得到了普及。这种方法被称为无监督预训练。

../_images/sphx_glr_plot_rbm_logistic_classification_001.png

示例

2.9.1.1. 图形模型和参数化#

RBM的图形模型是一个全连接的二部图。

../_images/rbm_graph.png

这些节点是随机变量,其状态取决于它们所连接的其他节点的状态。因此,该模型通过连接的权重以及每个可见和隐藏单元的一个截取(偏差)项进行参数化,为了简单起见,从图像中省略了。

能量函数衡量联合作业的质量:

\[E(\mathbf{v}, \mathbf{h}) = -\sum_i \sum_j w_{ij}v_ih_j - \sum_i b_iv_i - \sum_j c_jh_j\]

在上面的公式中, \(\mathbf{b}\)\(\mathbf{c}\) 分别是可见层和隐藏层的截取载体。模型的联合概率根据能量定义:

\[P(\mathbf{v}, \mathbf{h}) = \frac{e^{-E(\mathbf{v}, \mathbf{h})}}{Z}\]

这个词 restricted 指的是模型的二分结构,它禁止隐藏单元之间或可见单元之间的直接交互。这意味着假设以下条件独立性:

\[\begin{split}h_i \bot h_j | \mathbf{v} \\ v_i \bot v_j | \mathbf{h}\end{split}\]

二部结构允许使用高效的块Gibbs采样进行推理。

2.9.1.2. 限制伯努利玻尔兹曼机#

BernoulliRBM ,所有单位都是二元随机单位。这意味着输入数据应该是二进制的,或者是0和1之间的实值,这意味着可见单元打开或关闭的可能性。这是字符识别的一个很好的模型,其中的兴趣在于哪些像素是活动的,哪些不是。对于自然场景的图像,由于背景、深度和邻近像素取相同值的倾向,它不再适合。

每个单元的条件概率分布由其接收的输入的逻辑Sigmoid激活函数给出:

\[\begin{split}P(v_i=1|\mathbf{h}) = \sigma(\sum_j w_{ij}h_j + b_i) \\ P(h_i=1|\mathbf{v}) = \sigma(\sum_i w_{ij}v_i + c_j)\end{split}\]

哪里 \(\sigma\) 是逻辑Sigmoid函数:

\[\西格玛(x)= \fRAC{1}{1 + e^{-x}}\]

2.9.1.3. 随机最大似然学习#

中实现的训练算法 BernoulliRBM 被称为随机最大似然度(SML)或持续对比分歧(PD)。由于数据可能性的形式,直接优化最大可能性是不可行的:

\[\log P(v) = \log \sum_h e^{-E(v, h)} - \log \sum_{x, y} e^{-E(x, y)}\]

为了简单起见,上面的方程是针对单个训练示例编写的。相对于权重的梯度由与上述项相对应的两项构成。由于它们各自的符号,它们通常被称为正梯度和负梯度。 在此实现中,在小批量样本上估计梯度。

在最大化log似然时,正梯度使模型更喜欢与观察到的训练数据兼容的隐藏状态。由于RBM的二部结构,可以有效地计算。然而,负梯度是棘手的。它的目标是降低模型偏好的联合状态的能量,从而使其保持真实性。它可以通过马尔科夫链蒙特卡罗来逼近,使用块Gibbs采样,通过迭代采样每个 \(v\)\(h\) 给予另一个,直到链条混合。以这种方式生成的样本有时被称为幻想粒子。这是低效的,并且很难确定马尔科夫链是否混合。

对比分歧方法建议在少量迭代后停止链, \(k\) ,通常甚至1.该方法速度快、方差小,但样本与模型分布相距较远。

持续的对比分歧解决了这个问题。我们不是在每次需要梯度时启动新链,并且只执行一个Gibbs采样步骤,而是在PDC中保留了许多更新的链(幻想粒子) \(k\) 每次体重更新后,吉布斯都会采取步骤。这使得粒子能够更彻底地探索太空。

引用

  • "A fast learning algorithm for deep belief nets" <https://www.cs.toronto.edu/~hinton/absps/fastnc.pdf> _,G。辛顿,S.奥辛德罗,Y.- W. Teh,2006

  • "Training Restricted Boltzmann Machines using Approximations to the Likelihood Gradient" <https://www.cs.toronto.edu/~tijmen/pcd/pcd.pdf> _,T.蒂勒曼,2008年