Processing math: 100%

7. 기댓값 전파ExpectationPropagation

2021. 8. 5. 15:43Bayesian

이전 글에서는 결합 분포의 우도를 최적화하는 과정에서 KL(q||p)를 최소로 만드는 q(Z)를 찾는 변분 베이즈 방법VariationalBayes에 대해 알아보았습니다.

이번 글에서는 사후분포를 최적화하는 방법 중 하나인 기댓값 전파ExpectationPropagation에 대해 알아보겠습니다.

[관련 글] 6. 변분 베이즈 방법VariationalBayesMethod,6-1. 평균 장 근사Meanfieldapproximation


많은 경우에 결합 확률분포를 IIDIndependentIdenticallyDistributed 분포의 곱으로 나타낼 수 있습니다. 즉, 다음과 같이 나타낼 수 있습니다. 

p(D,θ)=ifi(θ)

p(θ|D)=1p(D)ifi(θ),    where p(D)=ifi(θ)dθ

우리는 새로운 예측값을 만들 때, 이 사후 분포를 적분하여 만들게 되는데, 사후분포가 복잡한 형태여서 적분을 하지 못 하는 경우가 발생할 수 있습니다. 이때, 사후분포를 추정하는 방법이 기댓값 전파ExpectationPropagation입니다.

q(θ)를 다음과 같이 가정하겠습니다.

q(θ)=1Zi˜fi(θ),    where Z=i˜fi(θ)

우리가 최소화할 KL Divergence는 다음과 같습니다.

KL(p||q)=KL(1p(D)ifi(θ)||1Zi˜fi(θ))

하지만 데이터에 대한 분포는 알고 있지만, 사후 분포는 알고 있지 못하기 때문에, 우리가 알고 있는 q(θ)분포를 이용해서 fj(θ)분포 하나씩 업데이트하게 됩니다. $q(θj$번째 요소를 바꾼 분포 간의 KL Divergence를 줄이면서 최적화를 진행하게 됩니다.) 즉, 다음과 같은 KL Divergence를 최적화합니다. 

KL(1Zjfj(θ)qj(θ)||q(θ)),    where  qj(θ)=q(θ)˜fj(θ),  Zj=fj(θ)qj(θ)dθ

한편, q(θ)의 분포를 지수족이라고 가정했기 때문에, 다음과 같은 식들이 성립합니다.

KL(p||q)=ln g(η)ηTEp(z)[u(z)]+const

위 식을 최적화 하기 위해 미분한 후, 0이 되는 값을 찾아주면 다음과 같습니다.

 ln g(η)=Ep(z)[u(z)]

 ln g(η)=1g(η) g(η)=g(η)h(x) exp{ηTu(x)}u(x)dx=Eq(z)[u(x)]

즉, Ep(z)[u(x)]=Eq(z)[u(x)] 이 성립합니다.

만약 u(x)가 충분 통계량인 경우, 기댓값이 같을 때, 두 분포의 모멘트는 같게 되는데, 이것을 moment matching이라고 합니다. moment matching 방법을 이용하여 위 식의 ˜fj(θ)을 찾아줄 수 있습니다.