Deep Unsupervised Learning using Nonequilibrium Thermodynamics 리뷰

2023. 5. 5. 06:12Diffusion Model에 대한 정리

[논문 링크]

 

Deep Unsupervised Learning using Nonequilibrium Thermodynamics

A central problem in machine learning involves modeling complex data-sets using highly flexible families of probability distributions in which learning, sampling, inference, and evaluation are still analytically or computationally tractable. Here, we devel

arxiv.org

 

생성모델의 본질 : 데이터가 존재할법한 분포를 파악해 "실제같은", "실제와 유사한" 데이터를 만드는 것입니다. 

원하는 데이터의 분포를 얼마나 잘 추정하는지에 따라 생성모델의 Output의 품질을 결정할 수 있다고 합니다.

 

이 과정에서 두가지 trade-off 관계를 설명합니다.  이를 통해 Diffusion probabilistic model을 제안합니다.

 

Tractability : Tractable한 모델은 가우시안 분포처럼 수치적으로 계산이 되며 데이터셋이 쉽게 Fit할 수 있습니다! 

하지만 데이터셋이 복잡하여 설명과 변경에 많은 불편함이 있습니다.

 

Flexibility : Flexible한 모델은 임의의 데이터에 대해서도 적절하게 설명할 수 있습니다!

하지만 학습하고 평가하고 샘플을 생성하는데 일반적으로 많은 불편함이 있습니다.

 

위 같은 단점을 보안하기 위해 Diffusion probabilistic model을 제안하였습니다.

 

1. Forward process과정이 reverse process로 학습만 가능한 형태로 분포의 자유도가 커짐니다.

 

2. exact sampling Tractability : 과정이 tractable하기 때문에 정확한 분포값을 사용

 

여기의 성질은 Markov property입니다.

 

Foward process

 

Forward diffusion process

  • Data distributon, 즉 실제 데이터의 분포를 라고 하자. 이 데이터 분포는 forward process를 통해 점차 바뀌어 결과적으로 tractable한 pi로 바뀌게 된다. 이 때 점차 바꾸어가는 과정을 Markov diffusion kernel이라고 하며 이를 pi(에 대한 Tpi라고 하며 이 때 는 diffusion rate 입니다.

Reverse process

 

Reverse generative process

  • Forward diffusion process는 분포를 정하고, 그 분포에 따라 데이터를 변환시키는 과정. 이 과정의 역과정을 추정하는 단계 입니다.

 

 

Loss Function

  • Reverse diffusion process, 즉 Diffusion 모델을 학습하기 위한 Loss function의 목적은 가우시안 분포 형태로 변환한 Distribution을 추정하는 것이며 이는 주어진 데이터의 likelihood를 계산합니다.

 

  • Reverse generative process에서 Loss Function은 log likelihood of x를 계산하는 것이며 수식은 아래와 같습니다.