受限玻尔兹曼机如何工作?

机器算法验证 机器学习 无监督学习 深度学习 受限玻尔兹曼机
2022-03-17 05:52:22

我没有很强的数学背景,所以我有点难以理解 RBM 是如何工作的。在关于 RBM 的维基百科页面上,我能够孤立地理解这些公式,但是,我不确定这些公式是如何连接在一起的。

更具体地说,能量函数、概率函数和采样过程之间是否存在循环依赖性?在训练算法中,它声明将吉布斯采样与其他东西一起使用以构建/训练 W。但是,采样取决于 P,根据定义,P 取决于 E,而 E 取决于 W,所以在我的菜鸟眼中这是循环依赖。

有人可以用一个简短的例子来澄清我如何打破这个“循环”吗?

谢谢

http://en.wikipedia.org/wiki/Restricted_Boltzmann_machine

2个回答

虽然 OP 似乎不再对这个问题感兴趣(并且,基于个人资料信息,在Cross Validated中),但我决定添加一些额外的信息,这些信息与恕我直言相关,希望会有用为社区。

首先,我想分享一个关于深度学习的优秀教程,其中包含专门针对受限玻尔兹曼机 (RBM)的整个部分。本教程由LISA Lab团队(由 Youshua Bengio 指导)在线提供,并提供多种文档格式。RBM 部分可以在此处和教程相应PDF 版本的第 9 章中找到。代码示例以 Python 呈现,其中一些重点是支持 GPU 的深度学习库。说到软件R 包是一些 R 生态系统用于深度学习的包的示例:https ://github.com/zachmayer/rbmTheanorbm. 可在此处此处此处找到对用于机器学习的库和其他类型软件(包括深度学习和 RBM)的大量参考资料。

最后,从谈论软件回到文献和资源的主题,这个页面包含一个广泛的深度学习资源列表,一般来说,特别是 RBM。

  1. 首先深入研究这篇论文。

A. Fischer 和 C. Igel,“受限玻尔兹曼机简介”,模式识别、图像分析、计算机视觉和应用进展中,编辑:Springer,2012 年,第 14-36 页。

  1. 然后,您可以查看 Hinton 的 coursera 课程网站。你会明白的。

在 RBM 中,神经元状态是基于 p(v|h) 和 p(h|v) 随机决定的。这两个方程是从能量方程推导出来的。对于训练,应用最大似然(ML)近似方法。

为了避免使用 ML 方法进行训练的复杂性,采用梯度下降法。这将为我们提供学习规则。再次在这里,我们需要计算大量节点。于是 Gibbs 采样方法进入了现场。Gibbs采样也存在收敛问题。所以我们使用近似方法,即CD方法/PCD..etc