728x90
- Bayesian Analytics
- Integration 없이 Posterior Distribution을 찾는 방법
- $Posterior \: Probability \propto (Prior \: Probability \times Likelihood)$ 를 이용
- Case 1: Easy
- Conjugate Family를 가진다
- Prior가 어떤 likelihood를 만났는데 그 결과인 posterior의 분포와 같다 (parameter value는 다를 수 있음)
- Case 2: Not easy
- Simulation을 이용
- MCMC (Markov Chain Monte Carlo)를 사용 : Bayesian Algorithm은 아님
- 우리가 얻고자 하는 target distribution에 해당되는 값들을 얻어보자라는 idea
- Monte Carlo
- 어떤 확률분포를 생각하고 거기서부터 굉장히 많은 숫자의 Random Sample을 draw : 내가 원하는 확률분포 find
- i : i번째 random sample
- i를 굉장히 큰 숫자 R만큼 늘려서 시행한다면, 내가 원하는 분포를 볼 수 있지 않을까하는 Idea
- Markov Chain + Monte Carlo
- 굉장히 많은 수의 Random Sample을 얻고자 하는 것은 동일
- 매 iteration이 올 때마다 얻는 Sample은 그 전단계에서 얻어진 Random Sample의 값이 무엇이냐에 따라 달라짐
- Markov Chain + Monte Carlo의 2가지 Algorithms
- Algorithm 1 : Gibbs Sampler
- Algorithm 2 : Metropolis-Hastings
- Gibbs Sampler
- joint posterior distribution을 알기 힘들다 but conditional posterior은 알고 있음
- 나머지 parameter는 기본으로 하고, 한 parameter의 분포를 알 수 있지 않을까?
- conditional distribution에서 계속되는 sampling을 엇갈리게 해준다면 joint probability distribution에서 얻어진 것과 거의 동일
- Joint posterior distribution을 개별적인 conditional distribution에서 monte carlo sampling을 많이 수행하다 보면, 궁극적으로 그 작업을 많이 반복했을 때 구할 수 있음
- $y, X$ : Data
- $\theta_{1}, \theta_{2}$ : Parameters
- $\theta_{1}$ : slope 모수, $\theta_{2}$ : variance 모수
- Metropolis - Hastings
- joint posterior distribution을 알기 힘들고 & conditional posterior도 모름
- 도전자와 챔피언이 존재
- 챔피언이 현재 값을 가지고 있고, 도전자는 그 자리에 자신이 가겠다고 새로 나타난 값
- 챔피언과 도전자의 posterior distribution을 비교
- Accept : 도전자가 더 강하게 나타날 경우(확률 가능성이 더 높을 경우) 해당 값으로 대체
- Reject : 챔피언이 더 강하게 나타날 경우 해당 값을 유지시킴
- 해당 과정을 지속해서 반복 : Posterior Distribution을 만족하는 Draw들이 됨
- $\theta_{0}$ : 시작점이 됨
- $\theta_{candidate}$ 를 $\theta^{(0)}$에다 $\delta$라는 +/- jump를 부여 : Metropolis - Hastings의 Random Walk Algo
- $\theta_{0}$ 와 $\theta_{candidate}$ 의 2가지의 draw가 경쟁을 하게 됨
- $\frac {N(\theta^{(0)} | \theta_{candidate})} {N(\theta_{candidate})| \theta^{(0)}} = 1$ : Normal symmetry
- $\theta^{(1)} = \theta_{candidate} $ if $ a > u , \theta^{(1)} = \theta^{(0)} otherwise$
- 해당 과정을 반복해서 $\theta^{(1)}, .... , \theta^{(R)}$ 까지 구하기
- Posterior Distribution of Parameters : (w/o Integration)
- $Posterior \: Probability \propto (Prior \: Probability \times Likelihood)$ 를 이용
- Easy: Conjugate Family를 이용 (Prior와 Posterior의 분포가 동일)
- Not Easy :
- Gibbs Sampler (All draws are accepted): Joint Posterior Distribution은 모르지만 Conditional Posterior은 알고 있음
- Metropolis-Hastings (Some draws are accepted): Joint Posterior Distribution도 모르고 Conditional Posterior도 모름
- Convergence : 실제 $\theta$들의 값이 posterior 분포를 반영하지 않을 수도 있음
- Starting Points : 여러 starting point들에서도 convergence patttern이 똑같다면 posterior 분포가 확실히 존재함
- Burn - in : 수렴하는 Draw만 사용해야 함 (Burn - in 지점 이후로부터 converge 한다)
- Autocorrelation : 매 iteration 마다 얻는 draw는 그 전단계의 draw 값에 따라 영향을 받게 됨
- $\tau$가 너무 크다면 : $\theta_{candidate}$와 $\theta_{0}$은 굉장한 차이 존재 -> 모 아니면 도가 됨 (MCMC Plot : 값들이 변동이 없기 때문에 분포를 구성하기가 쉽지 않음)
- $\tau$가 너무 작다면 : $\theta_{candidate}$와 $\theta_{0}$은 상당히 비슷함 -> Posterior Ratio가 크게 다르지 않음 -> 거의 다 새로운 Draw로 Accept가 됨 (MCMC Plot : 너무 움직임이 조금씩 가는데 항상 활발하게 움직임)
- 충분한 범위 내에서 stable 하게 움직여야 바람직함
728x90