Loading [MathJax]/jax/output/CommonHTML/jax.js

5-2. MCMCEstimationofPosteriorMarkovChainMonteCarlo - 깁스샘플러GibbsSampler

2021. 7. 19. 11:45Bayesian

이번 글에서는 사후 분포를 계산할 수 없는 경우 이를 계산할 수 있는 방법인 MCMCMarkovChainMonteCarlo 방법 중 널리 쓰이는 깁스 샘플러Gibbssampler에 대해 알아보겠습니다.

[관련 글] [Stochastic Process] 1. 확률 과정StochasticProcess,[Stochastic Process] 2. 마르코프 체인MarkovChain


깁스 샘플러Gibbssampler

깁스 샘플러는 다차원의 결합 확률분포가 복잡하여 직접 랜덤 표본을 생성하기 어려운 경우, 각 변수의 조건부 확률분포로부터 랜덤 표본을 반복적으로 생성하면 적절한 조건 하에서 이들의 극한 분포가 결합 확률 밀도 함수가 된다는 사실에 근거하여 난수를 샘플링하는 방법입니다.

관측치 y=(y1,,yn)와 모수 θ=(θ1,,θp)가 있다고 가정하겠습니다.

먼저 적절한 초깃값으로 θ(0)=(θ(0)1,,θ(0)p)을 생각하고 첫 번째 반복을 시행할 때, 다음과 같이 깁스 표본을 생성합니다.

θ(1)1p[θ1|y,θ(0)2,,θ(0)p]

θ(1)2p[θ2|y,θ(1)1,θ(0)3,,θ(0)p]

이러한 과정을 k번 반복했을 때의 결과는 아래와 같이 주어집니다.

θ(k)1p[θ1|θ(k1)2,,θ(k1)p]

θ(k)pp[θ1|θ(k)1,,θ(k)p1]

이렇게 샘플링되는 깁스 표본들은 각각 이전 시간의 조건부 확률분포에만 영향을 받기 때문에 Markov Chain을 형성하게 되고, 깁스 표본 θG=(θ(k)1,,θ(k)p)을 얻을 수 있습니다.

이러한 과정을 전체 m번 반복하면 깁스 표본 (θG1,,θGm)를 얻을 수 있고 이렇게 얻은 샘플들로 우리가 원하는 평균이나 분산 등의 통계량을 Monte carlo 방법을 통해 추정할 수 있습니다.