본문 바로가기

Diffusion

Denoising Diffusion Implicit Models

Denoising Diffusion Implicit Models : arxiv

 

Abstract

Denoising Diffusion Probabilistic Model(DDPM)은 high quality image generation에 성공했지만 sample을 만들려면 Markov chain이 필요하고 속도가 빠르지 않음. 따라서 sampling 속도를 acceleration을 위해 Denoising Diffusion Impolicit Modles(DDIM)을 제안함.

 

1. Introduction

DDPM은 T 시점의 white noise에서부터 Markoc chain을 통해 원본 이미지까지 Denoising process를 거쳐가며 sample을 만들어냄.

이 DDPM은 hight quality sample을 만들어 내기 위해 많은 iteration이 필요함

-> Generative Process (from noise to data) 과정이 thousand steps를 가진 Forward Process (from data to noise) 과정을 근사하기 때문 -> GAN보다 느림

 

DDPM과 GAN의 gap을 줄이고자 DDIM을 제안.

- Markovian to non-Markovian을 통해 small number of step을 가지며 sample efficiency 향상, minor cost

 

2. Background

DDPM에서의 $x_0$부터 $x_T$까지의 sampling procedure인 Forward Process는 아래와 같이 Markovian을 따름.

Forward Process in DDPM

반대로 intractable한 Reverse Process $q(x _{t−1}|x_t)$을 근사하는 Generative Process면서 $x_T$부터 $x_0$까지의 sampling하는 Markov chain $p_\theta(x_{0:T})$를 latent variable model이라 정의한다.

직관적으로 Forward Process는 관측치(원본) $x_0$에 noise를 더해가는 것이고 Generative Process는 denoising해가는 과정.

DDPM에서의 Forward Process는 아래와 같은 식을 만족하며

A special property of the forward process

 

따라서 $x_t$를 아래와 같이 표현할 수 있음.

$\alpha_T$를 0에 가깝게 설정할수록 $q(x _T|x_0)$는 모든 $x_0$에 대해 standard Gaussian으로 수렴하며 모든 conditionals가 mean function과 fixed variance로 학습이 가능하다면 Simplified해질 수 있음.

Simplified Loss

DDPM의 Forward Process에서 length T는 중요한 hyperparameter이지만 마지막 $x_0$을 얻기 위해 병렬이 아닌 sequential하게 진행하므로 속도가 느릴 수밖에 없으며 시간이 중요한 task에서는 비실용적일 수 있음.

 

3. Variational Infoerence for Non-Markovian Forward Processes

3.1 Non-Markovian Forward Processes

DDIM의 Forward Process는 아래와 같은  non-Markovian 식을 따르며

Forward Process in DDIM

Bayes' rule에 따라 아래와 같이 표현할 수 있음.

DDPM에서의 Forward Process와는 다르게 더 이상 Markovian을 따르지 않으며,  각 $x_t$ 는 $x_{t-1}$과 $x_0$에 의존하는 관계를 가짐. $\sigma$는 Forward Process가 얼마나 stochastic 한 지를 control하며, 0에 가까울수록 t 시점에서의 $x_t$와 원본 $x_0$을 알 수 있으며 두 값들에 의해 $x_{t-1}$의 값을 알 수 있게 됨. 

 

3.2 Generative Process and Unified variational Inference Objective

다음으로 Generative Process $p_\theta(x_{0:T})$를 정의하는데 직관적으로 noisy한 $x_t$가 주어졌을 때, 위에서 정의했던 대로 $q_\sigma(x_t|x_{t-1},x_0)$를 통해 $x_{t-1}$을 구하게 됨.

 

위에서 $x_t$를 구하는 식에서 model $\epsilon_{\theta}^{(t)} (x_t)$는 $x_t$로부터 $\epsilon_t$를 예측 ($x_0$에 대한 정보없이)하는데 저자의 제안으로 식을 다시 정리하면 아래와 같이 t step의 주어진 $x_t$를 통해 denoised observation $x_0$를 예측할 수 있음.

위의 식을 토대로 fixed prior $p_{\theta}^{(t)} = N(0, \textbf{I})$로 Generative Process를 정의할 수 있음.

Generative Process in DDIM

위 식을 보면 $x_0$가 $f_{\theta}^{(t)}$로 대체되었음을 알 수 있고, Generative Process가 모든 곳에서 지원이 가능하도록(?) t=1일 경우 약간의 Gaussian noise를 추가

 

또한 저자는 $\theta$를 optimize할 수 있도록 variational inference objective를 정의

매 $\sigma$를 선택할 때마다 각기 다른 모델들이 훈련되어야 하지만 $J_\sigma$는 특정 가중치 $\gamma$에서 $L_\gamma$에서 같다.

 

여기서 만약 $L_\gamma$의 $\gamma$가 1의 값을 갖는다면, $J_\sigma$의 해는 $L_1$의 해와 같다. 그러므로 model $\epsilon_\theta$의 parameter t에 걸쳐 공유되지 않는다면 DDPM에서 쓰였던 variational lower bound $L_1$은 optimal solution $J_\sigma$와 같고 surrogate objective로 사용될 수 있다.

 

4. Sampling from Generalized Generative Processes

만약 $L_1$을 objective로 두면, Markovian inference을 위한 Generative Process뿐만 아니라 저자가 얘기했던 $\sigma$에 의해 parameterized된 non-Markovian Forward Processes의 Generative Process도 학습할 수 있다고 한다.

