로그인 바로가기 하위 메뉴 바로가기 본문 바로가기

인공지능 및 기계학습 개론 II

임시 이미지 KAIST 산업및시스템공학과 문일철 교수 KOOC (KAIST Open Online Course)
http://www.edwith.org/machinelearning2__17/forum/97033
좋아요 1110 수강생 5460

안녕하세요, 조교입니다.

distribution  p(x)  p(x) 가 주어져 있을 때 MCMC 등의 방법을 이용하여 sampling을 할 수 있습니다.

특히, 이러한 sampling 방법은 최근에 대두되고 있는 energy-based model에서 많이 사용되고 있습니다.

그렇다면, distribution  p(x)  p(x)  혹은 unnormalized distribution  exp(-E(x))  exp(E(x)) 가 주어져 있지 않은 상황에서 어떠한 정보가 주어진다면   p(x)  p(x) 에서 하나의 sample x\sim p(x)  xp(x) 를 얻을 수 있을까요?

그 힌트는 Langevin dynamics에서 얻을 수 있습니다. Langevin dynamics는 distribution  p(x)  p(x) 의 gradient가 주어져 있을 때 sample을 얻을 수 있는 방식입니다.

즉, 우리가  p(x)  p(x)  대신  \nabla_{x}log{p(x)}  xlogp(x) 를 계산할 수 있다고 하면, Langevin dynamics는  x_{t}=x_{t-1}+\frac{\epsilon}{2}\nabla_{x}\log{p(x_{t-1})}+\sqrt{\epsilon}z_{t}  xt=xt1+2 ϵxlogp(xt1)+ϵ zt 를 통하여 iterative한 방식으로 sample을 random noise  x_{0}\sim N(0,I)  x0N(0,I) 로부터 update하면  x_{\infty}\sim p(x)  xp(x) 임을 수학적으로 증명할 수 있습니다. 여기서,  \epsilon>0  ϵ>0 은 step size이고,  z_{t}\sim N(0,I)  ztN(0,I) 는 standard Gaussian distribution에서 sample한 noise입니다.

위와 같은 Langevin dynamics를 통해 우리는 distribution  p(x)  p(x) 를 모델링 하는 대신  \nabla_{x}\log{p(x)}  xlogp(x) 를 모델링 할 수 있고, 이와 같은 모델링 방법을 score-based model이라고 부릅니다.

감사합니다