深度学习笔记_-_RBM.pdf


立即下载 文艺青年
2024-03-10
节点 样本 RBM 取值 隐藏 hj 编码 网络 可视 1|v
912.9 KB

深度学习读书笔记
三.限制波尔兹曼机
3.1 限制波尔兹曼机(RBM)使用方法
3.1.1 RBM 的使用说明
一个普通的 RBM 网络结构如下。
以上的 RBM 网络结构有 n 个可视节点和 m 个隐藏节点,其中每个可视节点只和 m 个
隐藏节点相关,和其他可视节点是独立的,就是这个可视节点的状态只受 m 个隐藏节点的
影响,对于每个隐藏节点也是,只受 n 个可视节点的影响,这个特点使得 RBM 的训练变得
容易了。
RBM 网络有几个参数,一个是可视层与隐藏层之间的权重矩阵??×?,一个是可视节点
的偏移量b = (b1, b2⋯bn),一个是隐藏节点的偏移量c = (c1, c2⋯cm),这几个参数决定了
RBM 网络将一个 n 维的样本编码成一个什么样的 m 维的样本。
RBM 网络的功能有下面的几种,就简单地先描述一下。
首先为了描述容易,先假设每个节点取值都在集合*0,1+中,即∀i, j, ?? ∈ *0,1+, ℎ? ∈ *0,1+。
一个训练样本?过来了取值为x = (x1, x2⋯xn),根据 RBM 网络,可以得到这个样本的
m 维的编码后的样本y = (y1, y2⋯ym),这 m 维的编码也可以认为是抽取了 m 个特征的样
本。而这个 m 维的编码后的样本是按照下面的规则生成的:对于给定的x = (x1, x2⋯xn),
隐藏节点的第 j 个特征的取值为 1 的概率为p(hj = 1|v) = σ(∑ ??? × vi??=1 + cj),其中的 v 取
值就是 x,hj 的取值就是 yj,也就是说,编码后的样本 y 的第 j 个位置的取值为 1 的概率是
p(hj = 1|v)。所以,生成 yj 的过程就是:
i)先利用公式p(hj = 1|v) = σ(∑ ??? × vi??=1 + cj),根据 x 的值计算概率p(hj = 1|v),其
中 vi 的取值就是 xi 的值。
ii)然后产生一个 0 到 1 之间的随机数,如果它小于p(hj = 1|v),yj 的取值就是 1,否则
就是 0。
反过来,现在知道了一个编码后的样本 y,想要知道原来的样本 x,即解码过程,跟上
面也是同理,过程如下:
i)先利用公


节点/样本/RBM/取值/隐藏/hj/编码/网络/可视/1|v/ 节点/样本/RBM/取值/隐藏/hj/编码/网络/可视/1|v/
-1 条回复
登录 后才能参与评论
-->