본문 바로가기
딥러닝 with Python

[딥러닝 with Python] 디퓨전 모델의 Forward Process 이해하기- 단순한 Noise 덧셈은 왜 안될까?

by CodeCrafter 2025. 4. 20.
반응형

 

 딥러닝 기반의 생성 모델, 특히 디퓨전 모델(Diffusion Model)은 최근 들어 이미지, 오디오, 시계열 등 다양한 분야에서 최고의 성능을 보여주고 있습니다. 그 중에서도 많은 사람들이 헷갈리는 부분이 바로 "forward process"—즉, 데이터를 점진적으로 노이즈화하는 과정입니다.

 오늘은 이 과정이 왜 단순히 노이즈를 더하는 것이 아닌, 수학적으로 정교한 방식으로 설계되었는지를 자세히 살펴보겠습니다

 

[딥러닝 with Python] 디퓨전 모델 (1) (Diffusion Model) : DDPM

 

[딥러닝 with Python] 디퓨전 모델 (1) (Diffusion Model) : DDPM

이번에는 지난 번 알아봤었던 생성 모델들 (GAN, VAE, Flow-based models) 보다 더 좋은 성능을 보여주며 최근에 많이 활용되고 있는 디퓨전 모델(Diffusion Model)에 대해서 알아보겠습니다.[딥러닝 with Python

jaylala.tistory.com

 

1. 단순한 노이즈 덧셈은 왜 안될까?

- 처음에 noise를 더하는 방식에 대해 이렇게 생각해볼 수 있습니다.

 

x_t = x_0 + ε_t

 

여기서 ε_t는 평균 0, 분산 1인 Gaussian noise입니다. 즉, 원본 이미지인 x_0에 시간 step인 t 만큼 계속 랜덤한 gaussian noise를 더한 것이 x_t면 되지 않을까? 라고 생각할 수 있습니다. 

 하지만, diffusion model의 noise를 더해가는 과정인 forward process의 수식은 아래와 같습니다.

 

그 이유는 다음과 같습니다.

 

단순하게 노이즈만을 더해준다면,

 1) timestep이 커질수록 노이즈가 무한히 커지고, 데이터 분포가 제어되지 않게 되고,

 2) 결국 reverse process (노이즈 → 원본 복원)를 할 수 있는 기반이 사라지게 됩니다.

 

이때, 위 diffusion에서 noise를 더해가는 식은 결국 시간이 지날수록 원본 이미지가 표준 Guassian 분포 N(0,I)로 수렴을 하게 됩니다. 

 

2. 그렇다면, 왜 forward process의 최종 결과는  표준 정규 분포 N(0,I)를 따라야만 할까?

- 디퓨전 모델은 크게 두 단계로 나누어 볼 수 있습니다. 노이즈화를 시켜가는 forward process와 노이즈를 지워가는 reverse process입니다.

 

- 그런데 여기서 핵심은, "새로운 샘플을 생성할 때 원본 없이 생성" 한다는 것입니다.

 

- 즉, 새로운 무언가를 만들고 싶다면, 

 * 처음에는 아무것도 없는 상태이고

 * 이 것이 완전한 랜덤한 것에서 시작해야하며

 * 그 출발점이 바로 T 시점의 x인 X_T이고, 이를 pure noise라고 합니다.

 

- 그런데 그 pure한 noise 중 가장 잘 알려지고, 평균과 표준편차만 알고 있다면 얼마든지 분포 구성이 가능한 표준 정규 분포인 것입니다.

 

- 학습된 모델은 reverse 과정, 즉 noise를 지워가는 과정만 학습을 하게 됩니다.

- 그 시작점은 항상 X_T ~ N(0,I)에서 오게끔 설계해야 한다는 것입니다. 

 

 

- 이 말을 다시 정리해보면 아래와 같습니다.

 

 

 

 

 즉, 디퓨전 모델에서 reverse process, 즉 노이즈를 제거해가는 과정은 곧 학습의 대상입니다.
이때 모델은 각 시점 t에서의 noisy한 데이터 x_t를 입력받아, 그 이전 시점 x_(t-1) 혹은 해당 시점에 추가된 노이즈 ϵ을 예측하도록 훈련됩니다.

 

 그런데 만약 x_t와 x_(t-1)의 분포가 시간에 따라 급격히 달라지게 된다면, 

모델은 매 시점마다 전혀 다른 종류의 데이터 분포에 적응해야 하며, 이는 매우 불안정하고 일관성 없는 학습을 야기하게 됩니다.

 

 결과적으로, Reverse denoising 모델은 일관된 패턴을 학습하지 못하고, 의미있는 표현력- 즉, 고품질 생성 능력- 을 얻을 수  없게 됩니다.

 

 이와 같은 이유로, forward process는 모든 시점에서 데이터가 Guassian 분포 형태를 유지하면서, 노이즈의 비율만 조금씩 증가하는 구조로 설계되는 것입니다.

 

 

반응형

댓글