Search

Introduction to Diffusion Models

Type
Resource
Language
๐Ÿ‡ฐ๐Ÿ‡ท
Latest checked date
2023/02/16
Status
Updating
1 more property

Introduction

๋†’์€ ํ•ด์ƒ๋„์™€ ๋‹ค์–‘์„ฑ์„ ์ง€๋‹Œ generative framework์ธ Diffusion model์— ๋Œ€ํ•ด ๋ถ„์„ํ•˜๊ณ  ์†Œ๊ฐœํ•˜๋Š” ํŽ˜์ด์ง€์ž…๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ Reference๋ฅผ ์ฐธ๊ณ ํ•˜์—ฌ ์ง์ ‘ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

Summary

โ€ข
Score based Generative Models (NCSN)
Random noise์—์„œ ์‹œ์ž‘ํ•ด score ๊ฐ’์„ ๋”ฐ๋ผ ๋†’์€ ํ™•๋ฅ ๊ฐ’์ด ์žˆ๋Š” ๊ณต๊ฐ„์—์„œ data๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ.
โ€ข
Diffusion Models (DDPM)
Noise๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ณผ์ •์„ ํ•™์Šตํ•ด random noise๋กœ๋ถ€ํ„ฐ data ์ƒ์„ฑ
โ€ข
Score-based Generative Modeling with SDEs
SDE๋ผ๋Š” framework์œผ๋กœ NCSN๊ณผ DDPM์„ ํ†ตํ•ฉํ•จ.

What is Diffusion?

โ€ข
Diffusion destroys structure!
โ€ข
์ตœ์ดˆ์˜ ์—ฐ๊ธฐ (smoke)๋Š” ์ ์ฐจ uniform ํ•˜๊ฒŒ ๋ถ„ํฌํ•  ๊ฒƒ์ด๋‹ค.
โ€ข
์ด๋ฅผ ์—ญ์œผ๋กœ ์ถ”๋ก ํ•ด๋ณด๋ฉด ์ตœ์ดˆ์˜ ์—ฐ๊ธฐ๋ฅผ ์•Œ ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ?
โ€ข
Physical intuition: ์งง์€ sequence ์•ˆ์—์„œ์˜ forward diffusion, reverse diffusion ๋ชจ๋‘ Gaussian ์ผ ์ˆ˜ ์žˆ๋‹ค.

Score-based Generative Models

