Variational Inference에 대해 공부한 내용들을 정리해보도록 하겠습니다.
Variational Inference란 용어의 유래
보통 Variational Inference가 잘 작동하는 사례를 보면서 어떻게 활용되는지 그리고 원리가 무엇인지를 공부하게 되지만, 먼저 Variational Inference의 뜻에 대해 궁금해져서 찾아봤습니다. 그리 쉽지는 않더라고요.
구글에 Variational Inference를 검색하면 Variational Bayesian methods가 나오죠.
https://en.wikipedia.org/wiki/Variational_Bayesian_methods
첫 문장은 "Variational Bayesian methods are a family of techniques for approximating intractable integrals arising in Bayesian inference and machine learning." 이라네요.
Variational inference의 "inference"는 Bayesian inference의 inference와 같은 의미인 듯합니다. 모수의 파라미터를 추정하는 걸 보통 inference라고 하니까요. 그리고 그 과정에서 베이즈 정리가 사용되니 bayesian inference라 하겠죠. 그렇다면 bayesian inference를 하는 과정에서 variational한 methods를 사용한다... 가 될 것 같습니다.
그렇다면 variation은 어디서 나왔나? 가 궁금해서 좀 더 찾아봤습니다. "meaning of variational in variational inference"라고 검색하니, stackexchange 답변에 웹 페이지 하나를 링크해주네요.
https://stats.stackexchange.com/questions/340955/what-does-variational-mean
https://www.cs.jhu.edu/~jason/tutorials/variational.html
the term derives from the "calculus of variations," which deals with optimization problems that pick the best function (in this case, a distribution q). 이라고 합니다.
그리고 검색으로 나온 위키를 보면
https://en.wikipedia.org/wiki/Calculus_of_variations
"The calculus of variations is a field of mathematical analysis that uses variations, which are small changes in functions and functionals, to find maxima and minima of functionals." 라고 드디어 나옵니다. 말그대로 작은 변화-variations을 주어 극대 극소값을 찾는다고 하네요.
정리해보면 Variational Inference란 Bayesian inference에 약간의 변형을 가해 intractable한 integral들을 approximate하는 방법이라 할 수 있겠습니다. 그리고 그런 여러가지 방법들 중 아마도 요새 가장 관심이 있는 방법이 neural network를 이용한 방법이겠죠.
Variational Inference의 원리를 설명하는 글은 많지만 용어 자체를 설명하는 글은 없어서 한 번 정리해봤습니다.
원리를 워낙 잘 설명한 글들이 많아서 제가 따로 정리하는 건 큰 의미가 있나 싶긴 한데, 시간과 동기가 생긴다면 해보도록 하겠습니다.
'ML 이론' 카테고리의 다른 글
Greedy decoding 사용 시 output의 일관성 (0) | 2024.06.25 |
---|