[논문리뷰] Denoising Diffusion Probabilistic Models
Jonathan Ho, Ajay Jain, Pieter Abbeel
Abstract (초록)
확산 확률 모델(Denoising Diffusion Probabilistic Models, DDPM)을 이용한 고품질 이미지 생성 방법에 관환 논문이다. 이 모델은 비평형 열역학 개념에서 영감을 받아 설계된 잠재 변수 기반 생성 모델이다. 이 모델은 확산 모델과 denoising score matching, Langevin dynamics 사이의 수학적 연결을 기반으로 가중된 변분 바운드를 사용한 손실함수로 학습한다. 또한 이 모델은 점진적으로 정보를 복원하는 샘플링 과정인 손실 압축 과정을 가진다. 실험 결과는 확산 모델이 고품질 이미지 생성을 위한 강력한 도구가 될 수 있음을 보여준다.
Introduction (서론)
최근 딥 생성 모델(GANs, Autoregressive models 등)은 다양한 데이터 유형에서 고품질 샘플을 생성하는 데 성공하고 있다. 이 논문에서는 확산 모델(Diffusion Probabilistic Models)의 진전을 보여준다. 이 모델은 마르코프 체인 형태로 전방 과정(forward process)과 후방 과정(reverse process)의 흐름으로 진행된다.
① Forward Process(확산 과정): 데이터에 점진적으로 가우시안 노이즈를 추가하여 데이터를 파괴한다.
② Reverse Process(샘플링 과정): 이 노이즈를 제거하며 원래 데이터를 복원하는 방향으로 학습한다.
기존에는 확산 모델이 고품질 샘플 생성을 성공적으로 보여준 사례가 부족했다. 이 논문에서는 확산 모델이 고품질 이미지 생성이 수학적으로 가능함을 입증한다. 확산 모델은 로그 가능도 측면에서는 상대적으로 성능이 낮지만, 이미지의 미세한 부분까지 설명한다. Reverse Process(샘플링 과정)가 progressive decoding와 유사하기 때문이다. 비트 순서를 따라 autoregressive decoding과 유사하게 작동하지만, 기존의 모델보다 훨씬 유연하고 일반화된 방식으로 작동해 더욱 강력하다.
Background(배경)
ⓐ 확산 모델(Diffusion Model)
일종의 잠재 변수 생성 모델로, 다음과 같은 구조를 가진다.
x0은 원본 이미지, x1~xT는 점차 노이즈가 추가된 이미지다.
ⓑ Forward Process(확산 과정)
x0에서 xT로 갈수록 점점 더 흐려지고, 결국은 원래 정보가 거의 사라진 가우시안 노이즈가 된다. 다른 종류의 잠재 변수 모델들과 구별되는 과정으로, 마르코프 체인의 고정된 방식으로 가우시안 노이즈를 점진적으로 추가한다.
ⓒ Reverse Process(샘플링 과정)
노이즈 xT로부터 원래 이미지 x0을 복원하는 것이 목표다.
ⓓ Variational Inference(변분 추론)
모델을 학습시키기 위해 변분 바운드(ELBO)를 손실함수로 사용한다. 음의 로그 가능도 대신 위와 같은 식으로 최적화한다.
Diffusion Models and Denoising Autoencoders
확산 모델은 분산, 아키텍처, 파라미터화 방식 등 선택할 수 있는 요소가 많은 유연한 방식이다. 또한 denoising score matching과의 연결과 더 단순하고 효과적인 학습 손실 함수를 통해 단순하면서도 성능이 뛰어난 모델이다.
ⓐ Forward Process and LT
논문에서는 forward 과정의 분산을 고정값으로 설정했다. ELBO 손실 함수 중에서 이 부분은 상수라 무시해도 된다.
ⓑ Reverse Process and L1:T-1
평균 𝜇𝜃를 직접 예측할 수도 있지만 노이즈 ϵ를 예측하는 방식이 효율적이다. 노이즈 ϵ를 예측하는 방식이 단순할 뿐 아니라, denoising score matching이랑 수식적으로도 비슷해져 모델이 노이즈 제거를 얼마나 잘했는지 평가하는 기준이 된다. 이 방식은 Langevin dynamics로 샘플링하는 것과도 비슷하다.
ⓒ 데이터 스케일링, reverse process decoder, L0
이미지 데이터는 0~255 범위의 정수 값이다. 이를 -1~1 실수 범위로 선형 스케일링해서 사용한다. 그래서 확산 과정의 마지막 단계에서는, 독립적인 이산 디코더로 설정한다. 샘플링 과정의 마지막 단계에서는, x1으로부터 스케일을 되돌린 결과인 x1+1을 노이즈 없이 그대로 출력한다. 그러면 손실 없이 이미지 복원이 가능하다.
ⓓ 단순화된 학습 목표
변형된 변분 바운드를 사용해 학습하는 것이 복잡한 가중치 없이 빠르고 효과적으로 학습 가능하고, 샘플 품질 향상에 더 도움이 된다. 먼저 1부터 T까지 균등하게 샘플링된 값인 t값을 구한다. t에 따라 손실 가중치를 다르게 적용해 작은 t(노이즈가 작은 데이터)의 가중치를 줄였고, 반대로 큰 t(노이즈가 큰 데이터)의 가중치를 높였다. 더 어려운 디노이징 과제에 집중하는 것이다.