그러므로 필수적으로 pretrained DDPM model을 사용하며 $\sigma$를 조금씩 바꿔가며 better sample을 producing하는 Generative Process를 찾는 것에 focus on을 한다.

 

4.1 Denoising Diffusion Implicit Models

위의 $p_\theta(x_{1:T})$에서, sample $x_0$로부터 $x_{t-1}$을 sampling하면 아래와 같다. 저자는 아래의 식에서 $\epsilon_t$를 $x_t$와 독립인 standard Gaussian noise로 정의하고, $\alpha_0 = 1$이라고 정의했다. 

서로 다른 $\sigma$의 값들은 다른 Generative Processes를 가지므로 같은 모델 $\epsilon_\theta$를 re-training할 필요가 없어진다. 모든 t에 대해

의 값을 가질 때, Forward Process는 Markovian이 되고, Generative Process는 DDPM이 된다.

 

하지만 만약 모든 t에 대해 $\sigma_t$가 0이라면, Forward Process는 t=1일 경우 제외하고 주어진 $x_{t-1}$과 $x_0$에 대해 deterministic하게 되며 Generative Process에서의 coefficient는 0이 된다.

결과 모델은 fixed procedure를 거치며 latent variables에서 sample이 생성되는 implicit probabilistic model이 된다 

저자는 이 결과 모델(DDPM objective로 학습된 implicit probabilistic model) 을 Denoising Diffusion Implicit Model(DDIM)이라고 정의를 했다.

 

4.2 Accelerated Generation Processes

이전 sections에서, Generative Process는 Reverse Process를 근사한다고 설명했다.

Forward Process가 T steps를 가진다면, Generative Process 또한 같은 T steps를 가진다. 하지만 Denoising objective $L_1$은 $q_\sigma(x_t|x_0)$이 고정되어있는 한, specific forward procedure에 의존하지 않는다. 따라서, T보다 더 적은 steps를 고려할 수 있다.

 

모든 latent variable $x_{1:T}$를 고려하지 않고 subset $x_{\tau_1}, ... , x_{\tau_S}$을 고려한다. 여기서 \tau는 1부터 T까지 증가하는 length S이다. T steps보다 작은 steps를 사용했을 때, 계산 효율성이 크게 증가했다.

이 말은 곧, 우리가 학습할 때 인위적인 number of steps로 학습시킬 수 있다는 것을 의미한다. 따라서 DDPM에서 제안했던 것보다 더 많은 steps를 고려할 수도 있고 continuous time variable에도 고려할 수 있지만We leave empirical investigations of this aspect as future work....

 

4.3 Relevance to neural ODEs

저자는 위의 $x_{t-1}$식에 따라 DDIM을 반복시킬수 있으며 이와 같은 일은 ordinary differential equations (ODEs)를 구하기 위한 Euler integration과 비슷해진다고 말한다.

DDPM과 달리 DDIM은 관측치 observation의 encoding을 얻을 수 있으며 model의 latent representations를 필요로 하는 downstream application에는 유용할 수 있다.

 

5. Experiments

각 dataset은 same trained model with T=1000이며 $\tau=1$로 설정했다.

$\eta=0$이면 DDIM, $\eta=1$이면 DDPM이며 Frechet Inception Distance (FID)로 측정하였다.

예상했던 대로, $\tau$를 증가시킬수록 sample quality가 높아지며 quality와 computational costs간의 trade off가 일어난다.

DDIM의 경우 $\tau$가 작을 때 best sample, DDPM은 worse sample quality를 보임.

표에서 확인할 수 있듯이, DDPM이 1000 steps에서 달성한 FID를 DDIM은 1000 steps 이전에 근사치까지 달성한다.

$\hat{\sigma}$은 S가 작을수록 더 나쁜 결과를 보이며, 짧은 steps엔 적합하지 않다는 것을 보여준다.

Figure 3.에서도 DDPM은 quality가 좋지 않으며 특히 $\hat{\sigma}$은 short steps에서 더 많은 noisy pertubations을 가지며 FID가 perturbations에 매우 민감하기 때문에 FID가 왜 다른 methods들보다 더 나쁜지를 알려준다.

 

 

Figure 4는 Sampling을 하기 위한 시간이 trajectory와 선형 비례한다는 것을 나타내며 DDIM이 20~100 steps에서 1000 steps와 유사한 quality를 만들 수 있으며 DDPM에 비해 10~50배 정도 더 빠른 속도이다. 물론 DDPM도 reasonable한 quality를 낼 수 있겠지만 DDIM은 much fewer steps로 high quality를 낼 수 있다. on CelebA, the FID score of the 100 step DDPM is similar to that of the 20 step DDIM.

 

5.3 Interpolation in Deterministic Generative Processes

저자는 DDIM이 GAN같은 Implicit Probabilistic Model에서 관측되는 것과 유사한 보간 효과를 내는지 관심이 있는데 확인 결과 그냥 보간이 잘 된다고 한다. Appendix D.5. 참고

 

5.4 Reconstruction from Latent Space

DDIM은 특정 ODE에 대한 Euler intergraion이며 $x_0$부터 $x_T$까지 encoding할 수 있는지 확인하였고 그 후 다시 $x_0$로 reconstruction도 가능하다고 한다.