能量视角

参考文献

Papers

  1. Implicit Generation and Modeling with Energy-Based Models

  2. Maximum Entropy Generators for Energy-Based Models

Blogs

  1. 能量视角下的GAN模型(三):生成模型=能量模型

  2. 能量视角下的GAN模型(二):GAN=“分析”+“采样”

  3. 能量视角下的GAN模型(一):GAN=“挖坑”+“跳坑”

从能量视角下的GAN开始

能量模型 (EBM) 的定义

能量模型 将数据样本 映射到一个标量“能量”值 ,它对应于数据的一个非归一化估计密度函数 的负对数,即: 其中, 是归一化常数:

最大似然估计的梯度推导

训练 EBM 的目标:最大化训练数据的对数似然 ,这等价于最小化负对数似然

现在,我们对参数 求梯度: 即:

用生成器 替换 MCMC 采样

基于能量模型 的训练目标通常需要从模型自身的复杂分布 中采样(即 ),由于 难以采样,由神经网络 参数化的近似分布 来替代 采样

所以训练目标变为:

其中:

生成器 的训练目标

为了让 接近 ,需要最小化它们之间的KL散度——

对于的优化目标而言,为常数,所以对于而言,损失可以优化为:

对于上述公式,我们发现,由于是难以计算的,所以也是难以计算的,我们需要对此进行优化

有关熵问题的处理

我们尝试通过显式的方式对此进行一定程度的分解:

由:

容易得到:

但在连续空间中, 函数难以直接处理,那么将 视为一个均值为 ,方差 趋于 的高斯分布:

同时定义互信息,其度量了随机变量 之间共享的信息量:

所以说,互信息可以分解为边际熵 和条件熵 的差:

条件熵定义为:

计算
  • 离散情况下, 只有 两种取值,当 时为 ,否则为 ;对于离散熵,定义 ,那么:

  • 连续情况下,考虑 ,利用 维高斯分布的微分熵公式:,那么:

  • 时,。因此,条件微分熵 趋向于

因此在这个问题中,可以把替换成

我们一般认为近似后验是一个高斯分布,那么:

所以:

所以说:

同时我们需要确保在进行优化时处于“能量局部最低点”:

MCMC方法与郎之万方程

MCMC 的基本概念

MCMC,马尔科夫链蒙特卡洛方法(Markov Chain Monte Carlo),当难以直接从目标分布 中采样时,用来间接获取样本的技术

核心思想是:构造一个特殊的随机过程,使得该随机过程的静态分布是目标分布

其中 是一个易于实现的随机过程(如二元分布、正态分布等)

从任意 出发,生成的序列 最终可被视为从目标分布 中采样出的一批样本

Langevin 方程:MCMC 的一个特例

Langevin方程:

时,该方程的静态分布正好是能量分布:

其中 是能量函数, 是归一化常数

直接对高维数据 进行 Langevin MCMC 采样存在困难:

  • 维度过大,可控性难以保证
  • 带来的高斯噪声会影响 的真实性

转移到对隐变量 进行 MCMC 采样

隐变量 的能量函数

的 Langevin MCMC 采样方程:

优势:

  • 维度问题解决: 的维度通常远小于 的维度。
  • 噪声问题解决: 本身就是噪声(隐变量),因此 带来的噪声不再是问题