

[초록]
확산 확률 모델 노이즈 제거
우리는 비평형 열역학의 고려 사항에서 영감을 받은 잠재 변수 모델의 한 종류인 확산 확률 모델을 사용하여 고품질 이미지 합성 결과를 제시합니다. 우리의 최상의 결과는 확산 확률 모델과 Langevin 역학과의 노이즈 제거 점수 매칭 사이의 새로운 연결에 따라 설계된 가중 변이 경계에 대한 훈련을 통해 얻어지며, 우리 모델은 자연스럽게 자기 회귀 디코딩의 일반화로 해석될 수 있는 점진적 손실 감압 체계를 허용합니다.
무조건 CIFAR10 데이터 세트에서 Inception 점수는 9.46이고 최첨단 FID 점수는 3.17입니다. 256x256 LSUN에서 ProgressiveGAN과 유사한 샘플 품질을 얻습니다.
우리의 구현은 이 https URL에서 사용할 수 있습니다.
https://doi.org/10.48550/arXiv.2006.11239
웹사이트: https://hojonathanho.github.io/diffusion
Jonathan Ho, Ajay Jain, Pieter Abbeel이 발표한 Denoising Diffusion Probabilistic Models (DDPM) 논문(2020)의 핵심 내용을 정리한 것입니다:
📚 논문 배경
- 비평형 열역학에서 영감을 받은 확률적 모델링 기법을 기반으로 함
- 기존의 생성 모델(GAN, VAE 등)이 가지는 불안정성, 모드 붕괴 등의 문제를 해결하고자 함
- Score Matching과 Langevin Dynamics의 연결 고리를 활용해 새로운 접근을 제안
- 모델은 완전히 노이즈화된 이미지에서 원본을 복원하는 과정을 학습에 활용
[ 비평형 열역학은 확산 확률 모델(Diffusion Probabilistic Models)의 핵심철학 ]
- 물리학의 확산 과정(diffusion process) 과 역확산(reverse diffusion) 개념을 차용해, 데이터를 생성하는 방식🔬 비평형 열역학이란?
시스템이 평형 상태에 있지 않을 때의 물리적 변화와 에너지 흐름을 다루는 분야예: 뜨거운 물이 식는 과정, 입자가 퍼지는 확산 과정 등🧠 확산 확률 모델이란?
이미지나 데이터를 생성하기 위해 노이즈를 점진적으로 제거하는 과정을 학습하는 모델이 과정은 비평형 상태에서 평형으로 돌아가는 물리적 확산 복원 과정과 유사함
🎯 목적
- 고품질 이미지 생성을 위한 새로운 확률적 생성 모델 제안
- Diffusion Process를 활용해 안정적이고 해석 가능한 이미지 생성 과정 구현
- 기존 모델 대비 샘플 품질 향상 및 학습 안정성 확보
🔬 연구 방법
| 구성요소 | 설명 |
|---|---|
| Forward Process | 원본 이미지에 점진적으로 Gaussian 노이즈를 추가해 완전히 파괴된 이미지로 변환 |
| Reverse Process | 파괴된 이미지에서 점진적으로 노이즈를 제거해 원본 이미지 복원 |
| Variational Inference | ELBO(증분 변분 경계)를 최적화하여 모델 학습 |
| Loss Function | 간단한 MSE 기반 손실 함수로 근사 |
| Parameterization | 노이즈 자체를 예측하는 방식으로 학습 (ε-prediction) |
| Sampling | Langevin Dynamics와 유사한 방식으로 샘플링 수행 |



