贪婪逐层非监督算法

「深度置信网络」(Deep Belief Network,DBN)是深度学习中拥有深层架构的前馈神经网络,其中包含多个隐藏层。DBN 的每一层都是一个受限 Boltzmann 机,整个网络可视为由若干个 RBM 堆叠而成的深度网络

  • RBM 只有两层,显层和隐层。显层有 个可视节点和 个隐藏节点,其中每个可视节点只和 个隐藏节点相关,和其他可视节点是独立的。即可视节点的状态只与 个隐藏节点相关,对于每个隐藏节点也是只与 个可视节点相关,这个特点使得 RBM 的训练变得容易。注意这两层之间的对称双向连接。
  • RBM 网络有几个参数,一个是可视层与隐藏层之间的权重矩阵 ,一个是可视节点的偏移量 ,一个是隐含节点的偏移量 ,这几个参数决定了 RBM 网络将一个 维的样本编码成一个怎样的 维样本

使用 DBN 的障碍在于如何训练这样的深层网络。通常情况下,由于网络权值的随机初始化,基于梯度的优化容易陷入局部最小值。Hinton 等提出了一种新的贪婪逐层非监督算法来初始化基于受限玻尔兹曼机的 DBN 网络。这个算法提供了网络权值的初始化方法,随后可以使用基于梯度的算法如梯度下降法来微调网络权值

训练过程

先由显层得到隐层,再用隐层重构显层,再由重构的显层计算隐层,根据两次得到的隐层差异大小更新权重参数,循环往复。

最后,根据 的差异更新参数 ,从而完成单独无监督地训练一层 RBM 网络。

无监督逐层训练 DBN 网络的过程可以表示为

  1. 预训练:分别无单独无监督地训练每一层 RBM 网络
  2. 微调:在 DBN 的最后一层设置 BP 网络,有监督地训练试题关系分类器。然后利用反向传播算法,逐渐向下进行微调。