"Denoising Diffusion Probabilistic Models" 발표에서 DDPM 과 관련된 초기 논문이라고 하여, Diffusion Model에 대해 이해하는 것에 도움이 될 수 있을 것 같아 읽게 되었습니다. 수식이 연결되는 것에 필요한 부분들이 잘 나와있고, diffusion 과 관련된 배경지식을 찾기 좋은 논문으로 보입니다.

Contribution

  1. flexibility와 tractability에 더 장점을 가지는 모델입니다. flexibility는 임의의 데이터를 표현을 잘 하는 것이며, diffusion model에서 딥러닝을 활용하여 flexible한 distribution을 나타낼 수 있는 부분을 의미합니다. tractability는 Gaussian 처럼 분석하기 용이한 것을 의미하는 것으로, diffusion model에서 Gaussian으로 근사할 수 있어 upper와 lower bound를 알 수 있는 부분을 의미합니다.
  2. physics에서 아이디어를 가져온 모델입니다. Diffusion model은 데이터를 known Gaussian 분포로 바꾸는 forward trajectory와 known Gaussian 을 데이터 분포로 바꾸는 reverse trajectory로 구성되어 있습니다. 그래서 분포를 다른 분포로 바꾸어 가는 것에는 Langevin dynamics를 활용하였으며, 학습 가능한 lower bound를 만들기 위해 Annealed Importance Sampling 을 활용하며, 프로세스 단계를 세부적인 단계로 나누어서 동일한 function을 Markov chain처럼 여러번 적용하는 부분에 Kolmogorov forward and backward 아이디어를 활용하였습니다.

Diffusion probabilistic model

  1. Forward Trajectory 데이터 분포인 $x^{(0)}$를 다루기 쉬운 분포인 $\pi (y)$ 로 바꾸는 forward trajectory를 $q(x^{(0...T)})$로 정의하며, Markov diffusion kernel 인 $T_\pi (y|y^\prime ; \beta )$ 를 활용하게 됩니다. 여기서 $\beta$는 diffusion rate 입니다. 그래서 여러 단계로 진행이 되며, 데이터 0 → 중간 t → 결과 T 인 부분의 각 단계를 (2)로 표시하고, 분포에 적용하면 (1) 과 같습니다.

    Untitled

    여러 단계를 진행한 수식은 (3)과 같습니다.

    Untitled

  2. Reverse Trajectory 변환된 분포인 $x^{(T)}$를 데이터 분포 $x^{(0)}$로 돌려놓는 reverse trajectory를 $p(x^{(0...T)})$로 정의하며, (4)와 (5)로 나타낼 수 있습니다.

    Untitled

    Reverse trajectory에서는 diffusion kernel을 역을 model을 통해 학습하게 됩니다.

  3. Train 학습은 forward trajectory로 바뀐 분포를 reverse trajectory로 되돌리는 model likelihood를 maximizing하는 방향으로 진행됩니다. model likelihood는 (10)처럼 표현할 수 있습니다.

    Untitled

    학습은 (10)을 (13)으로 annealed importance sampling과 Jarzynski equality에 의해 바꾸어 lower bound인 K에 대한 수식을 만들어 KL divergence와 entropies로 정리하여 줍니다. 그 후 $K$를 maximzing하면 학습이 됩니다.

    Untitled

    Loss 를 통한 학습 방법은 상윤님의 이전 발표인 "Denoising Diffusion Probabilistic Models" 발표에 나와있습니다. 관련 수식.

    Untitled

  4. Flexibility와 Tractability Flexibility가 arbitrary data에 fit 할 수 있도록 딥러닝 모델을 활용하여 reverse process를 진행할 수 있다는 것이라면, Tractability는 diffusion process가 Gaussian mean 계산을 통해 근사할 수 있음과 Lower bound와 Upper bound를 계산할 수 있음을 Appendix에서 small perturbation (작은 noise를 넣어주는 것) 관련하여 energy function과 Taylor expansion에 의해 보입니다.

  5. Model Multi-scale convolution을 활용한 Network를 활용하여 mean과 covariance를 예측하였습니다.

  6. Result

    Untitled

    Untitled


추가적으로 가져온 논문은 "Autoregressive Diffusion Models" 입니다. Diffusion model에서 알고 있는 distribution에서 시작해서 학습을 할 수 있는 reverse 부분에서 아이디어를 가져와 Order-agnostic autoregressive model을 만든 논문입니다.

Autoregressive Diffusion Models (ARDMs)

Contribution

  1. autoregressive 모델을 parallel inference 가 가능하게 만들었습니다. 구현한 내용은 Bert를 mask를 일부만 예측하여 여러 번 진행하는 것과 동일합니다.

Autoregressive Model

  1. 기존의 LSTM이나 GPT 같은 구조에서는 순차적으로 데이터를 생성합니다.

  2. ARDMs에서는 아무 지점에서 시작할 수 있습니다. 그래서 length $D$의 permutation 만큼의 random order $S_D$ 순서로 만들어 질 수 있어, $S_D$의 log-likelihood를 활용합니다.

    Untitled

    ex. 생성 순서가 3,1,2,4 로 진행될 때의 예시 그림입니다.

    Untitled

    ex. 실제 문장 생성에 활용한 예시입니다. 내용을 보면 일부 오타가 존재합니다.

    Untitled