본문 바로가기

STUDY/인공지능

Diffusion model (1)

728x90

https://youtu.be/a4Yfz2FxXiY

위 유튜브 내용을 정리한 것.

 

 

 

*개요*

 

[GAN : Generative Adversraial Network]

  • 고품질 출력을 생성하지만 훈련하기 어려움
  • 적대적 훈련을 통해 Vanishing gradients 혹은 mode collapse라는 문제를 일으킬 수 있음

 

 

[VAE : Variational Autoencoder]

  • 입력을 잠재 분포로 압축한 후 훈련
  • 훈련된 이 분포에서 샘플링하여 입력을 다시 복구함
  • 따라서, GAN에 비해 이미지 품질이 좋지 않음

 

[Diffusion model]

  • GAN의 다양성, VAE의 안정성을 모두 보장해주는 모델임
  • 완전한 노이즈가 될때까지 입력에 노이즈를 더해줌
  • 그 후, 신경망을 통해 노이즈에서 입력으로 복구하는 방식으로 작동
  • seuential reverse process를 통해 샘플링 속도가 GAN과 VAE에 비해 느림

 


[Diffusion model 이란?]

Forward process와 Reverse process로 구성됨

 

[Foward process]

입력이 들어오면 점진적으로 노이즈를 추가하여 입력을 파괴하는 과정

 

[Reverse process(= Parametrized Backward process)]

Forward process를 통해 생성된 노이즈로부터 입력을 복구하는 방식으로 작동

각 시간 단계가 이전 시간 단계에 따라 달라지는 일련의 확률 이벤트이므로 미래 모델의 특정한 속성은 잠재 상태가 입력과 동일한 차원을 갖는다는 이론... 마르코프 체인이라고도 함

이 작업은 발생된 노이즈를 예측하는 것으로 설명 가능

 

[모델을 구성하기 위해 3가지가 주로 필요]

1. Noise scheduler : 노이즈를 순차적으로 추가하는 모델

2. Nerual Network : 이미지에서 노이즈를 예측하는 모델

3. Timestep Encoding : 현재 시간 단계를 인코딩하는 방법

 


*수학적 설명* 

 

[Forward process]

출처 : https://youtu.be/a4Yfz2FxXiY

여기서 마르코프 프로세스는 q로 표시

노이즈 추가는 이전 입력에만 의존

 

출처 : https://youtu.be/a4Yfz2FxXiY

노이즈가 샘플링되는 방식은 위 conditional gaussian distribution 공식과 같음

 

 

뒷 내용은 추후 이어서 작성.,

 

728x90