끄적거림

[논문 비평] Variational AutoEncoder Bayes 본문

개인 공부 정리/Bayesian

[논문 비평] Variational AutoEncoder Bayes

Signing 2021. 12. 20. 22:47
728x90
반응형

논문 링크 : https://arxiv.org/abs/1312.6114

 

Auto-Encoding Variational Bayes

How can we perform efficient inference and learning in directed probabilistic models, in the presence of continuous latent variables with intractable posterior distributions, and large datasets? We introduce a stochastic variational inference and learning

arxiv.org

 

해당 논문은 워낙에 유명해서 이미 영상이나, 블로그 등으로 설명이 아주 자세하게 나와있다. 그 중에서 괜찮은 설명이 있었던 블로그를 가져와 보았다.

 

논문 설명

1. https://deepinsight.tistory.com/127

 

[정리노트] [AutoEncoder의 모든것] Chap4. Variational AutoEncoder란 무엇인가(feat. 자세히 알아보자)

AutoEncoder의 모든 것 본 포스팅은 이활석님의 'AutoEncoder의 모든 것'에 대한 강연 자료를 바탕으로 학습을 하며 정리한 문서입니다. 이활석님의 동의를 받아 출처를 밝히며 강의 자료의 일부를 인

deepinsight.tistory.com

 

2. https://ratsgo.github.io/generative%20model/2018/01/27/VAE/

 

Variational AutoEncoder · ratsgo's blog

이번 글에서는 Variational AutoEncoder(VAE)에 대해 살펴보도록 하겠습니다. 이 글은 전인수 서울대 박사과정이 2017년 12월에 진행한 패스트캠퍼스 강의와 위키피디아, 그리고 이곳 등을 정리했음을 먼

ratsgo.github.io

 

이 블로그만 읽어도 VAE가 무엇인지 어느정도 알 것이라고 생각한다.

그러면 VAE가 bayesian 패러다임을 사용하는 것도 어느정도 보았을 것이다.

나는 이 VAE가 정말로 bayesian 철학과 패러다임을 이어 받은 것인지가 의문이다.

 

1. 일단은 prior를 normal 분포로 세팅한 것.

이 것은 normal 분포가 흔히 만만하고 유용한 분포다보니 그럴 수 있다고 생각은 한다.

 

2. 두 번째로, weight에 대한 분포가 아닌 latent variable에 대한 분포라는 것.

베이지안의 가장 근원적인 철학은 데이터가 발생하는 원리가 데이터에 있는 것이 아니고 parameter에 있다는 것인데, 해당 논문은 parameter보다는 latent variable z에 대해 관심이 있는 것으로 세팅을 해놓았다.

 

+ 게다가 latent variable z 분포를 위해 $\mu$와 $\sigma^2$을 Neural Network로 만들었다는 것.

그러면 NN의 parameter은 deterministic한 고정값으로 나오는 것이고 $\mu$와 $\sigma^2$에 대한 값조차도 어느정도 학습되어 고정된 값으로 도출된다.

 

하지만 이 것들은 역전파를 위한 reparameterization trick 때문에 사용하는 것이라고 생각한다면, 어느정도 베이지안 패러다임에서 벗어나더라도 넘어갈 수 있다고 생각한다.

 

3. 세 번째로는, likelihood인 $p(x|z)$의 분포를 얻기 위해 MLE를 사용한다는 것.

MLE는 부정할 수 없는 deterministic 방법론이다.

물론 이 과정에서 Variational Inference를 유도하여 결국 posterior와 유사한 $q(\theta)$ 분포를 얻을 수 있긴 하다.

 

단지 prior와 posterior 개념을 차용하여 사용했다는 것으로 bayes가 붙은 것인가 싶다.

베이지안을 공부하여 어느정도 베이지안 철학을 내 머리에 세팅해 놓고, VAE를 보다보니 분명 prior, posterior 등 베이지안의 개념을 사용하는 것 같아서 더 확인해보면 정말 베이지안을 사용하는 것이 아닌 것 같아서 이해하고 VAE 코드를 수정하기가 매우 어려웠다.

혹시 나와 같은 생각을 한 사람은 없을까?

 

https://jeffreyling.github.io/2018/01/09/vaes-are-bayesian.html

 

VAEs are Bayesian

$$ \newcommand{\boldA}{\mathbf{A}} \newcommand{\boldB}{\mathbf{B}} \newcommand{\boldC}{\mathbf{C}} \newcommand{\boldD}{\mathbf{D}} \newcommand{\boldE}{\mathbf{E}} \newcommand{\boldF}{\mathbf{F}} \newcommand{\boldG}{\mathbf{G}} \newcommand{\boldH}{\mathbf{H

jeffreyling.github.io

Jeffrey Ling 라는 분이 작성한 영어원문이다.

아직 읽어보진 않았지만, jeffrey라고하니 이름에서 뭔가 믿음이 간다.

조만간 한 번 읽고 해당 논문에 대해 생각하는 글을 포스팅해보도록 하겠다.

 

728x90
반응형
Comments