주요 아이디어는 "데이터에 점진적으로 노이즈를 추가하고, 그 노이즈를 역방향으로 제거(denoising)하는 과정을 학습한다"는 데 있습니다.
- Forward Process(순방향 과정): 깨끗한 이미지에 수십~천 단계에 걸쳐 점진적으로 Gaussian 노이즈를 추가하여 점점 더 무작위적인 데이터로 변화시킵니다.
- Reverse Process(역방향 과정): 학습한 신경망(대부분 UNet)을 사용해 각 단계별로 노이즈를 조금씩 제거하며, 최종적으로 노이즈에서 이미지로 복원하게 만듭니다.
- 목표: GAN처럼 함수적 판별자 없이, 단순한 회귀 문제(노이즈 복원)로 생성적 학습을 달성합니다.
🛠 사용된 도구 및 기술
- U-Net 기반 네트워크: 이미지의 다양한 해상도에서 특징 추출 및 복원
- Sinusoidal Positional Embedding: 시간 정보를 네트워크에 전달
- Self-Attention: 장기 의존성 학습
- Beta Schedule: 시간 단계별 노이즈 강도 조절 (선형 증가)
- PyTorch 기반 구현: 공개된 코드로 재현 가능
- Unet: 이미지 노이즈 제거(denoising)에 최적화된 CNN 구조.
- GaussianDiffusion: forward/backward 노이즈 변환을 관리하는 모듈로, 샘플 생성 루프까지 내장.
- Trainer 클래스로 데이터 폴더 기반의 손쉬운 학습 자동화도 지원.
🧪 실험 결과
| 데이터셋 | 성능 지표 | 결과 |
| CIFAR-10 (Unconditional) | Inception Score | 9.46 |
| CIFAR-10 | FID Score | 3.17 (State-of-the-art) |
| LSUN 256×256 | 샘플 품질 | ProgressiveGAN과 유사한 수준 |
- DDPM은 고품질 이미지 생성과 함께 안정적인 학습을 달성
- 샘플링 과정은 Autoregressive Decoding의 일반화로 해석 가능
- 모델은 완전히 노이즈화된 이미지에서 원본을 복원하는 과정을 학습
이 논문은 이후 등장한 다양한 Diffusion 기반 모델들의 토대가 되었고, 현재는 텍스트-이미지 생성, 음성 합성, 영상 생성 등 다양한 분야로 확장되고 있습니다.
🧪 모델 구조 요약
| 작동 단계 | 설명 |
| Forward Process (q) | 원본 데이터에 점진적으로 Gaussian 노이즈를 추가해 완전히 파괴된 상태로 만듦 (비평형 상태로 이동) |
| Reverse Process (p) | 파괴된 상태에서 점진적으로 노이즈를 제거해 원본을 복원 (평형 상태로 회복) |
| 잠재 변수 모델 | 각 시간 단계 tt에서의 데이터 상태를 잠재 변수 xtx_t로 간주하여 확률적으로 모델링 |
📘 논문에서의 표현
Jonathan Ho 외 연구진은 DDPM 논문에서 다음과 같이 설명합니다:
“Diffusion probabilistic models, a class of latent variable models inspired by considerations from nonequilibrium thermodynamics…”
즉, 확산 확률 모델은 비평형 열역학의 확산-복원 메커니즘을 수학적으로 모델링하여, 이미지 생성에 응용한 것입니다.
심층 생성 모델(Deep Generative Models) 맥락에서:
최근 GANs, autoregressive models, flows, VAEs 등 다양한 심층 생성 모델들이 여러 데이터 양식에서 고품질 샘플을 생성하는 데 큰 발전을 이루었습니다.
에너지 기반 모델링(energy-based modeling)과 스코어 매칭(score matching) 분야에서도 GANs에 필적하는 이미지 생성 능력이 입증되었습니다 [11, 55].
이 논문은 이러한 발전의 흐름 속에서 Diffusion Models 또한 고품질 샘플 생성에 매우 효과적임을 보여주며, 기존 모델들과 차별화되는 새로운 관점과 성능을 제시합니다.
DDPM이 GANs, VAEs, Flows와 같은 다른 심층 생성 모델들과 비교
DDPM(Denoising Diffusion Probabilistic Models)은 최근 이미지 생성 분야에서 큰 주목을 받고 있는 모델로, GANs, VAEs, Flows와는 다른 방식으로 데이터를 생성합니다. 아래에 각 모델과 비교했을 때 DDPM의 핵심적인 장점과 한계를 정리
🌟 DDPM의 장점
- 샘플 품질이 매우 우수함
- CIFAR-10에서 FID 3.17, Inception Score 9.46을 기록하며 GAN 수준의 고품질 이미지를 생성.
- LSUN, CelebA-HQ 등 고해상도 데이터셋에서도 ProgressiveGAN과 유사한 품질의 샘플 생성 가능.
- 학습 안정성
- GAN과 달리 적대적 학습(adversarial training)을 사용하지 않기 때문에 모드 붕괴(mode collapse)나 불안정한 학습 문제가 적음.
- 확률적 모델링과 로그 우도 계산 가능
- VAE처럼 명시적인 확률 모델로서 로그 우도(log-likelihood)를 계산할 수 있어 평가가 더 정량적임.
- 압축 및 재구성 기능
- 손실 제어가 가능한 압축 및 재구성 기능을 제공하며, coarse-to-fine 방식의 이미지 인터폴레이션도 가능.
- 잠재 공간의 해석 가능성
- 잠재 변수들이 포즈, 안경 착용 여부 등 고수준 속성을 잘 표현함.
⚠️ DDPM의 한계
- 샘플링 속도
- 수백~수천 단계의 역확산(reverse diffusion) 과정을 거쳐야 하므로, GAN에 비해 샘플링 속도가 매우 느림.
- 복잡한 구현
- 마르코프 체인 기반의 확산 및 역확산 과정이 직관적이지 않아 구현과 튜닝이 까다로울 수 있음.
- 메모리 및 계산 자원 요구
- 고해상도 이미지 생성 시 많은 메모리와 계산 자원이 필요함.
🔍 다른 모델들과의 비교 요약
| 모델 | 샘플품질 | 학습 안정성 | 샘플링 속도 | 확률적 모델링 | 대표적 문제 |
| GAN | 매우 높음 | 낮음 (불안정) | 매우 빠름 | ❌ 없음 | 모드 붕괴, 불안정 |
| VAE | 중간 | 높음 | 빠름 | ✅ 있음 | 샘플 품질 낮음 |
| Flow | 중간 | 높음 | 빠름 | ✅ 있음 | 복잡한 구조 |
| DDPM | 매우 높음 | 높음 | 느림 | ✅ 있음 | 느린 샘플링 |
DDPM은 특히 샘플 품질과 안정성 면에서 강력하지만, 실시간 생성이 필요한 응용에는 아직 제약이 있습니다. 최근에는 이를 개선하기 위한 다양한 가속화 기법들도 활발히 연구되고 있답니다.
![]()
(예시1) 확산 확률 모델 노이즈 제거
https://hojonathanho.github.io/diffusion/
GitHub - hojonathanho/diffusion: Denoising Diffusion Probabilistic Models
실험은 Google Cloud TPU v3-8에서 실행됩니다. TensorFlow 1.15 및 Python 3.5 및 CPU 인스턴스에 대한 이러한 종속성이 필요합니다( 참조).requirements.txt
pip3 install fire
pip3 install scipy
pip3 install pillow
pip3 install tensorflow-probability==0.8
pip3 install tensorflow-gan==0.0.0.dev0
pip3 install tensorflow-datasets==2.1.0
훈련 및 평가 스크립트는 하위 디렉토리에 있습니다. 학습 및 평가를 실행하는 명령은 스크립트 맨 위에 있는 주석에 있습니다. 데이터는 GCS 버킷에 저장됩니다. 스크립트는 버킷 이름이 다음과 같은 형식이라고 가정하도록 작성되었습니다. 즉, 일부 접두사 뒤에 지역이 옵니다. 접두사는 플래그를 사용하여 스크립트에 전달되어야 합니다.
scripts/ gs://mybucketprefix-us-central1--bucket_name_prefix
(예시2) Pytorch에서 확산 확률 모델 노이즈 제거 (DDPM)
huggingface의 디퓨저 라이브러리에 사용되는 안정적인 확산 unet을 모방하는 DDPM 및 unet 아키텍처의 훈련 및 샘플링 방법으로 DDPM을 구현
GitHub -https://github.com/explainingai-code/DDPM-Pytorch?tab=readme-ov-file
'지식창고' 카테고리의 다른 글
| 조직과 사회의 지속가능성 - DEI(Diversity, Equity, and Inclusion)이론 (0) | 2025.09.04 |
|---|---|
| 차분 프라이버시 수학적 정의와 증명 (0) | 2025.09.03 |
| 생성형 AI 분석 기법 총정리, Kolmogorov–Smirnov Test, Jensen–Shannon Divergence, Wasserstein Distance, TSTR, Feature-wise Statistics Comparison (2) | 2025.08.27 |
| (논문) 합성 데이터 생성 모델을 위한 평가 프레임워크 (2024) (3) | 2025.08.26 |
| 이더리움 FOCIL 개념과 검증 제도 도입 (0) | 2025.08.24 |