코딩 및 기타

Diffusion Model

정지홍 2025. 9. 9. 08:29

Diffusion Model

  • 확산 모델은 "noise를 점진적으로 더하는 고정된 정방향 과정""되감는 역방향 과정"으로 구성된 모델.
    • 즉, data에 "noise를 더해가거나" or "noise가 있는 data를 복원해가는 과정"을 통해서 data를 생성하는 모델이다.
  • 장점
    • 현존하는 모델중에서 품질이 가장 좋다.
      안정적인 학습이 가능하다.
      GAN의 고질적인 문제인 모드 붕괴 현상이 잘 발생하지 않는다.
  • 단점
    • 추론 속도가 느림. ( 역확산 과정으로 인해서... )

 

Diffusion Model - Forward Process

  • 1. "origin data"에서 시작해서 점진적으로 "가우시안 노이즈"를 추가한다.
  • 2. 노이즈 추가 단계를 충분히 여러번 반복한다.
  • 3. 결국엔 "origin data"형태는 사라지고, 결국 순수한 가우시안 노이즈와 구별할수 없게 된다.
  • ==> 위와 같은 과정은, 미리 정의된 확률 과정으로, 모델의 학습이 필요없다. 또한 data가 noise로 변해가는 수학적 경로를 얻을수있다.

 

Diffusion Model - Reverse Process

  • 확산 모델 학습의 핵심 단계이다.
  • 1. "순수한 가우시안 노이즈"에서 시작해서 확산 과정을 거꾸러 거슬러 올라간다.
    • 1-1. 즉, noise상태에서 점진적으로 noise를 제거... ==> 결국 "origin data" 분포에 속하는 "new data"를 생성하는것이 목표.
  • ex) Let, using U-Net... 
    1. 각 단계에서 "추가된 noise"를 예측하도록 학습시킴.
    2. 모델은 noise예측값을 이용해서 이전 단계"덜 noise낀 상태"추정한다.
    3. 위의 1~2과정을 반복하여, 최종적으로 깨끗한 data 샘플을 얻는다. 
    ==> 이를 통해서 수많은 datanoise단계 을 통해서 noise예측 능력을 정교하게 학습한다...

 

 

 

'코딩 및 기타' 카테고리의 다른 글

아나콘다 가상환경 설정  (0) 2025.09.11
pytorch lstm  (0) 2025.09.10
GAN ( Generative Adversarial Network )  (0) 2025.09.08
FLU , FRD , NED  (2) 2025.08.28
MAVLink란?  (2) 2025.08.17