2021. 7. 19. 11:45ㆍBayesian
이번 글에서는 사후 분포를 계산할 수 없는 경우 이를 계산할 수 있는 방법인 MCMCMarkovChainMonteCarlo 방법 중 널리 쓰이는 깁스 샘플러Gibbssampler에 대해 알아보겠습니다.
[관련 글] [Stochastic Process] 1. 확률 과정StochasticProcess,[Stochastic Process] 2. 마르코프 체인MarkovChain
깁스 샘플러Gibbssampler
깁스 샘플러는 다차원의 결합 확률분포가 복잡하여 직접 랜덤 표본을 생성하기 어려운 경우, 각 변수의 조건부 확률분포로부터 랜덤 표본을 반복적으로 생성하면 적절한 조건 하에서 이들의 극한 분포가 결합 확률 밀도 함수가 된다는 사실에 근거하여 난수를 샘플링하는 방법입니다.
관측치 y=(y1,⋯,yn)와 모수 θ=(θ1,⋯,θp)가 있다고 가정하겠습니다.
먼저 적절한 초깃값으로 θ(0)=(θ(0)1,⋯,θ(0)p)을 생각하고 첫 번째 반복을 시행할 때, 다음과 같이 깁스 표본을 생성합니다.
θ(1)1∼p[θ1|y,θ(0)2,⋯,θ(0)p]
θ(1)2∼p[θ2|y,θ(1)1,θ(0)3,⋯,θ(0)p]
⋮
이러한 과정을 k번 반복했을 때의 결과는 아래와 같이 주어집니다.
θ(k)1∼p[θ1|θ(k−1)2,⋯,θ(k−1)p]
⋮
θ(k)p∼p[θ1|θ(k)1,⋯,θ(k)p−1]
이렇게 샘플링되는 깁스 표본들은 각각 이전 시간의 조건부 확률분포에만 영향을 받기 때문에 Markov Chain을 형성하게 되고, 깁스 표본 θG=(θ(k)1,⋯,θ(k)p)을 얻을 수 있습니다.
이러한 과정을 전체 m번 반복하면 깁스 표본 (θG1,⋯,θGm)를 얻을 수 있고 이렇게 얻은 샘플들로 우리가 원하는 평균이나 분산 등의 통계량을 Monte carlo 방법을 통해 추정할 수 있습니다.