Background

Stochastic differential equations (SDE)

SDE는 아래와 같은 form을 가집니다.

$$ d\mathbf{x} = \underbrace{f(\mathbf{x}, t)}{\text{drift}} dt + \underbrace{g(t)}{\text{diffusion}}d\mathbf{w} $$

위 식에 표기한 것 처럼 drift function f 는 어떠한 particle x가 전반적으로 어떤식으로 이동하는지에 대한 것을 결정합니다. 반면, diffusion coefficient g는 어떠한 particle x의 randomness를 결정합니다. 다시 말해, particle x가 얼마나 복잡한 path로 이동할 지를 결정하게 됩니다.

위 식을 이해하는 데에 가장 편리한 방법은 diffusion 부분을 무시한 채 앞의 식만 보는 것입니다.

$$ \frac{d\mathbf{x}}{dt} = f(\mathbf{x},t) $$

보시는 바와 같이, diffusion을 제외하고 보면 우리가 익숙한 ODE가 나오며, 따라서 intuitive하게는 SDE를 noisy version of ODE로 생각할 수 있습니다.

SDE는 ODE와 다르게 이 randomness때문에, solution이 deterministic한 path를 따르지 않습니다. 다시 말해, ODE의 solution의 경우 어떤 timestep t에서 x의 값이 결정되는데, SDE는 모든 timestep t에서 x의 값이 random variable이기 때문에, 모든 timestep t에서 marginal distribution p_t(x)를 정의할 수 있습니다. 따라서, 이러한 marginal distribution모든 timestep t 에 대한 collection이 SDE의 solution이 됩니다.

Solution을 알게 되면 transition kernel 이라고 불리는

$p_{st}(\mathbf{x}(t)|\mathbf{x}(s)),\, 0 \leq s \leq t \leq T$

를 정의할 수 있게 되며, 이를 통해 marginal x(s)에서 또 다른 marginal x(t) 로 가는 kernel을 특정할 수 있습니다.

마지막으로, Anderson's theorem으로 인해, forward SDE와 항상 짝을 이루며 reverse SDE가 존재하게 됩니다.

$$ d\mathbf{x} = [f(\mathbf{x}, t) - g(t)^2\nabla_{\mathbf{x}}\log p_t(\mathbf{x})]dt + g(t) d\bar{\mathbf{w}} $$

위 식에서 time t는 거꾸로 가는 방향이며, 마찬가지로 $\bar{w}$도 반대방향의 wiener process로 생각할 수 있습니다.

Brownian motion (Wiener process)

SDE을 이해하려면 우선 Brownian motion부터 이해해야 합니다. Simplicity를 위해 앞으로 scalar variable만 다루도록 하겠습니다. w(t) 라는 Wiener process는 아래와 같이 정의됩니다.

  1. mean 0, std \sigma(t) 의 Gaussian distribution을 따른다
  2. Markovian process