โ€ข
Generative modeling by estimating gradients of the data distribution (Song et al. 2019)
โ€ข
๋ฐ์ดํ„ฐ๋Š” ๋ชจ์ง‘๋‹จ์—์„œ ์ƒ˜ํ”Œ๋ง๋œ๋‹ค.
โ€ข
์ƒ˜ํ”Œ๋ง๋œ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ ๋ถ„ํฌ์—์„œ ๋†’์€ ํ™•๋ฅ ๊ฐ’์„ ๊ฐ–๋Š” ๋ฐ์ดํ„ฐ์ž„. ๋‚ฎ์€ ํ™•๋ฅ ๊ฐ’์„ ๊ฐ–๋Š” ๋ฐ์ดํ„ฐ๋Š” noise ํ˜•ํƒœ์ผ ๊ฒƒ.
โ€ข
Generation overview
1.
๋ฐ์ดํ„ฐ ๊ณต๊ฐ„ ์ƒ์—์„œ ์ž„์˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ sampling โ†’ noise์ผ ํ™•๋ฅ ์ด ๋†’์Œ.
2.
์ด๋ฅผ Data์˜ probability density function p(x)p(x)์˜ gradient๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ probability๊ฐ€ ๋†’์•„์ง€๋Š” ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์—…๋ฐ์ดํŠธ
์—ฌ๊ธฐ์„œ ์ด ๊ธฐ์šธ๊ธฐ โˆ‡xlogโกp(x)\nabla_x \log p(x) ๊ฐ€ โ€œscoreโ€์— ํ•ด๋‹นํ•œ๋‹ค.
More about Score
์ฆ‰, ์ž…๋ ฅ data์™€ score์˜ dimension์ด ๋™์ผํ•จ.
โ€ข
Data์˜ ์ •ํ™•ํ•œ ๋ถ„ํฌ๋Š” ๋ชจ๋ฅด์ง€๋งŒ score๋งŒ ์•Œ๋ฉด data ์ƒ์„ฑ ๊ฐ€๋Šฅ.
โ—ฆ
Train ์‹œ์—๋Š” Score๋ฅผ ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ์ถ”์ • (Score matching)
โ—ฆ
Test ์‹œ์—๋Š” ์ถ”์ •๋œ score๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์ƒˆ๋กœ์šด data๋ฅผ sampling (Langevin dynamics)
โ€ข
Score matching
Data xx์— ๋Œ€ํ•ด score๋ฅผ ์˜ˆ์ธกํ•˜๋Š” model์ธ Score Network๋ฅผ ํ•™์Šต!
L=12Epdata(x)โˆฅโˆ‡xlogโกp(x)โˆ’sฮธ(x)โˆฅ22\mathcal{L} = \frac{1}{2}\mathbb{E}_{p_{\text{data}}(x)} \|\nabla_x \log p(x) - s_\theta(x)\|^2_2
๊ทธ๋Ÿฐ๋ฐ ground truth score ์ž์ฒด๊ฐ€ intractable
๋ฐฉ๋ฒ• 1. sฮธs_\theta์˜ Jacobian matrix๋ฅผ ์‚ฌ์šฉํ•ด pdata(x)p_{\text{data}}(x)์— ์˜์กดํ•˜์ง€ ์•Š๋Š” ํ˜•ํƒœ๋กœ ์œ ๋„ (Hyvรคrinen, 2005)
Epdata(x)[tr(โˆ‡xsฮธ(x))+12โˆฅsฮธ(x)โˆฅ22]\mathbb{E}_{p_{\text{data}}(x)} [tr(\nabla_x s_\theta(x)) + \frac{1}{2}\|s_\theta(x)\|^2_2]
์‹ค์ œ score๋ฅผ ์ถ”์ •ํ•  ์ˆ˜๋Š” ์žˆ์ง€๋งŒ, Jacobian์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด ํž˜๋“ค์–ด์„œ deep learning์ด๋‚˜ high-dimension data์— ํ™•์žฅํ•˜๊ธฐ ์–ด๋ ค์›€.
๋ฐฉ๋ฒ• 2. ์›๋ณธ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ score๋ฅผ ๊ณ„์‚ฐํ•˜์ง€ ๋ง๊ณ , ๋ฏธ๋ฆฌ ์ •์˜๋œ noise distribution qฯƒ(x~โˆฃx)q_\sigma(\tilde{x}|x)๋ฅผ ์ด์šฉํ•ด perturbed data distribution์— ๋Œ€ํ•œ score matching (Vincent, 2011)
12Eqฯƒ(x~โˆฃx)pdata(x)[โˆฅsฮธ(x~)โˆ’โˆ‡xlogโกqฯƒ(x~โˆฃx)โˆฅ22]\frac{1}{2} \mathbb{E}_{q_\sigma (\tilde{x}|x)p_{\text{data}}(x)} [\|s_\theta(\tilde{x}) - \nabla_x \log q_\sigma (\tilde{x} | x)\|^2_2]
์ฆ‰, data์˜ ์›๋ณธ distribution์— ๋Œ€ํ•œ density๋ฅผ ์ง์ ‘ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์€ intractable ํ•˜์ง€๋งŒ, ์‚ฌ์ „์— ๋ฏธ๋ฆฌ ์ •์˜ํ•œ perturbed data distribution์— ๋Œ€ํ•œ density๋Š” ๊ณ„์‚ฐ๊ฐ€๋Šฅํ•˜๊ณ , ์ด๋ฅผ ์‚ฌ์šฉํ•ด loss๋ฅผ ๊ณ„์‚ฐํ•จ.
sฮธโˆ—(x)=โˆ‡xlogโกqฯƒ(x)โ‰ˆโˆ‡xlogโกpdata(x)s_{\theta *}(x) = \nabla_x \log q_\sigma(x) \approx \nabla_x \log p_{\text{data}}(x)
โ€ข
noise๊ฐ€ ์ถฉ๋ถ„ํžˆ ์ž‘์œผ๋ฉด ์›๋ž˜ data์˜ score์™€ ๋น„์Šท
โ€ข
Langevin dynamics
โ—ฆ
Score network๊ฐ€ ์ž˜ ํ•™์Šต๋˜์—ˆ๋‹ค๋ฉด, ๋ชจ๋“  data ๊ณต๊ฐ„ ์ƒ์—์„œ score ๊ณ„์‚ฐ ๊ฐ€๋Šฅ.
โ—ฆ
์ž„์˜์˜ data (random noise)์—์„œ ์‹œ์ž‘ํ•˜์—ฌ ๊ทธ ์‹œ์ ์—์„œ ์ถ”์ •๋œ score๋ฅผ ์ด์šฉํ•ด data๋ฅผ update ํ•œ๋‹ค.
โ—ฆ
์ด๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉด ๋†’์€ probability๋ฅผ ๊ฐ€์ง„ ์ง€์—ญ์˜ data๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
x~t=x~tโˆ’1+ฯต2โˆ‡xlogโกp(x~tโˆ’1)+ฯตzt\tilde{x}_t = \tilde{x}_{t-1} + \frac{\epsilon}{2} \nabla_x \log p(\tilde{x}_{t-1}) + \sqrt{\epsilon} z_t
โ€ข
Problem in Low Density Regions (Inaccurate score estimation)
โ—ฆ
Data๋Š” high probability ์ง€์—ญ์—์„œ sampling ๋จ.
โ—ฆ
Low probability ์ง€์—ญ์—์„œ์˜ score์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ๋ณ„๋กœ ์—†์œผ๋ฏ€๋กœ ๋ถ€์ •ํ™•ํ•ด์ง„๋‹ค.
โ†’ NCSN ์ œ์•ˆ
โ€ข
Noise Conditional Score Networks
Data์— noise๋ฅผ ์ถ”๊ฐ€ํ•œ ๋’ค์— score๋ฅผ ์ถ”์ •
โ—ฆ
Input: Data (x~\tilde{x}) + Noise (ฯƒ\sigma)
โ—ฆ
Output: Score
โ—ฆ
์‚ฌ์ „์— ฯƒ2\sigma^2๋ฅผ ๋ฏธ๋ฆฌ ์ •ํ•ด์„œ ์‚ฌ์šฉํ•จ.
โ€ข
Annealed Langevin dynamics
โ—ฆ
Noise schedule: Noise ํฌ๊ธฐ๋ฅผ ๊ฐ์†Œ์‹œํ‚ค๋ฉฐ sampling ์ง„ํ–‰
โ—ฆ
Gradient ascent: T step๋งŒํผ data update

