YOUR CLASSIFIER IS SECRETLY AN ENERGY BASED MODEL AND YOU SHOULD TREAT IT LIKE ONE
Your classifier is secretly an energy-based model and you should treat it like one.
我们重新定义了标准判别分类器p(y|x)为基于能量的联合分布模型p(x,y)。在此框架中,在线计算标准化的概率以及p(x)和p(y|x)的unnormalized values变得简便易行。通过采用标准判别架构,在未标注数据上进行训练成为可能。我们证明了基于能量的联合分布训练方法能够显著提升模型的校准、鲁棒性和分布外检测性能,并且能够生成质量与最新GAN方法相媲美的样本。我们对最近提出的扩展联合分布训练的技术进行了改进,并提出了一种相较于标准分类器 training方法仅增加微小计算开销的新方法。我们的创新方法在生成性和判别性学习方面均达到了当前最先进的水平。
1 INTRODUCTION
本文强调使用能量型模型(EBMs)来促进生成模型在判别任务中的潜力。尽管EBMs目前难以应用,在其他生成模型中相对而言更适合适应于一个判别框架,并有助于现代分类器体系结构的应用。图1展示了该架构概览。其中分类器的logits被重新解读以定义数据点与标签之间的联合密度以及单个数据点的概率密度。
本文的主要贡献可归纳为某一领域内的创新成果。具体而言:
1)本研究成功构建了一个创新且易于理解的标签与数据联合建模框架。
2)该模型在生成性和判别性建模方面均显著超越了现有最先进的混合模型。
3)研究表明,在校准、分布外检测以及对抗性鲁棒性的评估指标上,
基于生成式建模的方法显著提升了性能表现,并且其在多任务学习中的实际效果与传统手工定制的方法相媲美甚至略优。
2 ENERGY BASED MODELS
基于能量的方法(LeCun等人, 2006)依赖于观察到x\in\mathbb R^D的所有概率密度p(x),均能表示为

其中能量函数定义为映射E_{θ}(x):ℝ^D→ℝ。归一化常数Z(θ)被定义为\int_x exp(-E_θ(x))dx与变量x相关联,并被称为配分函数。由此可知,在构建能量势能时,我们能够灵活选择任何以$x作为输入且输出标量值的函数形式。
在大多数情况下,在无法准确计算或者不可靠地估算出Z(θ)的情况下(即难以计算且估算不精确),归一化密度的估计会面临挑战,并且参数θ的标准极大似然估计并非基于直接求解的方法(即不是基于直接求解的方式)。因此必须采用替代策略来训练EBM模型(即Energy-Based Models)。我们观察到,在单个样本x相对于θ时(即针对单个样本的情况),其对数似然函数关于θ的变化率可表示为

在模型分布上计算出该期望值。然而,在概率分布p(x)中直接抽样并非易事;因此必须借助马尔可夫链蒙特卡罗方法来实现这一目标。该方法用于训练早期的一些能量模型;例如,在Hinton(2002)的研究中指出,
限制性玻尔兹曼机通过采用块吉布斯采样器进行训练,
以模拟式(2)所定义的目标期望。
尽管长期以来这种方法几乎没有发展轨迹可循但近年来已有研究采用这种方法在高维数据上训练规模较大的能量泛函模型并通过深度神经网络对其进行参数化(Nijkamp等2019b a Du & Mordatch 2019 Xie等2016)。这些成功经验表明 在式(2)中我们通过Stochastic Gradient Langevin Dynamics(SGLD)方法来近似计算期望值 其中 在每一步迭代中我们从噪声扩展的正态分布中随机抽取样本

其中,在输入域上,默认p0(x)被认为是均匀分布;此外,在优化过程中,默认步长\alpha会被设计为按照多项式的规律逐步衰减。在实践中,默认情况下步长\alpha和\epsilon的标准差往往会采用不同的设定;这种差异化的配置可能导致采样过程出现偏差,并使模型能够更快地收敛于最优解。有关EBM训练采样器的进一步讨论,请参见附录H.1。
3 WHAT YOUR CLASSIFIER IS HIDING
在现代机器学习领域中,主要采用基于参数的分类方法来处理K类分类问题。具体而言,在输入空间\mathbb{R}^D到输出空间\mathbb{R}^K的映射关系下构建一个参数化的函数f_{\theta}。该函数将每个数据点\mathbb{x}\in \mathbb{R}^D映射至对应的logits值。这些logit值则被用来参数化一个Softmax传递函数模型以估计各类别概率分布模型:

