原论文标题:Generative modeling by estimating gradients of the data distribution
这篇论文其实早于01-DDPM中的DDPM出世。
背景
现有问题
现有生成方法可分为两类,而它们的缺陷为1:
-
likelihood-based model:
- 包括:autoregressive models, normalizing flow models, energy-based models (EBMs), and variational auto-encoders (VAEs)
- 缺陷:要么需要对模型结构进行严格限制,以确保似然计算的归一化常数(normalizing constant)具有可操作性(tractable),要么必须依赖替代目标近似最大似然来训练。
-
Implicit generative models:
- 常见为GANs
- 缺陷:需要对抗训练,而对抗训练是出了名的不稳定,并可能导致模式崩溃
核心思想
关键思想是建模对数概率密度函数的梯度,这个量通常被称为(Stein score2)得分函数,基于得分的模型不需要有可处理的归一化常数,可以直接通过score matching进行学习。
方法
对于数据样本,假定它们相互独立且服从分布。给定数据样本集,生成模型的目标是构建模型拟合数据分布,当需要合成新数据的时候,从中采样。
为了构建这样的模型,第一步是需要表示数据分布,通常用概率密度函数(probability density function, PDF)来表示:
其中是由参数化的实值函数(其又被称为unnormalized probabilistic model, or energy-based model),是依赖于的归一化常量(normalizing constant),为了满足。
训练时,最大化似然:
likelihood-based model必须要么限制它们的模型架构(例如,自回归模型中的因果卷积,normalizing flow models中的可逆网络)以使 可处理,要么近似归一化常量(例如,VAEs 中的变分推断或MCMC 采样),这可能会计算成本高昂。
对于概率密度函数,其score function定义为:
为了估计这个得分函数,我们需要一个score-based model 来对其建模(去近似),以使(这里的score,全称为Stein score,这篇博客提到了和fisher score的区别。前者衡量的是对的梯度,而后者是对参数的梯度)。这样就没有处理的烦恼了。那么公式(1)可化为:
训练时,可通过最小化score-based model和数据分布的fisher divergence来优化参数:
Footnotes
-
The blog of Generative Modeling by Estimating Gradients of the Data Distribution ↩
-
Q. Liu, J. Lee, and M. Jordan. A kernelized stein discrepancy for goodness-of-fit tests. In International Conference on Machine Learning, pages 276–284, 2016. ↩