【问题标题】:Generating data from restricted Boltzmann machine从受限玻尔兹曼机生成数据
【发布时间】:2021-03-03 04:08:21
【问题描述】:

我的理解是,要在 RBM 中生成新数据,我需要传入真实数据。 有没有办法在没有真实数据的情况下获取生成的数据?就像 VAE 和 GAN 如何从先验分布中采样潜在变量以生成数据。

如果是这样,对于像 MNIST 这样的标记数据集,我如何从特定类生成数据?我需要为每个数字训练 10 个不同的 RBM 模型吗?

【问题讨论】:

    标签: machine-learning generative-adversarial-network rbm


    【解决方案1】:

    我的理解是,要在 RBM 中生成新数据,我需要传入真实数据。有没有办法在没有真实数据的情况下获取生成的数据?就像 VAE 和 GAN 如何从先验分布中采样潜在变量以生成数据。

    是的,当然。这实际上是在训练的消极阶段发生的过程。您正在从联合分布中进行抽样,因此让网络“梦想”它所接受的训练。 我想这取决于您的实现,但我已经能够通过将输入初始化为零并运行吉布斯采样进行几次迭代来做到这一点。结果,正如我所解释的那样,我应该在可见节点中看到“看起来像数字的东西”,而不一定是数据集中的数字。

    这是一个我喜欢的示例,在 MNIST 上进行了训练,并且在没有任何节点钳制的情况下进行了采样:

    关于你的第二个问题:

    如果是这样,对于像 MNIST 这样的标记数据集,我如何从特定类生成数据?我需要为每个数字训练 10 个不同的 RBM 模型吗?

    使用标签数据时,您可以将标签用作额外的可见节点。 查看"Training Restricted Boltzmann Machines: An Introduction" 图2。

    另外,对于这两种情况,我认为使用其他逐渐降低采样温度的采样技术(例如模拟退火)会给您带来更好的结果。

    【讨论】:

      猜你喜欢
      • 2017-01-26
      • 1970-01-01
      • 1970-01-01
      • 2014-02-04
      • 1970-01-01
      • 2013-12-31
      • 2015-12-21
      • 2016-08-17
      • 2012-12-13
      相关资源
      最近更新 更多