RBM算法理解.pdf
文本预览下载声明
阅读须知
这份笔记参考了很多网上的资源,也加入很多自己的理解和详细推导,非常适合初学者
使用,这篇笔记属于复合型产物,感谢那些网上无私奉献自己心得的人们。欢迎大家进行批
评指正by ZengRui
RBM 算法理解
RBM 的简单模型
h
这里先描述一下最简单的RBM 模型,只有2 层, 和 分别代表的是可见层(visible )
v
和隐层 (hidden),数据的输入是从可见层进行输入的,然后通过计算可以得出隐层的值。
简单 RBM 模型的参数描述如下,可见层与隐层的之间的权值是W ,注意到图中h
nm
有 n 个节点, 有 m 节点,单个节点用 和 描述,因为是简单 RBM 模型,所以
v v h
j i
i, j ,v 0,1 ,h 0,1注意这里 0,1 是一个集合,这个集合只有 2 个元素,也就是说
j i
只能取0 或者1 ,还有2 个参数是 和 ,这2 个参数可以参考神经网络里面的bias,它们
c b
都是列向量,每个分量都对应着每个节点的单独偏置量。一个训练样本假设是
X x ,x , x ,每个分量对应着visible 层的一个节点,也就是visible 层有 个节点,
1 2 m m
他通过visible 层输入进去,经过一系列运算得到一个向量Y y , y , , y ,这组值同理
1 2 n
也是与hidden 层的每个节点一一对应的。可以理解为RBM 模型将一个维度为 的向量(即
m
一个样本有m 个特征)映射到一个维度为 的向量(一个样本具有n 个特征)。
n
值的生成规则如下:
1. 如上面所示有 和 2 个 向量,通过输入向量和参数 W , 计算
X Y b
m
p h 1|v sigmoid w v c ,这个式子计算的是 的值为1 的概率,
i ij j i hi
j 1
v
i 可以是任意的一个隐层节点, 即为visible 的输入,即 ,上面的式子算出了隐
X
j
层节点为1 的概率,那么这个隐层节点到底是取1 还是0 呢,下面告诉你。
2.
显示全部