DDPM

โ€ข
MLE (Maximum Likelihood Estimation)
Likelihood=โˆpฮผ,ฯƒ(x)\text{Likelihood} = \prod p_{\mu, \sigma} (x)
๋ชจ๋“  parameter์— ๋Œ€ํ•ด ๊ณ„์‚ฐ์„ ํ•ด๋ณผ ์ˆ˜ ์—†์œผ๋ฏ€๋กœ, ๋ฏธ๋ถ„์„ ํ•ด์„œ ๊ฐ parameter์˜ MLE๋ฅผ ์•Œ์•„๋‚ด๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ .
โ€ข
VAE (Variational AutoEncoder)
์ง์ ‘ pฮธ(x)p_\theta(x)๋ฅผ ๊ณ„์‚ฐํ•˜๊ธฐ ์–ด๋ ค์šฐ๋ฏ€๋กœ, Latent variable (zz)๋กœ๋ถ€ํ„ฐ data xx๋ฅผ ์ƒ์„ฑ
pฮธ(zโˆฃx)p_\theta (z|x): True distribution
qฯ•(zโˆฃx)q_\phi (z|x): Model (Encoder)
DKL(qฯ•(zโˆฃx)โˆฅpฮธ(zโˆฃx))=logโกpฮธ(x)+DKL(qฯ•(zโˆฃx)โˆฅpฮธ(z))โˆ’Ezโˆผqฯ•(zโˆฃx)logโกpฮธ(zโˆฃx)D_{KL}(q_\phi(z|x) \| p_\theta(z|x)) = \log p_\theta(x) + D_{KL} (q_\phi(z|x) \| p_\theta(z)) - \mathbb{E}_{z \sim q_\phi (z|x)} \log p_\theta(z|x)
โ—ฆ
KL Divergence ์ตœ์†Œํ™”
โ—ฆ
Likelihood ์ตœ๋Œ€ํ™”
โ€ข
DDPM (Denoising Diffusion Probabilistic Models)
โ—ฆ
Forward process: Add noise
Data (x0x_0) + Noise โ‡’ Random noise (xTx_T)
โ—ฆ
Reverse process: De-noise
Random noise (xTx_T) + Noise โ‡’ Data (x0x_0)
โ—ฆ
๋ชฉ์ : reverse process๋ฅผ ํ•™์Šต
โ—ฆ
VAE vs DDPM
โ–ช
๋‘˜ ๋ชจ๋‘ latent variable model
โ–ช
VAE๋Š” latent variable ํ•˜๋‚˜๋ฅผ ์ด์šฉํ•ด์„œ data๋ฅผ reconstruction.
โ–ช
DDPM์€ Markov chain ์ „์ฒด๋ฅผ latent variable๋กœ ์‚ฌ์šฉ.
โ€ข
P(xn+1โˆฃxn)=P(xn+1โˆฃxn,xnโˆ’1,...,x0)P(x_{n+1} | x_n) = P(x_{n+1} | x_n, x_{n-1}, ..., x_0)
โ—ฆ
Loss
DDPM Loss ์œ ๋„
โ—ฆ
DDPM process
โ–ช
Forward process๊ฐ€ โ€œ์ž‘์€โ€ Gaussian noise๋ฅผ ์คฌ๋‹ค๋ฉด, reverse process๋„ Gaussian์ž„์ด ์ฆ๋ช…๋˜์–ด ์žˆ๋‹ค.
โ–ช
์‹ค์ œ reverse process๋Š” q(xtโˆ’1โˆฃxt,x0)q(x_{t-1} | x_t, x_0) ์ด๊ณ , model์€ pฮธ(xtโˆ’1,xt)p_\theta (x_{t-1}, x_{t})๋กœ ์ด ๋‘˜ ๊ฐ„์˜ KL divergenge๋ฅผ ์ตœ์†Œํ™”ํ•˜๋„๋ก ํ•™์Šต๋œ๋‹ค.
โ–ช
LTL_T: ์‚ฌ์ „์— ์ •์˜ํ•œ noise ๋ถ„ํฌ๋ž‘ ๋™์ผํ•˜๋„๋ก ํ•˜๋Š” loss term
โ–ช
L1โˆผTโˆ’1L_{1 \sim T-1}: Reverse process๋ฅผ model์ด ์ž˜ ํ•™์Šตํ•˜๋„๋ก ํ•˜๋Š” loss
โ–ช
L0L_0: ๋งˆ์ง€๋ง‰์œผ๋กœ x0x_0๋ฅผ ๋งŒ๋“ค๋„๋ก ํ•˜๋Š” loss
โ–ช
๊ฒฐ๊ตญ model ฮผฮธ(xtโˆ’1โˆฃxt)\mu_\theta(x_{t-1}| x_t)์ด ์ถ”์ •ํ•˜๋Š” ๊ฒƒ์€ Gaussian distribution์˜ ํ‰๊ท  ฮผ~(xt,x0)\tilde{\mu} (x_t, x_0).
โ€ข
Variance๋Š” Forward process์˜ ฮฒt\beta_t๋กœ๋ถ€ํ„ฐ ์œ ์ถ”๋˜๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ์Œ.
โ—ฆ
Training
โ–ช
tt ์‹œ์ ์—์„œ diffused data xtx_t๋ฅผ ์ƒ์„ฑํ•จ (noise๋ฅผ time step tt์— ํ•ด๋‹นํ•˜๋Š” ๋งŒํผ ๋”ํ•ด์คŒ)
โ–ช
Diffused data xtx_t์™€ time step tt๋ฅผ model์— ํ•จ๊ป˜ ๋„ฃ์–ด์ฃผ๊ณ , model์€ ๊ทธ random noise๋ฅผ prediction ํ•˜๋„๋ก ํ•™์Šต๋œ๋‹ค.
โ—ฆ
Testing
โ–ช
xTx_T (noise) ์—์„œ x0x_{0} ์ƒ์„ฑ
โ–ช
ํ•™์Šตํ•œ model์„ ์‚ฌ์šฉํ•ด ์–ผ๋งŒํผ์˜ noise๋ฅผ โ€œdenoiseโ€ ํ•ด์ฃผ์–ด์•ผํ•˜๋Š”์ง€ ์˜ˆ์ธกํ•˜๊ณ , ๊ทธ๋งŒํผ ๋”ํ•ด์„œ ์ ์  xtx_t์—์„œ x0x_0 ๋ฅผ ์ƒ์„ฑํ•ด๋ƒ„.
โ—ฆ
NCSN vs DDPM
โ–ช
NCSN๊ณผ DDPM์˜ training์€ objective function ์ž์ฒด๊ฐ€ ๋น„์Šทํ•œ ํ˜•์‹์„ ๋„๊ณ  ์žˆ์Œ.
โ–ช
Testing ์‹œ์—๋„ ์ƒ์„ฑํ•˜๋Š” ์‹์ด ์œ ์‚ฌํ•จ. ์ด์ „ ์‹œ์ ์˜ data (noisy data)์—์„œ denoise๋ฅผ ํ•ด๋‚ด๋Š” ๊ณผ์ •.

