OpenAI研究 基于能量的模型的隐式生成和泛化方法
我们在 基于能量的模型 (EBM) 的稳定和可扩展训练方面取得了进展,从而获得了比现有模型更好的样本质量和泛化能力。EBM 中的生成花费更多的计算来不断完善其答案,这样做可以生成 在低温下 与GAN竞争的样本,同时还具有基于似然模型的模式覆盖保证。我们希望这些发现能激发对这一有前途的模型类别的进一步研究。
生成建模 是观察数据(例如图像或文本)并学习对底层数据分布进行建模的任务。完成这项任务可以让模型理解数据中的高级特征,并合成看起来像真实数据的示例。生成模型在自然语言、机器人和计算机视觉方面有很多应用。
基于能量的模型通过为每个输入数据点分配一个非标准化概率标量(或“能量”)来表示数据的概率分布。这提供了有用的建模灵活性——任何在给定输入的情况下输出实数的任意模型都可以用作能量模型。然而,困难在于从这些模型中抽样。
为了从 EBM 生成样本,我们使用基于 Langevin 动力学的迭代优化过程。非正式地,这涉及对能量函数执行噪声梯度下降以达到低能量配置(有关更多详细信息,请参阅论文)。与 GAN、 VAE和 基于流的模型不同,这种方法不需要显式神经网络来生成样本——样本是隐式生成的。EBM 和迭代优化的结合有以下好处:
- 自适应计算时间。我们可以长时间运行顺序细化以生成清晰、多样化的样本,或者运行短时间以生成粗糙、多样性较低的样本。在无限时间的限制下, 已知此过程可以 从能量模型中生成真实样本。
- 不受发电网络限制。在 VAE 和基于 Flow 的模型中,生成器必须学习从连续空间到包含不同数据模式的可能断开的空间的映射,这需要大容量并且可能无法学习。相比之下,在 EBM 中,可以很容易地学会在不相交的区域分配低能量。
- 内置组合性。由于每个模型都代表一个非归一化的概率分布,因此可以通过专家乘积或其他层次模型自然地组合模型 。
一代
我们发现基于能量的模型能够生成定性和定量的高质量图像,尤其是在测试时长时间运行优化过程时。通过对单个图像运行迭代优化,我们可以自动完成图像并将图像从一个类别(例如卡车)变形为另一个类别(例如青蛙)。
































条件 ImageNet 模型上的图像补全。我们的模型在修复方面表现出多样性。请注意,输入来自测试分布,而不是模型样本,表明测试数据的覆盖率。












条件模型上的跨类隐式抽样。该模型以特定类为条件,但使用来自单独类的图像进行初始化。
除了生成图像之外,我们发现基于能量的模型能够跨大量时间步生成稳定的机器人动力学轨迹。EBM 可以生成多种可能的未来,而前馈模型会崩溃为平均预测。




















从同一起始状态(第一帧)无条件生成的机器人手操作轨迹的自上而下视图。FC 网络预测一只不会移动的手,而 EBM 能够生成截然不同的可行轨迹。
概括
我们测试了基于能量的模型对几个不同的 分布外数据集进行分类 ,发现基于能量的模型优于其他似然模型,例如基于流的模型和自回归模型。我们还使用基于条件能量的模型测试了分类,发现由此产生的分类表现出对对抗性扰动的良好泛化。我们的模型——尽管从未接受过分类训练——比针对 对抗性扰动明确训练的模型更好地执行分类。
得到教训
我们发现了以下观察结果的证据,但我们无法确定这些观察结果是否正确:
- 我们发现很难将普通 HMC 应用于 EBM 训练,因为在训练期间最佳步长和越级模拟数量差异很大,尽管应用自适应 HMC 将是一个有趣的扩展。
- 我们发现训练能量函数的集合(对集合进行采样和评估)会有所帮助,但不值得增加复杂性。
- 我们没有发现添加梯度惩罚项有多大成功,因为它似乎会损害模型容量和采样。
本研究的更多提示、观察和失败可以在本文的第 A.8 节中找到 。
下一步
我们发现初步迹象表明,我们可以通过专家模型的产品组合多个基于能量的模型。我们在设定位置用不同尺寸的形状训练一个模型,在不同位置用相同尺寸的形状训练另一个模型。通过结合由此产生的基于能量的模型,我们能够在不同的位置生成不同大小的形状,尽管从未见过两者都被改变的例子。

能源A

能源B

能量 A + B