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

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

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

안녕하세요 조교입니다,

Sampling-based Inference 단원에서 많은 sampling 방법에 대해 학습하였습니다.

이번 시간에는 Langevin dynamics에 대해 알아보도록 하겠습니다.


많은 sampling 알고리즘은 marginal distribution을 알고 있거나

likelihood evaluation이 가능한 경우 적용할 수 있습니다.

하지만 종종 우리는 likelihood  p(x)  p(x) 가 아닌, score function인  \nabla \log{p(x)}  logp(x) 를 추정하곤 합니다.

이러한 경우에는 기존의 sampling 방법이 아니라 새로운 방법을 통해 sampling 해야 하는데요,

이 경우에 적용할 수 있는 방법론이 Langevin dynamics입니다.


Langevin dynamics는 먼저  z_{n}\sim N(0,I)  znN(0,I) 를 뽑은 후에

 x_{n+1}=x_{n}-\frac{\epsilon}{2}\nabla\log{p(x_{n})}+\sqrt{\epsilon}z_{n}  xn+1=xn2 ϵlogp(xn)+ϵ zn  를 통해 현재 위치  x_{n}  xn 을  x_{n+1}  xn+1 으로 업데이트 합니다.

업데이트 수식은 gradient descent와 유사하게 보이지만, noise를 추가한다는 차이가 있는데요,

이 noise를 추가하는 차이 덕분에 Langevin dynamics의 stationary distribution은  p(x)  p(x) 가 됩니다.

gradient descent는 local optima에 빠진 후에는 더이상 탈출하지 못하는 단점이 있는 반면,

Langevin dynamics는 이러한 단점을 auxiliary noise term으로 극복하고 있습니다.


추가적인 Langevin dynamics에 대한 설명은

https://arxiv.org/pdf/1907.05600.pdf

에 잘 나와 있습니다.


감사합니다

조교 드림