受限玻尔兹曼机

受限玻尔兹曼机

目录导航

结构

标准的受限玻尔兹曼机由二值(布尔/伯努利)隐层和可见层单元组成。权重矩阵中的每个元素指定了隐层单元和可见层单元之间边的权重。此外对于每个可见层单元有偏置,对每个隐层单元有偏置。在这些定义下,一种受限玻尔兹曼机配置(即给定每个单元取值)的“能量”(v,h)被定义为

或者用矩阵的形式表示如下:

这一能量函数的形式与霍普菲尔德神经网络相似。在一般的玻尔兹曼机中,隐层和可见层之间的联合概率分布由能量函数给出:

其中,为配分函数,定义为在节点的所有可能取值下的和(亦即使得概率分布和为1的归一化常数)。类似地,可见层取值的边缘分布可通过对所有隐层配置求和得到:

由于RBM为一个二分图,层内没有边相连,因而隐层是否激活在给定可见层节点取值的情况下是条件独立的。类似地,可见层节点的激活状态在给定隐层取值的情况下也条件独立。亦即,对个可见层节点和个隐层节点,可见层的配置v对于隐层配置h的条件概率如下:

.

类似地,h对于v的条件概率为

.

其中,单个节点的激活概率为

其中代表逻辑函数。

与其他模型的关系

受限玻尔兹曼机是玻尔兹曼机和马尔科夫随机场的一种特例。这些概率图模型可以对应到因子分析。

训练算法

受限玻尔兹曼机的训练目标是针对某一训练集,最大化概率的乘积。其中,被视为一矩阵,每个行向量作为一个可见单元向量

或者,等价地,最大化的对数概率期望:

训练受限玻尔兹曼机,即最优化权重矩阵,最常用的算法是杰弗里·辛顿提出的对比分歧(contrastive divergence,CD)算法。这一算法最早被用于训练辛顿提出的“专家积”模型。这一算法在梯度下降的过程中使用吉布斯采样完成对权重的更新,与训练前馈神经网络中利用反向传播算法类似。

基本的针对一个样本的单步对比分歧(CD-1)步骤可被总结如下:

  1. 1.取一个训练样本v,计算隐层节点的概率,在此基础上从这一概率分布中获取一个隐层节点激活向量的样本h;

    2.计算v和h的外积,称为“正梯度”;

    3.从h获取一个重构的可见层节点的激活向量样本v',此后从v'再次获得一个隐层节点的激活向量样本h';

    4.计算v'和h'的外积,称为“负梯度”;

    5.使用正梯度和负梯度的差以一定的学习率更新权重

偏置a和b也可以使用类似的方法更新。

相关百科
返回顶部
产品求购 求购