안녕하세요, 조교 김동준입니다.
이번시간에는 diffusion model의 대표적인 perturbation 방법인 Variance Exploding (VE) SDE와 Variance Preserving (VP) SDE에 대해 살펴보도록 하겠습니다.
지난시간까지 diffusion model에 대한 간략한 소개와 diffusion model이 \lambda(t)=g^{2}(t)λ(t)=g2(t) 일 때 likelihood의 surrogate을 optimize하는 것이라고 설명드렸습니다. 이 모든 것은 forward diffusion process dx_{t}=f(x_{t},t)dt+g(t)dw_{t}dxt=f(xt,t)dt+g(t)dwt 에서 f(x_{t},t)f(xt,t) 와 g(t)g(t) 를 우리가 미리 알고 있다는 가정 하에 성립하는데, 이번 시간에는 어떤 f,gf,g 를 실질적으로 다룰 수 있는지에 대해 설명드리도록 하겠습니다.
먼저, VESDE는 f(x_{t},t)\equiv 0f(xt,t)≡0 인 형태의 process를 일컫습니다. 즉, process는 dx_{t}=g(t)dtdxt=g(t)dt 가 됩니다. 이것의 '의미'는 data variable인 x_{0}x0 를 시간에 따라 계속 white noise perturbing을 주는 것입니다. 즉, x_{t}=x_{0}+\sigma(t)\epsilonxt=x0+σ(t)ϵ , where \epsilon\sim N(0,I)ϵ∼N(0,I) 를 의미합니다. 여기서 \sigma^{2}(t)=\int_{0}^{t}g^{2}(s)dsσ2(t)=∫0tg2(s)ds 로 유도되기 때문에, g(t)g(t) 는 diffusion이 얼마나 빠른 속도로 일어나는지를 설명해주는 함수입니다. 이러한 VESDE는 시간이 흐름에 따라 (보통의 경우) \sigma^{2}(t)σ2(t) 가 무한대로 발산하기 때문에 Variance인 \sigma^{2}σ2 가 "발산" (explode)하는 SDE라고 하는 것이고, 그래서 Variance Exploding SDE라고 하는 것입니다. Yang Song은 그의 논문 "score-based generative modeling through stochastic differential equations"에서 \sigma^{2}(t)σ2(t) 가 주어졌을 때 거꾸로 g^{2}(t)=\sqrt{\frac{d [\sigma^{2}(t)]}{dt}}g2(t)=√dtd[σ2(t)] 로 유도하였습니다.
VESDE는 Stochastic Calculus에서는 Brownian motion이라고 부릅니다. 두번째 category인 VPSDE는 Stochastic Calculus에서 두번째로 유명한 SDE인 Ornstein-Uhlenbeck Process인데요, 가장 일반적인 형태의 식은 dx_{t}=-\frac{1}{2}\beta(t)x_{t}dt+\sqrt{\beta(t)}dw_{t}dxt=−21β(t)xtdt+√β(t)dwt 가 됩니다. 식이 처음에는 익숙하지 않아서 고생하실 것으로 생각합니다. VESDE의 transition probability가 p_{0t}(x_{t}\vert x_{0})=N(x_{t};x_{0},\sigma^{2}(t)I)p0t(xt∣x0)=N(xt;x0,σ2(t)I) 였다면 VPSDE의 transition probability는 p_{0t}(x_{t}\vert x_{0})=N(x_{t};\mu(t)x_{0},\sigma^{2}(t)I)p0t(xt∣x0)=N(xt;μ(t)x0,σ2(t)I) 로 주어집니다. 여기서 \mu(t)=e^{-\frac{1}{2}\int_{0}^{t}\beta(s)ds}μ(t)=e−21∫0tβ(s)ds , \sigma^{2}(t)=1-e^{-\int_{0}^{t}\beta(s)ds}σ2(t)=1−e−∫0tβ(s)ds 가 되는데, \mu^{2}(t)+\sigma^{2}(t)=1μ2(t)+σ2(t)=1 이 되는 preservation property가 있기 때문에 이 SDE를 VPSDE라고 부릅니다. SDE에서 f(x_{t},t)f(xt,t) 는 data variable x_{t}xt 가 x_{t+\Delta t}xt+Δt 만큼 변할 때 얼만큼 "전체적으로" distribution shift가 일어나는지를 설명해주는 "drift term"입니다. VPSDE는 -\frac{1}{2}\beta(t)x_{t}−21β(t)xt 만큼의 drift가 계속 가해지고 있기 때문에 data가 처음 있었던 곳으로부터 계속하여 0 근처로 \mu(t)x_{0}μ(t)x0 만큼 빨려들어가고 있는 diffusion process입니다.
comment