내가 보려고 만든 Paper Review 01 : "Auto Encoding Variational Bayes", Diederik P.Kingma et al. ICML 2015
[origianl paper link: https://arxiv.org/abs/1503.03585]
※ 주의 드립니다!
아직 저도 수학, 딥러닝, 머신러닝 마스터가 아니기 때문에 잘못된 개념 설명이 들어있을 수 있습니다. 참고용으로 봐주시고, 제가 참고한 자료의 원문을 보시면서 공부하시는 걸 추천드리겠습니다.
Manifold Hypothesis
"Data is concentrated around a lower dimensional fold."
manifold 공간에 있는 representation z(latent space)를 찾는 것이 generative model의 목표이다.
Maximum Likelihood
본딥다 시리즈의 [MLE,Maximum Likelihood Estimation]를 참고하길 바랍니다.
argmaxθ=pθ(x)=∫zpθ(x,z)=∫zpθ(x∣z)pθ(z)
Variation Inference
모분포 p는 어떻게 생긴 지 모르고, 복잡하기 때문에 직접적으로 다루기 어렵다. "tractable" 하다고도 말할 수 있다. 그래서 모분포보다 다루기 쉬운 추정 분포 q를 이용하게 된다. MLE를 사용해서 근사를 하는 이유라고 볼 수 있다.
qϕ(z∣x)≈pθ(z∣x)
Preliminary
-
∫zq(x∣z)=1
전체 확률 분포의 적분 값은 1이다.
-
p(x)=p(z∣x)p(z,x)
-
E[x]=x∫f(x)
-
DKL(P∣∣Q)=∫p(x)logq(x)p(x)
The Variation Bound
Variation Inference에 따라서 log(pθ(x)) 최대화시킨다. 위의 preliminary에 있는 조건들을 적용시켜서 식을 전개한다.
log(pθ(x))=∫zqϕ(z∣x)log(pθ(x))=∫zqϕ(z∣x)log(p(z∣x)p(z,x))
=∫zqϕ(z∣x)log(qϕ(z∣x)p(z,x)p(z∣x)qϕ(z∣x))
=∫zqϕ(z∣x)log(qϕ(z∣x)p(z,x))+∫zqϕ(z∣x)log(p(z∣x)qϕ(z∣x))
이때, 논문 상에서는 ∫zqϕ(z∣x)log(qϕ(z∣x)p(z,x)) 항을 편의상 L(θ,ϕ;x)으로 표현한다.
그리고 두번째 항인 ∫zqϕ(z∣x)log(p(z∣x)qϕ(z∣x))은 KL-Divergence 식으로 다시 쓸 수 있다. 그래서 위의 식을 정리하게 되면 다음과 같다.
log(pθ(x))=L(θ,ϕ;x)+DKL(qϕ(z∣x)∣∣pθ(z∣x))
KL-Divergence
잠시 KL-divergence에 대해서 생각해보자. DKL은 정보 엔트로피의 상대적인 비교로, DKL(P∣∣Q)는 P의 기준으로 봤을 때의 Q에 대한 엔트로피 H(Q)와 P에 대한 정보 엔트로피 H(P)의 합으로 나타낼 수 있다.
이때 DKL(P∣∣Q)는 다음의 3가지 조건을 만족한다.
1. DKL(P∣∣Q)=DKL(Q∣∣P)
2. DKL(P∣∣Q)≥0
3. DKL(P∣∣Q)=0 (if and only if P=Q almost everywhere)
그럼 다시 돌아와서 마지막으로 정리된 식을 보자.
log(pθ(x))=L(θ,ϕ;x)+DKL(qϕ(z∣x)∣∣pθ(z∣x))
위 식에서 DKL 항은 아래의 조건을 만족하므로 부등식 좌,우변에 L(θ,ϕ;x)을 더해 아래와 같이 쓸 수 있다.
DKL(qϕ(z∣x)∣∣pθ(z∣x))≥0
L(θ,ϕ;x)+DKL(qϕ(z∣x)∣∣pθ(z∣x))≥L(θ,ϕ;x)
우리의 목적은 likelihood인 부등식의 좌항(LHS)을 최대화 하는 것이다. 이를 잊지말고, 식을 정리해나가보자.
Tidy up the L(θ,ϕ;x)
식을 정리하는 데에 있어서 쉬운 이해를 위해 LHS(Left Hand Side)의 L(θ,ϕ;x)를 LA(θ,ϕ;x)라고 쓰고, RHS(Right Hand Side)의 L(θ,ϕ;x)를 LB(θ,ϕ;x)라고 쓰겠다. (편의상 표기만 다르게 해 놓았을 뿐 동일한 loss term이다.)
먼저 MonteCarlo Estimation을 통해서 LA(θ,ϕ;x)를 정리해보자.
LA(θ,ϕ;x)=∫qϕ(z∣x)log(qϕ(z∣x)pθ(z,x))=∫qϕ(z∣x){log(pθ(z,x))−log(qϕ(z∣x))}
=Eqϕ(z∣x)[−log(qϕ(z∣x))+log(pθ(z,x))]
=L1l∑L(log(pθ(z(l),x)−log(qϕ(z(l)∣x))
이때 위 식의 sampling variable z 아래의 분포를 따르게 된다.
where z(l)∼qϕ(z(l)∣x)
이제 우리가 편의상 LB라고 썼던 RHS의 loss term을 정리해보자.
우리가 ELBO(Evidence Lower BOund)라고 부르는 항이 된다.
그 다음 내용은 2편에서 이어서 리뷰하겠습니다. (많관부)