Experiments (실험)
하이퍼파라미터 설정은 T=1000, 분산은 0.0001~0.02까지 선형적으로 증가하는 상수로 설정한다. 모델 구조는 U-Net 기반 구조이다. 또한 그룹 정규화, self-attention 등을 사용한다.
ⓐ Sample quality
위의 표는 CIFAR-10 데이터셋에서의 Inception Score, FID Score, 음의 로그 가능도를 보여준다. unconditional(정보가 주어지지 않은 모델)에서 Ours는 FID 3.17을 기록하며, 다른 모델들보다 나은 샘플 품질을 달성했다. 단순화된 목적 함수로 학습했을 때(Lsimple) 샘플 품질이 가장 우수하다.
ⓑ Reverse process parameterization and training objective ablation
위의 표는 reverse process의 파라미터화 방식과 손실 함수가 샘플 품질에 미치는 영향을 보여준다. 평균 예측 방식은 변분 바운드로 학습했을 때에만 잘 작동한다. 후방 과정의 분산을 학습시키는 방식은 학습을 불안정하게 만들고, 샘플 품질도 더 나쁘게 만든다. 노이즈 예측을 고정된 분산 하에서 단순화된 손실 함수로 학습했을 때 가장 우수한 샘플 품질을 보여준다.
ⓒ Progressive coding
CIFAR-10 모델의 부호 길이를 확인하면, 확산 모델의 학습 세트와 테스트 세트 간의 차이는 최대 0.03 bits/dim이다. 확산 모델은 과적합이 안됐다는 것이다. 무손실 부호 길이에서는 타 모델에 비해 경쟁력이 떨어지는 편이다. 무손실 부호 길이는 대부분 사람이 인지할 수 없는 수준의 미세한 왜곡을 설명하는 데 쓰인다. 확산 모델은 적은 비트부터 시작해서 점점 더 많은 비트를 추가하면서 품질을 높여가는 점진적 압축기처럼 작동한다. 확산 모델이 초기에는 적은 비트로 큰 왜곡을 감소하는데 효과적이다. 후기로 갈수록 비트를 많이 써도 왜곡 감소는 적은 것이다.
ⓓ Interpolation
확산 모델은 잠재 공간에서 원본 이미지 사이를 보간할 수 있다. 확산 과정을 확률적 인코더(stochastic encoder)로 사용하여, 각 이미지를 선형 보간한다. 보간 이미지를 후방 과정을 통해 이미지 공간으로 복원하여 보간 이미지를 만든다. 후방 과정은 고품질의 복원 이미지를 생성했으며, 자세, 피부색, 헤어스타일, 표정, 배경 등 다양한 속성이 자연스럽게 변화하는 보간 이미지를 만들어냈다.
Conclusion (결론)
확산 모델은 고품질 이미지 샘플을 생성할 수 있는 모델이다. 변분 추론을 통한 마르코프 체인 학습, denoising score matching, annealed Langevin dynamics, autoregressive models, progressive lossy compression 등 확산 모델을 설명하는 이론적 배경도 제시한다. 확산 모델이 이미지 데이터에 대해 매우 뛰어난 귀납적 편향을 가지고 있다. 향후에는 이러한 모델이 modality나
다른 종류의 생성 모델, 머신러닝 시스템의 구성 요소로서도 유용할지 탐구할 계획이다.