자연계에서는 그림 1과 같이 초기에는 특정 분포에 따라 존재하던 입자가 최종적으로 균일하게 분포하는 확산 (diffusion) 현상이 발생한다. Diffusion model은 이러한 자연계의 확산 과정을 기반으로 고안된 생성형 머신러닝 방법론이다 [1].

Diffusion model은 기본적으로 그림 2와 같이 forward process와 reverse process로 구성된다. Forward process는 원본 데이터

Denoising diffusion probabilistic model (DDPM) [2]은 forward process와 reverse process를 확률 과정으로 정의하였으며, diffusion model의 동작을 이해하는데 기초가 되는 방법론이다. 이 글에서는 DDPM의 구조와 DDPM을 유도하기 위한 수학적 과정에 대해 소개한다.
Forward process의 목적은 원본 데이터
일반적으로 foward process를 구성하는 각 확률분포
Reverse process의 목적은 최종 noise
위의 Reverse process에 대해 process의 시작점인 noise
그 다음, 각 확률분포를 식
위의 식에서
DDPM의 목적은 reverse process를 통해 새로운 데이터를 생성하는 것이기 때문에 DDPM은 아래와 같이 확률분포
대부분의 문제에서 DDPM의 목적 함수를 바로 계산하는 것은 불가능하기 때문에 아래의 과정을 통해 목적 함수의 하계 (lower bound)를 구하고, 하계를 최대화함으로써 DDPM의 학습을 진행한다.
DDPM의 모델링에 해당하는 식
식
기댓값의 정의와 DDPM의 Markov 속성을 이용하면
Kullback–Leibler divergence
따라서, DDPM의 매개변수
DDPM 학습의 목적 함수인 식
- Reconstruction term: 주어진 데이터
에 대해 를 생성하고, 다시 을 이용하여 를 생성함으로써 계산할 수 있다. 이는 variational autoencoder (VAE)의 동작과 유사하며, 이러한 해석을 바탕으로 첫 번째 항을 reconstruction term으로 간주할 수 있다. - Prior matching term: forward process의 최종 출력에 대한 분포
와 식 에서 가정한 의 사전 분포의 차이를 의미한다. 그러나 두 번째 항에는 학습 가능한 매개변수가 없기 때문에 DDPM의 학습 과정에서는 상수로 취급된다. - Denoising matching term: 노이즈를 제거해나가는 과정
를 학습한다. 는 최종적으로 노이즈가 제거된 데이터 가 주어졌을 때의 노이즈 제거 과정을 의미하기 때문에 는 를 학습시키기 위한 ground truth 정보로 볼 수 있다.
복잡한 과정을 거쳐 DDPM의 목적 함수인 식
먼저 Markov 가정에 의해
위의 식에서
[1] Sohl-Dickstein, J., Weiss, E., Maheswaranathan, N., & Ganguli, S. (2015, June). Deep unsupervised learning using nonequilibrium thermodynamics. In International conference on machine learning (pp. 2256-2265). pmlr.
'머신러닝 > 확률모델' 카테고리의 다른 글
편향-분산 트레이드오프 (Bias-Variance Tradeoff)와 L2 규제 (L2 Regularization) (5) | 2024.01.15 |
---|---|
Unbiased and Biased Estimators의 개념과 머신러닝 (1) | 2024.01.11 |
몬테카를로 방법 (Monte Carlo Method)과 베이지안 머신러닝 (3) | 2024.01.07 |
[머신러닝] 가우시안 혼합 모델 (Gaussian Mixture Model, GMM)과 EM 알고리즘 (21) | 2023.12.29 |
Reparameterization Trick에 대한 수학적 이해와 기댓값의 미분가능성 (2) | 2023.12.21 |