[y]为索引。
我们在本研究的关键发现是,在生成器网络输出的logits基础上 marginally reinterpret这些值以推导数据分布模型。在保持生成器参数fθ不变的前提下,在不引入额外假设的情况下, 我们提出了一种基于能量机制的数据联合分布模型。


与传统的分类器不同,在传统的分类器架构中,在将logits f_{\theta}(x)进行平移操作时(即移动一个任意标量)并不会影响模型的行为。相比之下,在我们提出的框架体系中,则会因为对数据点x取对数的操作而导致log\ p_{\theta}(x)发生改变。因此我们能够通过嵌入在logits中的额外自由度来构建输入样本的概率密度函数及其与标签之间的联合概率分布。这种特性使得当我们在计算条件概率p_{\theta}(y|x)时(即通过式(5)除以式(6)从而消除归一化常数)得到了标准Softmax参数化的表达式(即式(4))。这种发现揭示了一个潜在的存在于传统判别模型中的生成模型特性:具体而言,在采用联合能量函数作为判别标准时传统分类器本质上被重新构想为了一个生成型模型。因此在此研究工作中我们将此方法命名为JEM(Joint Energy Model)。
4 OPTIMIZATION
基于我们对分类器体系结构的新见解,我们期望通过生成模型获得其优势,并在保持强大的判别性能的同时简化复杂性。因为我们的模型中p(y|x)被归一化处理,在计算上与传统分类器相似地达到了最大似然值。然而由于我们的p(x)和p(x,y)是非标准化的(unnormalized),因此最大化这些似然并非易事。为了实现这一目标我们可以设计多种优化策略来训练f_θ使其达到最大值。通过应用式2中的梯度估计器至式5所定义的概率分布的整体概率密度函数我们可以进一步提高数据拟合能力。此外利用公式6和4我们可以将公式6进行分解因式得到

当采用少量迭代次数进行MCMC采样时,在方程2中所得到的结果会出现系统性偏差。基于我们的研究目标是为了将EBM(能量 Based Model)纳入常规分类框架中,并且我们关注的是给定输入x下输出y的概率分布p(y|x)。基于此考虑,在实现高效训练的过程中,我们推荐采用等式8所示的方式进行因子化表示,并通过这种方法来提升该分布的质量和性能。
我们采用标准交叉熵损失函数来优化条件概率p(y|x), 并结合公式(2)采用SGLD算法来优化边缘概率\log p(x), 其中计算的梯度基于LogSumExp_y(f(x)[y])这一项。通过替代可能性因子可能导致显著的性能下降(如第5.1节所述)。
基于 Du 和 Mordatch 的研究(2019年),我们在估算等式 2 右侧的期望值时采用了 persistent contrastive divergence 方法(Tieleman, 2008)。由于与 Nijkamp 等人(2019b 年)相比,在每次迭代过程中初始化新的马尔可夫链时所花的时间较长;这种方法通过减少一个数量级的时间消耗来换取结果稳定性上的提升。为了达到上述目的,在估算过程中我们引入了一种改进型的方法;这种方法相较于传统的马尔可夫链 Monte Carlo 技术具有更高的收敛速度和更低的计算成本。这些权衡在附录 H.2 中讨论。
5 APPLICATIONS
H.1 IMPROPER SGLD
回想一下SGLD的transition kernel:

基于该采样器的有效公式(Welling&Teh, 2011)中
在实践中,我们采用运作有限步骤的采样器来模拟这些样本.当应用适当的比例时,达到足以提供信息的程度,梯度信号被噪声超越.通常情况下,采样器采用'松散'的方式处理步长和高斯噪声——后者通常会减少很多.
在最近的研究中
在我们的研究中,我们采用了步长α=2,ε∼N(0, 0.01²)。通过一系列实证分析,在各个数据集、领域以及不同架构下进行测试后发现,在不同的采样策略(如持久采样与短期采样)下表现稳定。基于以上观察和分析结果,我们认为这些参数能够为深度神经网络中的能量函数提供一个有效的初始化方案。
