Loading AI tools
来自维基百科,自由的百科全书
受限玻尔兹曼机(英语:restricted Boltzmann machine, RBM)是一种可通过输入数据集学习概率分布的随机生成神经网络。RBM最初由发明者保罗·斯模棱斯基于1986年命名为簧风琴(Harmonium)[1],但直到杰弗里·辛顿及其合作者在2000年代中叶发明快速学习算法后,受限玻兹曼机才变得知名。受限玻兹曼机在降维[2]、分类[3]、协同过滤[4]、特征学习[5]和主题建模[6]中得到了应用。根据任务的不同,受限玻兹曼机可以使用监督学习或无监督学习的方法进行训练。
正如名字所提示的那样,受限玻兹曼机是一种玻兹曼机的变体,但限定模型必须为二分图。模型中包含对应输入参数的输入(可见)单元和对应训练结果的隐单元,图中的每条边必须连接一个可见单元和一个隐单元。(与此相对,“无限制”玻兹曼机包含隐单元间的边,使之成为循环神经网络。)这一限定使得相比一般玻兹曼机更高效的训练算法成为可能,特别是基于梯度的对比分歧(contrastive divergence)算法[7]。
受限玻兹曼机也可被用于深度学习网络。具体地,深度信念网络可使用多个RBM堆叠而成,并可使用梯度下降法和反向传播算法进行调优[8]。
标准的受限玻尔兹曼机由二值(布尔/伯努利)隐层和可见层单元组成。权重矩阵中的每个元素指定了隐层单元和可见层单元之间边的权重。此外对于每个可见层单元有偏置,对每个隐层单元有偏置。在这些定义下,一种受限玻尔兹曼机配置(即给定每个单元取值)的“能量”(v,h)被定义为
或者用矩阵的形式表示如下:
这一能量函数的形式与霍普菲尔德神经网络相似。在一般的玻尔兹曼机中,隐层和可见层之间的联合概率分布由能量函数给出:[9]
其中,为配分函数,定义为在节点的所有可能取值下的和(亦即使得概率分布和为1的归一化常数)。类似地,可见层取值的边缘分布可通过对所有隐层配置求和得到:[9]
由于RBM为一个二分图,层内没有边相连,因而隐层是否激活在给定可见层节点取值的情况下是条件独立的。类似地,可见层节点的激活状态在给定隐层取值的情况下也条件独立[7]。亦即,对个可见层节点和个隐层节点,可见层的配置v对于隐层配置h的条件概率如下:
类似地,h对于v的条件概率为
其中,单个节点的激活概率为
其中代表逻辑函数。
受限玻尔兹曼机的训练目标是针对某一训练集,最大化概率的乘积。其中,被视为一矩阵,每个行向量作为一个可见单元向量:
训练受限玻尔兹曼机,即最优化权重矩阵,最常用的算法是杰弗里·辛顿提出的对比分歧(contrastive divergence,CD)算法。这一算法最早被用于训练辛顿提出的“专家积”模型[13]。这一算法在梯度下降的过程中使用吉布斯采样完成对权重的更新,与训练前馈神经网络中利用反向传播算法类似。
基本的针对一个样本的单步对比分歧(CD-1)步骤可被总结如下:
偏置a和b也可以使用类似的方法更新。
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.