受限玻尔兹曼机(RBM)+对比散度算法(CD-k)
- 主要内容:
- 受限玻尔兹曼机(RBM)基本原理
- 受限玻尔兹曼机(RBM)训练过程——对比散度算法(CD-k)
1. 受限玻尔兹曼机(RBM)基本原理
受限玻尔兹曼机(RBM)是一种典型的神经网络模型,由一层可视层
v
和一层隐藏层
图1 RBM模型
受限玻尔兹曼机是一种基于能量的模型,可视层神经元向量 v 和隐藏层神经元向量
联合似然为:
条件似然函数为:
隐藏层各神经元的条件概率为:
可视层各神经元的条件概率为:
若
b
,
接下来介绍如何对RBM进行训练得到参数
b
,
2. 受限玻尔兹曼机(RBM)训练过程——对比散度算法(CD-k)
学习RBM的任务是求出参数的值,来拟合给定的训练数据。Hinton[1]提出了RBM的一个快速学习算法,即对比散度(Contrastive Divergence,CD)。由于CD-k算法中(k表示采样次数),当k=1时,即只进行一步吉布斯采样,就能达到很好的拟合效果[2]。故一般采用CD-1算法的形式,来拟合各参数的值,如图2。
图2 CD-1
设可视层
RBM的对比散度算法主要步骤:根据训练集中样本点设置可视层神经元
对于初学者来讲,在训练RBM的过程中,并不了解如何根据样本点
xi=(xi,1,xi,2,...,xi,n)
(n为属性个数)来设置对应可视层
v
的状态,以及如何设置隐藏层神经元的状态。此处提供一种常用的方法,并做简要说明:
对于训练集
关于对比散度算法中,相关参数的设置,文献[3]给出了一些初步的方法,感兴趣的小童鞋,可以了解一下。
- 参考文献:
[1] Hinton G E. Training products of experts by minimizing contrastive divergence[J]. Neural Computation, 2002, 14(8):1771-1800.
[2] Bengio Y. Learning Deep Architectures for AI[J]. Foundations & Trends® in Machine Learning, 2009, 2(1):1-127.
[3] 张春霞, 姬楠楠, 王冠伟. 受限波尔兹曼机?[J]. 工程数学学报, 2015(2):159-173.