데이터에 점진적으로 노이즈(noise)를 추가했다가, 그 노이즈를 단계적으로 제거하면서 원본 데이터를 복원하도록 학습하는 생성 모델
완전히 무작위한 노이즈에서 시작해, 조금씩 노이즈를 제거하면 결국 실제 데이터가 된다는 내용이다.
Diffusion 모델은 두 개의 과정으로 구성된다.
실제 이미지에 여러 단계에 걸쳐 점점 더 많은 노이즈를 추가한다.
최종적으로 거의 완전한 가우시안 노이즈가 된다.
원본 이미지를 조금씩 망가뜨려서 마지막에는 아무 의미 없는 노이즈로 만드는 것이다.
신경망은 노이즈가 섞인 이미지 로부터 추가된 노이즈를 예측하고 제거하는 법을 학습한다.
그 과정을 반복하면 순수 노이즈에서 실제 이미지가 생성된다.
흐릿한 이미지에서, “이 단계에서 제거해야 할 잡음이 무엇인지”를 맞히는 모델이 되는 것이다.
“이 이미지에 섞인 노이즈가 무엇인지 맞혀라” 라는 단순하고 안정적인 목표를 가진다.
Diffusion은 데이터 분포를 한 번에 맞히지 않고, 아주 작은 단계들의 조건부 분포를 차례대로 학습한다.
따라서 고차원 데이터에서도 안정적으로 학습 가능하다.
Diffusion 모델은 노이즈에서 시작해 다양한 경로를 거치므로 출력 다양성이 매우 높다.
참고 : Mode Collapse: 생성 모델이 소수의 결과만 반복 생성하는 현상 (GAN의 대표적 문제)
→ 조건을 추가하기 쉬운 구조
※ 최근에는 DDIM, Latent Diffusion, Sampling Acceleration 기법으로 많이 개선됨
| 항목 | GAN | VAE | Diffusion |
|---|---|---|---|
| 학습 안정성 | 낮음 | 높음 | 매우 높음 |
| 이미지 품질 | 높음 | 낮음 | 매우 높음 |
| Mode Collapse | 있음 | 없음 | 거의 없음 |
| 샘플링 속도 | 빠름 | 빠름 | 느림 |
| 이론적 기반 | 약함 | 강함 | 강함 |
Diffusion 모델은 노이즈에서 시작해 점점 이미지를 복원하는 방식으로,
안정적이면서도 고품질의 이미지를 생성하는 모델이다.