DDIM: TODO

Score-based Generative Models Through SDEs

โ€ข
ODE (์ƒ๋ฏธ๋ถ„๋ฐฉ์ •์‹) and SDE
โ—ฆ
ODE
โ–ช
ODE๋Š” ๋ฏธ๋ถ„ ๋ฐฉ์ •์‹์˜ ์ผ์ข…์œผ๋กœ, ๊ตฌํ•˜๋ ค๋Š” ํ•จ์ˆ˜๊ฐ€ ํ•˜๋‚˜์˜ ๋…๋ฆฝ ๋ณ€์ˆ˜๋งŒ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค.
โ—ฆ
SDE: ODE + Randomness
โ–ช
SDE๋Š” 1๊ฐœ ์ด์ƒ์˜ term์ด stochastic ํ•œ ๋ฏธ๋ถ„ ๋ฐฉ์ •์‹์ด๋‹ค.
โ–ช
General SDE๋Š” ์•„๋ž˜ ์‹์œผ๋กœ ํ‘œํ˜„๋œ๋‹ค.
dxt=f(t)xtdt+g(t)dฯ‰td\mathbf{x}_t = f(t)\mathbf{x}_t dt + g(t) d\omega_t
DDPM๊ณผ SDE์˜ ์—ฐ๊ฒฐ
โ—ฆ
SDE๋Š” NCSN, DDPM์˜ continuous ๋ฒ„์ „์ด๋‹ค.
โ–ช
Forward SDE: noise๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๊ณผ์ •
Forward SDE of DDPM
โ€ข
Drift term์ด ODE
โ€ข
Diffusion term์ด stochastic term
โ–ช
Reverse SDE: noise๋ฅผ ์ œ๊ฑฐํ•˜๋Š” ๊ณผ์ •
Reverse SDE of DDPM
โ€ข
1982๋…„์— ๋‚˜์˜จ ๋…ผ๋ฌธ์—์„œ reverse SDE๋ฅผ closed form์œผ๋กœ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋ณด์ž„.
โ€ข
Score function์„ ์–ด๋–ป๊ฒŒ ์–ป์–ด์•ผ ํ•˜๋Š”๊ฐ€๊ฐ€ SDE์˜ ํ•ต์‹ฌ์ด๋‹ค.
โ—ฆ
NCSM & DDPM
โ–ช
Forward SDE๋ฅผ ์–ด๋–ป๊ฒŒ ์ •์˜ํ•˜๋Š๋ƒ์— ๋”ฐ๋ผ NCSN, DDPM์ด ๋‚˜๋‰œ๋‹ค.
โ–ช
Time step์— ๋”ฐ๋ผ variance๊ฐ€ exploding ํ•˜๋Š” NCSN์€ VE-SDE, variance๊ฐ€ preserve ๋˜๋Š” DDPM์€ VP-SDE.
โ—ฆ
Training: Score network ํ•™์Šต aka Score Matching
โ–ช
Data ์ „์ฒด ๋ถ„ํฌ์— ๋Œ€ํ•œ score๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์€ intractable.
โ–ช
๋”ฐ๋ผ์„œ score function์„ ์ถ”์ •ํ•˜๋Š” โ€œscore estimatorโ€๋กœ์จ neural network sฮธ(xt,t)\mathbf{s}_\theta(\mathbf{x}_t, t)๋ฅผ ํ•™์Šต์‹œํ‚ค์ผœ์•ผ ํ•˜๊ณ , ์ด๋ฅผ โ€œScore matchingโ€ ์ด๋ผ๊ณ  ๋ถ€๋ฅธ๋‹ค.
โ–ช
Naรฏve ํ•˜๊ฒŒ๋Š” direct regression์œผ๋กœ ์ถ”์ •ํ•ด๋ณผ ์ˆ˜ ์žˆ์ง€๋งŒ, โˆ‡xtlogโกqt(xt)\nabla_{x_t} \log q_t(x_t)๊ฐ€ intractable ํ•˜๋ฏ€๋กœ ๋ชฉํ‘œ๋ฅผ ์•Œ ์ˆ˜ ์—†๋Š” ์ถ”์ •์ด๋ผ ํ’€ ์ˆ˜๊ฐ€ ์—†๋‹ค.
โ–ช
๋Œ€์‹ , ๊ฐ๊ฐ data point x0\mathbf{x}^0์— ๋Œ€ํ•œ ๊ณ„์‚ฐ์€ tractable ํ•˜๋‹ค.
โ–ช
๊ฒฐ๊ตญ ์ด๋ฅผ ํ’€์–ด๋ณด๋ฉด, neural network๋Š” time step tt์—์„œ ๊ฐ€ํ•ด์ง„ noise๋ฅผ ์˜ˆ์ธกํ•˜๋„๋ก ํ•™์Šต์ด ๋œ๋‹ค.
โ–ช
์ฆ‰, DDPM๊ณผ NCSM์€ SDE ์‹๋งŒ ๋‹ค๋ฅธ ๊ฒƒ์ด๊ณ  ๊ฒฐ๊ตญ SDE ํ˜•ํƒœ๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐœ๋…์ธ ๊ฒƒ์ด๋‹ค.
โ—ฆ
Testing: Reverse SDE๋ฅผ ํ‘ธ๋Š” ๊ฒƒ
โ€ข
Probability Flow ODE
DDPM์˜ ๊ฐœ๋…์—์„œ randomness๋ฅผ ์ œ๊ฑฐํ•œ ํ˜•ํƒœ์ธ DDIM์ด ์†Œ๊ฐœ๋˜์—ˆ๋Š”๋ฐ, SDE๋„ ๋น„์Šทํ•˜๊ฒŒ diffusion term์„ ์ œ๊ฑฐํ•œ ODE ํ˜•ํƒœ๋กœ randomness๋ฅผ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋‹ค.
SDE์˜ ๊ฒฝ์šฐ Gaussian noise๊ฐ€ ๊ณ„์† ๋”ํ•ด์ ธ์„œ ์ด๋ฆฌ์ €๋ฆฌ ์™”๋‹ค๊ฐ”๋‹ค ํ•˜๋Š” trajectory๋ฅผ ๋ณด์ด์ง€๋งŒ, ODE์˜ ๊ฒฝ์šฐ ์ง์ง„์„ฑ์ด ์žˆ๋Š” trajectory๋ฅผ ๋ณด์ธ๋‹ค.

Conditional Diffusion Models: TODO

Classifier-guided

Classifier-free

Reference

Tutorial