DDPM(Denoising Diffusion Probabilistic Models)์ ๋นํํ ์ด์ญํ์ ์๋ฆฌ์์ ์๊ฐ์ ๋ฐ์ ์ค๊ณ๋ ์๋ก์ด ์์ฑ ๋ชจ๋ธ๋ก, ๋ฐ์ดํฐ์ ์ ์ง์ ์ผ๋ก ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ๋ forward process์ ์ด๋ฅผ ์ญ์ผ๋ก ์ ๊ฑฐํ๋ reverse process๋ฅผ ํตํด ๊ณ ํ์ง ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ ํ์ ์ ์ธ ์ ๊ทผ๋ฒ์ ์ ์ํ์๋ค.
๋ณธ ์ฐ๊ตฌ์ ํต์ฌ ๊ธฐ์ฌ๋ ํ์ฐ ํ๋ฅ ๋ชจ๋ธ(Diffusion Probabilistic Models)๊ณผ ๋์ฃผ๋ฑ ๋ค์ด๋๋ฏน์ค(Langevin dynamics) ๊ธฐ๋ฐ์ denoising score matching ๊ฐ์ ์๋ก์ด ์ด๋ก ์ ์ฐ๊ฒฐ๊ณ ๋ฆฌ๋ฅผ ๋ฐ๊ฒฌํ ๊ฒ์ด๋ค. ์ด๋ฅผ ํตํด ๊ฐ์ค ๋ณ๋ถ ๊ฒฝ๊ณ(weighted variational bound)๋ฅผ ํ์ต ๋ชฉํ๋ก ์ค์ ํ์ฌ, ๋ณต์กํ ์์ฑ ๋ฌธ์ ๋ฅผ ์๋ง์ ๋จ์ํ ๋ ธ์ด์ฆ ์ ๊ฑฐ ๋ฌธ์ ๋ก ๋ถํดํ์ฌ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ๋ก ์ ๊ตฌ์ถํ์๋ค.
Langevin Dynamics: ๋ฌผ ๋ถ์๋ค์ด ๊ฝ๊ฐ๋ฃจ๋ฅผ ๋ฌด์์๋ก ์ถฉ๋์ํด (๋ ธ์ด์ฆ) โ ์ค๋ ฅ์ด๋ ์ ์ฑ์ด ํน์ ๋ฐฉํฅ์ผ๋ก ๋์ด๋น๊น (๋ณต์๋ ฅ) ์ ๊ฐ์ด ๋ ธ์ด์ฆ ์ดํ์ ๋ณต์ ํ๋ ๋์ญํ. DDPM์์๋ ๊ฐ์ฐ์์ ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํ๊ณ ํ์ต๋ ๋ฐฉํฅ์ฑ์ ๋ฐ๋ผ ์ ์ง์ ์ผ๋ก ์๋ณธ ์ด๋ฏธ์ง๋ฅผ ๋ณต์ํ๋ ๋ฐฉ์์ผ๋ก ํ์ฉ
์คํ ๊ฒฐ๊ณผ, CIFAR-10 ๋ฐ์ดํฐ์ ์์ Inception Score 9.46๊ณผ FID 3.17์ด๋ผ๋ ๋น์ ์ต๊ณ ์์ค์ ์ฑ๋ฅ์ ๋ฌ์ฑํ์์ผ๋ฉฐ, 256ร256 LSUN ๋ฐ์ดํฐ์ ์์๋ ProgressiveGAN๊ณผ ๊ฒฌ์ค ๋งํ ํ์ง์ ์ํ์ ์์ฑํ์๋ค. ํนํ ๊ธฐ์กด GAN ๋ชจ๋ธ๋ค๊ณผ ๋ฌ๋ฆฌ ์ ๋์ ํ์ต ์์ด๋ ์์ ์ ์ธ ํ์ต์ด ๊ฐ๋ฅํ๋ฉฐ, ๋ชจ๋ ๋ถ๊ดด(mode collapse) ๋ฌธ์ ์์ ์์ ๋กญ๋ค๋ ์ฅ์ ์ ๋ณด์๋ค.
DDPM์ ์ดํดํ๊ธฐ ์ํด์๋ ๋จผ์ ํ์ฐ ํ๋ฅ ๋ชจ๋ธ(Diffusion Probabilistic Models)์ ๊ธฐ๋ณธ ๊ฐ๋ ์ ํ์ ํด์ผ ํ๋ค. ํ์ฐ ๋ชจ๋ธ์ foward process, reverse process ๋ ๊ฐ์ง ๊ณผ์ ์ผ๋ก ๊ตฌ์ฑ๋๋๋ฐ, ๋จผ์ ์๋ฐฉํฅ ๊ณผ์ ๊ณผ ์ฃผ๋ก ์ฌ์ฉํ๋ ๊ฐ๋ ์ธ markov chain ์ ๋ํด ์์๋ณด์.
๋ง๋ฅด์ฝํ ์ฒด์ธ(Markov Chain)์ DDPM์ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ์ด๋ฃจ๋ ํต์ฌ ๊ฐ๋ ์ด๋ค. ํ์ฌ ์ํ $x_t$๊ฐ ์ค์ง ๋ฐ๋ก ์ด์ ์ํ $x_{t-1}$์๋ง ์์กดํ๋ฉฐ, ๊ทธ ์ด์ ์ ๋ชจ๋ ๊ณผ๊ฑฐ ํ์คํ ๋ฆฌ๋ ๋ฌด์ํ๋ ๊ธฐ์ต ์์คํน์ฑ์ ๊ฐ๋๋ค.
์๋ฐฉํฅ ๊ณผ์ (Forward Process)์ ํ์ฐ ๋ชจ๋ธ์ ์ถ๋ฐ์ ์ด๋ค. ์ด๋ ํ์ฐ ๊ณผ์ (Diffusion Process)์ด๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋ฉฐ, ์๋ณธ ๋ฐ์ดํฐ $x_0$์์ ์์ํ์ฌ ์ ์ง์ ์ผ๋ก ๊ฐ์ฐ์์ ๋ ธ์ด์ฆ๋ฅผ ์ถ๊ฐํด ์์ ํ ๋ ธ์ด์ฆ $x_T$๊น์ง ๋๋ฌํ๋ ๊ณ ์ ๋ ๋ง๋ฅด์ฝํ ์ฒด์ธ์ด๋ค.
๋ณ์ | ์๋ฏธ | ์ค๋ช |
---|---|---|
$q$ | ์๋ฐฉํฅ ๋ถํฌ | ๊ณ ์ ๋, ํ์ต๋์ง ์๋ ๋ถํฌ |
$p$ | ์ญ๋ฐฉํฅ ๋ถํฌ | ํ์ต ๊ฐ๋ฅํ ๋ถํฌ |
$x_0$ | ์๋ณธ ๋ฐ์ดํฐ | ์์ ํ ์ด๋ฏธ์ง |
$x_t$ | ์์ t ๋ฐ์ดํฐ | ๋ ธ์ด์ฆ๊ฐ ์ถ๊ฐ๋ ์ด๋ฏธ์ง |
$T$ | ํ์ฐ ๋จ๊ณ ์ | ์ผ๋ฐ์ ์ผ๋ก 1000 |
$\beta_t$ | ๋ถ์ฐ ์ค์ผ์ค | ๋ ธ์ด์ฆ ์ถ๊ฐ ์ ๋ ์ ์ด |
$\mathcal{N}(x; \mu, \sigma^2)$ | ๊ฐ์ฐ์์ ๋ถํฌ | ํ๊ท $\mu$, ๋ถ์ฐ $\sigma^2$ |
์ญ๋ฐฉํฅ ๊ณผ์ (Reverse Process)์ ํ์ฐ ๋ชจ๋ธ์ ํต์ฌ์ด์ ์์ฑ ๊ณผ์ ์ด๋ค. ์ด๋ ๋๋ ธ์ด์ง ๊ณผ์ (Denoising Process)์ด๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋ฉฐ, ์์ ํ ๊ฐ์ฐ์์ ๋ ธ์ด์ฆ์์ ์์ํ์ฌ ์ ์ง์ ์ผ๋ก ๋ ธ์ด์ฆ๋ฅผ ์ ๊ฑฐํด ์๋ณธ ๋ฐ์ดํฐ๋ฅผ ๋ณต์ํ๋ ํ์ต ๊ฐ๋ฅํ ๋ง๋ฅด์ฝํ ์ฒด์ธ์ด๋ค.
Diffusion model์ $p_\theta(x_0) := \int p_\theta(x_{0:T}) dx_{1:T}$ ํํ์ latent variable model์ด๋ค.
๋ณ๋ถ ๊ฒฝ๊ณ(Variational Bound)๋ DDPM ํ์ต์ ํต์ฌ ๋ชฉํ ํจ์์ด๋ค. ์ง์ ๊ณ์ฐ์ด ๋ถ๊ฐ๋ฅํ ์์ ๋ก๊ทธ ์ฐ๋๋ฅผ ๋ณ๋ถ ์ถ๋ก ์ ํตํด ์ํ(upper bound)์ผ๋ก ๊ทผ์ฌํ์ฌ ์ต์ ํํ๋ค.
์์ (4)๋ DDPM์ ๊ฐ์ฅ ์ค์ํ ํ์ ์ด๋ค. ์ด ๊ณต์์ ํตํด ์๋ณธ ์ด๋ฏธ์ง $x_0$์์ ์ค๊ฐ ๋จ๊ณ ์์ด ๋ฐ๋ก ์์์ ์์ $t$๋ก ์ ํํ ์ ์๋ค. ๊ธฐ์กด ํ์ฐ ๋ชจ๋ธ๋ค์ด $x_0 โ x_1 โ ... โ x_t$ ์์ฐจ์ ์ผ๋ก ๊ฑฐ์ณ์ผ ํ๋ ๊ฒ๊ณผ ๋ฌ๋ฆฌ, ๋จ ํ ๋ฒ์ ๊ณ์ฐ์ผ๋ก ์ํ๋ ๋ ธ์ด์ฆ ๋ ๋ฒจ์ ๋๋ฌ ๊ฐ๋ฅํ๋ค.
๋งค๊ฐ๋ณ์ $\alpha_t := 1 - \beta_t$, $\bar{\alpha}_t := \prod_{s=1}^t \alpha_s$์ ๋ํ์ฌ, ๋ค์์ด ์ฑ๋ฆฝํ๋ค:
์ (5)๋ ๋ณ๋ถ ๊ฒฝ๊ณ $L$์ KL ๋ฐ์ฐ(Kullback-Leibler divergence)๋ค์ ํฉ์ผ๋ก ๋ถํดํ ํต์ฌ์ ์ธ ํํ์ด๋ค. ์ด ๋ถํด๋ฅผ ํตํด ๋ณต์กํ ์ต์ ํ ๋ฌธ์ ๋ฅผ ํด์ ๊ฐ๋ฅํ ์ฌ๋ฌ ๊ฐ์ ์์ ๋ฌธ์ ๋ค๋ก ๋๋์ด ํด๊ฒฐํ ์ ์๋ค.
ํญ | ์์ | ์๋ฏธ | ํน์ฑ |
---|---|---|---|
$L_T$ | $D_{KL}(q(x_T|x_0) \parallel p(x_T))$ | ์ต์ข ๋ ธ์ด์ฆ ๋งค์นญ | ํ์ต ๋ถ๊ฐ๋ฅ (๊ณ ์ ) |
$L_{t-1}$ | $D_{KL}(q(x_{t-1}|x_t, x_0) \parallel p_\theta(x_{t-1}|x_t))$ | ์ค๊ฐ ๋จ๊ณ ๋๋ ธ์ด์ง | ํ์ต ๊ฐ๋ฅ |
$L_0$ | $-\log p_\theta(x_0|x_1)$ | ์ต์ข ๋ณต์ ์ฐ๋ | ํ์ต ๊ฐ๋ฅ |
VAE ํญ | DDPM ํญ | ์ญํ | ์ค๋ช |
---|---|---|---|
Regularization | L_T (Regularization) | ์ ์ฌ ๊ณต๊ฐ ์ ๊ทํ | VAE: $q_{\phi}(z|x) \parallel p(z)$ DDPM: $q(x_T|x_0) \parallel p(x_T)$ |
Reconstruction | L_0 (Reconstruction) | ๋ฐ์ดํฐ ๋ณต์ | VAE: $-\mathbb{E}[\log p_{\theta}(x|z)]$ DDPM: $-\log p_\theta(x_0|x_1)$ |
N/A | Denoising ํญ | ๋ค๋จ๊ณ ๋๋ ธ์ด์ง | $\sum_{t>1} L_{t-1}$ (VAE์๋ ์๋ DDPM๋ง์ ๊ณ ์ ํ ํญ) |
DDPM์ VAE์ ๋จ์ผ ์ ์ฌ๋ณ์ $z$๋ฅผ ๋ค๋จ๊ณ ์ ์ฌ๋ณ์ ์ํ์ค $x_1, x_2, ..., x_T$๋ก ํ์ฅํ ๋ชจ๋ธ์ด๋ค.
DDPM์์๋ ์ด Regularization Error๊ฐ ์ฌ์ค์ ํ์ ์์ต๋๋ค. $T$๊ฐ ์ถฉ๋ถํ ํด ๋ $\bar{\alpha}_T \to 0$์ด๋ฏ๋ก $q(x_T|x_0) \approx \mathcal{N}(0, I) = p(x_T)$๊ฐ ๋์ด $L_T \approx 0$์ด ๋ฉ๋๋ค.
๋ ๊ฐ์ฐ์์ ๋ถํฌ ๊ฐ์ KL-Divergence๋ ๋ถ์ฐ ๋ถ๋ถ์ ์ฌ์ ์ ์๋ ๊ฐ์ผ๋ก ๊ณ ์ ํ๋ฉด, ๋ ํ๊ท ์ ๋ํ MSE ๋ฌธ์ ๋ก ๋จ์ํ๋ฉ๋๋ค:
์ฌ๊ธฐ์ ์ฌํ ๋ถํฌ์ ํ๊ท ์:
KL ๋ฐ์ฐ์ ๊ณ์ฐํ๊ธฐ ์ํด์๋ ์๋ฐฉํฅ ๊ณผ์ ์ ์ฌํ ๋ถํฌ(Posterior) $q(x_{t-1}|x_t, x_0)$๋ฅผ ๊ตฌํด์ผ ํ๋ค. ์ด๋ ๋๋๊ฒ๋ ํด์์ ์ผ๋ก ๊ณ์ฐ ๊ฐ๋ฅํ๋ฉฐ, ๊ฐ์ฐ์์ ๋ถํฌ๋ก ํํ๋๋ค:
์ฌ๊ธฐ์ ํ๊ท ๊ณผ ๋ถ์ฐ์:
๋ชจ๋ KL ๋ฐ์ฐ์ด ๊ฐ์ฐ์๊ฐ๋ค ๊ฐ์ ๋น๊ต์ด๋ฏ๋ก, ๋ชฌํ ์นด๋ฅผ๋ก ์ถ์ (Monte Carlo estimation) ๋์ ๋ซํ ํํ์ ํด์์(closed form expressions)์ผ๋ก ๊ณ์ฐํ ์ ์๋ค:
DDPM์ ํ์ฐ ๊ณผ์ ์ ํ์ ์ ์ธ ์ ๊ทผ๋ฒ์ ํตํด ์์ฑ ๋ชจ๋ธ๋ง ๋ถ์ผ์ ์๋ก์ด ํจ๋ฌ๋ค์์ ์ ์ํ๋ค. ๋ณ๋ถ ๊ฒฝ๊ณ๋ฅผ ํตํ ์์ ์ ์ธ ํ์ต, ์์ ์์ ์ํ๋ง์ ํจ์จ์ฑ, ๊ทธ๋ฆฌ๊ณ VAE์์ ๊ตฌ์กฐ์ ์ฐ๊ด์ฑ์ ํตํด ์ด๋ก ์ ๊ธฐ๋ฐ์ ํ๊ณ ํ ํ๋ค. ์ด๋ ํ์ฌ ์ต์ AI ์ด๋ฏธ์ง ์์ฑ ๋๊ตฌ๋ค์ ํต์ฌ ๊ธฐ์ ๋ก ์๋ฆฌ์ก๊ฒ ๋ ํ ๋๊ฐ ๋์๋ค.
์ด ๋ฌธ์๋ DDPM ๋ ผ๋ฌธ์ ํต์ฌ ๊ฐ๋ ๋ค์ ์ฒด๊ณ์ ์ผ๋ก ์ ๋ฆฌํ ๊ฒ์ ๋๋ค.