受限玻尔兹曼机(RBM)是一种双层神经网络,是一种用于降维,分类,回归,协同过滤,特征学习和主题建模的算法。RBM两层之间的神经元完全连接,但同一层的神经元之间互不相连,这就是受限玻尔兹曼机名称中“受限”一词的来源。
它可以对二元向量(例如图像)的集合进行建模,模型中随机的二进制像素通过对称的加权连接连接到随机的二进制特征检测器(feature detectors)。像素对应于RBM的“可见”单位,因为它们的状态是可以被观察到的; 特征检测器对应于“隐藏”单元。可见单元v和隐藏单元h的能量函数E(v,h)可以表示为:
其中v_{i}和h_{j}是像素i和特征j的二进制状态,b_{i}和b_{j}是对应的偏置(bias),w_{ij}是权重。神经网络通过这个能量函数为每个可能的输出图像分配一个概率。
给定训练图像,每个特征检测器j的二进制状态h_{j}有σ(bj +Σiviwij)的概率被设置为1,其中σ(x)是逻辑函数1 / [1 + exp(-x)],b_{j}是j的偏置,v_{i}是像素i的状态,w_{ij}是i和j之间的权重。一旦为隐藏单元选择了二进制状态(0或1),再根据公式p(v_{i}|h)=σ(b_{i} +\sum_{j}h_{j}w_{ij})更新隐藏单元的状态。
RBM的结构如下图所示:
[图片来源:A Beginner’s Tutorial for Restricted Boltzmann Machines]
[描述来源:Hinton, G. E.; Salakhutdinov, R. R. (2006). Reducing the Dimensionality of Data with Neural Networks. Science. 313 (5786): 504–507. ]
发展历史
RBM最初应当是在1986年由Paul Smolensky以Harmonium的名义发明的,在Hinton和Salakhutdinov在2006提出了RBM的快速学习算法之后,RBM得到了突出的发展。
2008年Hugo Larochelle和Yoshua Bengio认为RBM为非线性分类器提供了一个独立的框架,他们展示了如何在半监督环境下成功地应用RBM。2011年Andrew Ng等学者将RBM应用于无监督特征学习(feature learning),其算法实现简单,并在CIFAR-10和NORB数据集取得了当时最高的准确性(分别为79.6%和97.2%)。
A | B | C | |
1 | 年份 | 事件 | 相关论文/Reference |
2 | 1986 | Paul Smolensky以Harmonium的名义发明了RBM | Smolensky, P. (1986).Chapter 6: Information Processing in Dynamical Systems: Foundations of Harmony Theory. In Rumelhart, David E.; McLelland, James L.Parallel Distributed Processing: Explorations in the Microstructure of Cognition, Volume 1: Foundations. MIT Press. pp. 194–281. |
3 | 2006 | Hinton和Salakhutdinov提出了RBM的快速学习算法 | Hinton, G. E.; Salakhutdinov, R. R. (2006).Reducing the Dimensionality of Data with Neural Networks.Science. 313 (5786): 504–507. |
4 | 2008 | Hugo Larochelle和Yoshua Bengio将RBM用于分类任务 | Larochelle, H.; Bengio, Y. (2008). Classification using discriminative restricted Boltzmann machines. Proceedings of the 25th international conference on Machine learning - ICML '08. p. 536. |
5 | 2011 | Andrew Ng等学者将RBM应用于无监督特征学习(feature learning) | Coates, A.; Lee, H.; Ng, A. Y. (2011). An analysis of single-layer networks in unsupervised feature learning. International Conference on Artificial Intelligence and Statistics (AISTATS). |
发展分析
瓶颈
由于RBM的常用算法Contrastive Divergence算法需要从蒙特卡洛马尔可夫链中抽样,RBM训练很困难;另外,从RBM的能量函数很难计算对数似然(log likelihood)。
未来发展方向
受限玻尔兹曼机是一个生成模型,使用隐变量来描述输入数据的分布,具有能够处理缺失/不规则数据的优点;另外,受限玻尔兹曼机也是一个无监督模型,不需要数据的标签信息,这在目前的研究中是一个优势。