피파 한 줄 정리: 정방향은 정해진 수학으로 노이즈를 더하는 단순한 일이고, 역방향은 노이즈를 예측해 빼는 학습된 일이야. 이 비대칭 덕분에 학습 문제가 풀 수 있는 크기가 돼.
확산 모델에는 학습을 위한 정방향과 생성을 위한 역방향이 있어. 오래된 가구 복원을 배운다고 생각해봐. 정방향은 손상의 단계를 연구하려고 가구를 통제된 방식으로 조금씩 망가뜨리는 일이고, 역방향은 그 기록을 이용해 손상된 가구를 고치는 일이야.
정방향 과정 — 학습할 때
실제 이미지에 Gaussian noise를 조금씩 더해 점차 무너뜨려. 보통 노이즈가 늘어나는 1,000단계를 사용해.
0단계 250단계 500단계 750단계 1000단계 🖼️ → 🖼️+🌫️ → 🌫️🌫️ → 🌫️🌫️🌫️ → 🎲 깨끗함 약한 노이즈 강한 노이즈 매우 강함 순수 노이즈 매 단계에서 모델이 보는 것: - 노이즈가 낀 입력 이미지 - 더한 노이즈의 양(timestep) - 예측 목표가 되는 원래의 깨끗한 이미지
학습 목표는 노이즈 이미지와 수준을 보고 더해진 노이즈를 예측하는 일이야. 같은 말로 그 아래의 깨끗한 이미지를 예측한다고 볼 수도 있어. 수십억 사례를 반복하며 이 능력이 정교해져.
역방향 과정 — 생성할 때
1000단계의 순수 노이즈에서 출발해 “여기에 어떤 노이즈가 더해졌지?”라고 묻고 예측한 노이즈를 빼. 한 단계씩 반복하면 혼돈에서 일관된 이미지로 이동해.
1000단계 750단계 500단계 250단계 0단계 🎲 → 🌫️🌫️🌫️ → 🌫️🌫️ → 🖼️+🌫️ → 🖼️ 순수 노이즈 형태의 조짐 구조가 등장 거의 선명 깨끗한 이미지 매 단계에서: 1. 현재의 노이즈 상태를 본다 2. 어떤 노이즈가 있는지 예측한다 3. 예측한 노이즈를 뺀다 4. 깨끗한 이미지에 한 걸음 가까워진다
왜 영리한 구조일까
정방향은 알려진 양의 Gaussian noise를 더하는 고정된 수학이라 배울 필요가 없어. 모든 지능을 어렵고 유용한 역방향, 곧 노이즈 예측과 제거에 집중할 수 있어. 이미지를 망가뜨리는 법이 아니라 복원하는 법만 배우면 되는 비대칭이 문제를 다룰 수 있게 만들어.
모델은 수십억 이미지가 모든 노이즈 단계에서 무너지는 모습을 보며 자연 이미지의 구조, 구도, 크기별 특징, 일부 정보에서 그럴듯한 세부를 복원하는 법까지 함께 배워.
- 정방향은 학습 중 실제 이미지에 노이즈를 더하는 고정된 쉬운 과정이다.
- 역방향은 생성 중 노이즈를 빼는 어렵고 학습된 과정이다.
- 모델은 생성 자체가 아니라 노이즈 제거를 배우며, 생성은 순수 노이즈에 그 능력을 반복해 나타난다.
- 단순한 파괴와 복잡한 복원의 비대칭 덕분에 학습이 가능해진다.