4

我读了一些关于受限玻尔兹曼机的文章。这些机器的重建能力已经过测试。我了解培训的工作原理,但不了解这种重建是如何完成的。任何人都可以给我一些提示吗?

4

4 回答 4

1

我认为您的意思是在自动编码器的上下文中用于调用输入的 RBM,就像关联记忆网络一样。

在学习阶段,输入单元和输出节点(单元)被限制在训练集中找到的值,之后重复玻尔兹曼采样(例如通过 Metropolis Hastings 和模拟退火的组合)结合使用梯度下降来优化输入、隐藏和输出节点之间所有连接的权重。训练后,受限玻尔兹曼网络可用于 1)分类/预测或 2)在自由运行模式下生成内存。

在分类/预测模式下,部分或全部输入单元被钳位,而隐藏节点和输出节点采用玻尔兹曼采样。输出节点的统计属性(本质上是平均值)是预测或分类。如果 RBM 的结构类似于单层自动编码器,具有类似于输出层的输入层和稀疏或更小的隐藏层,那么导致训练输入完全恢复的有限数量的输入将构成“重构”。

Hinton 2006 年的《科学》论文讨论了其中一些想法:

http://www.cs.toronto.edu/~hinton/science.pdf

不过,这篇论文是 RBM 和神经网络的一个相当具体的应用。在这篇论文中,他使用 RBM 来预训练一个深度(多层)神经网络。

于 2012-09-09T17:28:26.027 回答
1

Geoff Hinton 的演讲:

http://www.youtube.com/watch?v=AyzOUbkUf3M

于 2010-11-05T19:48:49.430 回答
1

受限玻尔兹曼机是可以为给定隐藏单元生成样本的生成模型。

对于重建,首先,输入数据被钳制到可见单元,并使用模型的权重计算隐藏状态。第二步,使用最近计算的隐藏状态计算可见单元。您在第二步中获得的可见状态是重建样本。

输入数据和重构样本的比较(元素比较等)给出了重构误差。

于 2018-07-31T14:00:16.583 回答
0

Hinton 的算法中,他们使用 RBM 进行预训练,使初始权重接近一个很好的解决方案,从而确保梯度下降的收敛。

在下一步中,展开初始网络(例如,[1000 500 100 2])给出自动编码器网络([1000 500 100 2 100 500 1000])。编码器([1000 500 100 2])和解码器([2 100 500 1000])部分最初使用相同的权重。

最后一个阶段是微调。它通过整个自动编码器([1000 500 100 2 100 500 1000])使用反向传播来微调权重(通过最小化作为输入与其重建之间的差异的误差)以获得最佳重建。自编码器的输出是输入的重构。

于 2013-03-20T17:16:53.590 回答