Deep Learning/Generative Model

Denoising Diffusion Probabilistic Models (DDPM)

나희와더기 2025. 5. 7. 18:25
반응형

이번 논문에서는 생성형 모델의 시초라고 할 수 있는 Ho. et al.의 2020년 연구인 "Denoising Diffusion Probabilistic Models"을 소개 하려고 합니다. 이 논문은 오늘날 매우 주목받고 있는 Diffusion 모델의 출발점 중 하나입니다. 기존의 GAN, VAE와는 다른 방식으로 이미지를 생성하며, 놀라운 이미지 품질을 보여줍니다. Stable Diffusion, DALL·E 2 같은 모델들의 기반이 되는 개념이 바로 이 논문에서 시작되었습니다.

 

GitHub - lucidrains/denoising-diffusion-pytorch: Implementation of Denoising Diffusion Probabilistic Model in Pytorch

Implementation of Denoising Diffusion Probabilistic Model in Pytorch - lucidrains/denoising-diffusion-pytorch

github.com


🎯 Diffusion 모델이란?

  • 아이디어 요약
    • 원래 이미지를 조금씩 노이즈 추가해서 점점 흐리게 만듭니다. (→ Forward process)
    • 흐릿해진 이미지에서 다시 원래 이미지를 복원하도록 학습합니다. (→ Reverse process)
    • 즉, "사진을 망가뜨리는 과정을 정의한 다음", 이 과정을 거꾸로 되돌리는 능력을 학습하는 것입니다.
  • 두 개의 과정
    • Forward Process ($q$): 깨끗한 이미지에 점점 노이즈를 추가 (확률적으로 정의된 정방향 마르코프 체인)
    • Reverse Process ($p_{\theta}$): 노이즈 이미지를 조금씩 깨끗하게 만들도록 신경망이 예측 (학습 대상)

 

🧠 수학 없이 이해하는 핵심 구조

단계 설명
1. 학습 이미지 선택 예: 고양이 사진 하나 선택
2. 노이즈 추가 반복적 랜덤 노이즈 추가해서 $x_0$ $x_1$ → $ \ldots$ → $x_T$
3. 복원 학습 $x_T$에서 $x_{T-1}$를 예측 → 반복하여 $x_0$ 복원하도록 학습
4. 새로운 샘플 생성 $x_T$를 랜덤 노이즈로 설정 한 후, 학습된 복원 과정을 따라 새로운 이미지 생성

 

💡 핵심 기술: 

  • ε-예측 (Noise Prediction)
    • 논문에서 제안된 가장 중요한 아이디어 중 하나는 노이즈 자체(ε)를 예측하도록 학습시키자!
    • 이 방식은 아래와 같은 장점이 있습니다:
      • 수학적으로 간단해집니다.
      • 실제 이미지 품질이 매우 좋아집니다.
      • 다른 모델들(GAN 등)보다 훈련 안정성이 높습니다.
    • 이 구조는 오늘날 많은 Diffusion 기반 모델들이 채택한 표준입니다.
  • 훈련 방식
    • 논문에서는 간단한 손실 함수를 사용해 효율적인 학습을 도입합니다:
      • $L_{\text{simple}}(\theta) = \mathbb{E}_{t, x_0, \epsilon} \left[ \left\| \epsilon - \epsilon_\theta\left( \sqrt{\bar{\alpha}_t} x_0 + \sqrt{1 - \bar{\alpha}_t} \epsilon, t \right) \right\|^2 \right]$
    • 여기서 각 기호는 다음을 의미합니다:
      • $x_0$: 원본 이미지
      • $\epsilon \sim \mathcal{N}(0, I)$: 표준 정규분포에서 샘플링한 노이즈
      • $t \sim \text{Uniform}(\{1, \ldots, T\})$: 시간 단계
      • $\bar{\alpha}_t = \prod_{s=1}^{t} \alpha_s = \prod_{s=1}^{t} (1 - \beta_s)$: 누적 감쇠 계수
      • $\epsilon_\theta(x_t, t)$: 입력 $x_t$ 에 대해 노이즈를 예측하는 신경망
    • 즉, 신경망이 "어떤 노이즈가 섞였는지"를 예측하도록 학습합니다. $x_t$는 $x_0$에 노이즈가 $t$단계 섞인 이미지이고, $ε$은 실제 노이즈입니다.

📊 성능 평가

  • CIFAR-10 이미지 생성 기준:
    • Inception Score (IS): 9.46 (당시 최고 수준)
    • FID Score: 3.17 (낮을수록 좋음 → 매우 우수한 품질)
    • 특히, GAN 모델들이 안정성 문제를 겪는 반면, DDPM은 안정적 훈련이 가능합니다.

 

 

✅ 결론 및 요약

항목 요약
핵심 아이디어 데이터를 점점 흐리게 만들고, 그 반대 과정을 학습
주요 기여 ε-예측 기반 reverse process / 간단한 손실 함수
성능 이미지 품질 매우 우수 (GAN보다 나은 경우도 있음)
영향력 다양한 현대 생성 모델의 기반이 된 중요한 연구
  • 이 논문 이후로 Diffusion 기반 생성 모델은 다음과 같은 진화를 겪습니다:
    • Latent Diffusion (속도 개선)
    • Conditional Diffusion (텍스트-이미지 변환 등)
    • Video, Audio 등 다양한 분야로 확장

📝 마무리

  • 이 논문은 단순하지만 강력한 아이디어로 시작해, 오늘날의 고품질 이미지 생성 모델의 문을 열었습니다. 앞으로 다른 확장된 Diffusion 모델 논문들(Stable Diffusion, Latent Diffusion 등)도 함께 리뷰해 보도록 하겠습니다.
반응형