Generative Modeling by Estimating Gradients of the Data Distribution (Paper reading)
Yang Song, Stanford University, NeurIPS2019, Cited:498, Code, Paper
精简目录
简简介
Score-based model的开篇之作?扩散模型的理解点这里, 从VAE到Diffusion Moedl的理解。
1. 什么是分数Score和朴素分数模型。
1.1 Score
假设我们的数据集包含了来自未知分布 p d a t a ( x ) p_{data}(x) pdata(x)的独立同分布的样本 x i x_{i} xi,那么分数Score的定义就是概率密度函数 p ( x ) p(x) p(x)的对数似然的梯度 ▽ x l o g p ( x ) \bigtriangledown _{x}logp(x) ▽xlogp(x)。分数网络Score network就是训练一个神经网络用来估计真实分布 p d a t a ( x ) p_{data}(x) pdata(x)。基于分数的生成模型通常有两个成分:分数匹配和Langevin动力学。
1.2 Langevin动力学
Langevin动力学是一个采样算法,这个算法仅仅依赖于分数函数 ▽ x l o g p ( x ) \bigtriangledown _{x}logp(x) ▽xlogp(x)就可以从 p ( x ) p(x) p(x)中生成样本。具体算法如下,给定一个特点的步长 ϵ > 0 \epsilon>0 ϵ>0和一个初始值 x ~ ∼ π ( x ) \tilde{x} \sim \pi(x) x~∼π(x),这里 π \pi π指任意的先验分布(高斯分布等)。Langevin的方法可以写成迭代的形式:
x t ~ = x ~ t − 1 + ϵ 2 ▽ x l o g p ( x ~ t − 1 ) + ϵ z t (1) \tilde{x_{t}} =\tilde{x}_{t-1}+\frac{\epsilon}{2}\bigtriangledown_{x}logp(\tilde{x}_{t-1})+\sqrt{\epsilon}z_{t} \tag{1} xt~=x~t−1+2ϵ▽xlogp(x~t−1)+ϵzt(1)
其中 z t ∼ N ( 0 , I ) z_{t} \sim N(0,I) zt∼N(0,I),当 ϵ ⟶ 0 \epsilon \longrightarrow 0 ϵ⟶0时且 T ⟶ ∞ T \longrightarrow \infty T⟶∞时,我们可以认为 x ~ T \tilde{x}_{T} x~T的分布等于 p ( x ) p(x) p(x),也就是说当 ϵ \epsilon ϵ很小, T T T很大, x ~ T \tilde{x}_{T} x~T就是从 p ( x ) p(x) p(x)中生成的样本。我们可以从公式(1)中看到,整个Langevin算法仅仅依赖于上一步概率密度函数的分数 ▽ x l o g p ( x ~ t − 1 ) \bigtriangledown_{x}logp(\tilde{x}_{t-1}) ▽xlogp(x~t−1)。真实分布 p d a t a ( x ) p_{data}(x) pdata(x)我们无法获得,因此我们需要训练分数网络来近似 s θ ( x ) ≈ ▽ x l o g p d a t a ( x ~ ) s_{\theta}(x) \approx \bigtriangledown_{x}logp_{data}(\tilde{x}) sθ(x)≈▽xlogpdata(x~)并替换公式(1)中的分数。这就是基于分数生成模型的主要思想。
1.3 去噪分数匹配 Denoising Score Matching
首先对数据样本 x x x加上一个预先设定好的噪声分布 q σ ( x ~ ∣ x ) q_{\sigma}(\tilde{x}|x) qσ(x~∣x)(在 x x x上加上噪声强度为

本文介绍了一种基于估计数据分布梯度的生成模型方法,重点讲解了分数(Score)的概念、Langevin动力学原理及去噪分数匹配技术,并提出了Noise Conditional Score Networks (NCSN)模型,用于解决传统方法在低密度区域分数估计不准确的问题。
3053

被折叠的 条评论
为什么被折叠?



