MCMC에서 자기 상관 플롯을 해석하는 방법


12

나는 "강아지 책"이라고도 알려진 John K. Kruschke의 Doing Bayesian Data Analysis 책을 읽음으로써 베이지안 통계에 익숙해 졌다. 9 장에서는 계층 모델이 간단한 예 도입 및 베르누이 관측치는 3 개의 동전이며, 각각 10 회 뒤집습니다. 하나는 9 헤드, 다른 하나는 5 헤드 및 다른 하나는 1 헤드를 보여줍니다.

yjiBernoulli(θj)θjBeta(μκ,(1μ)κ)μBeta(Aμ,Bμ)κGamma(Sκ,Rκ)

하이퍼 파라미터를 유추하기 위해 pymc를 사용했습니다.

with pm.Model() as model:
# define the     
    mu = pm.Beta('mu', 2, 2)
    kappa = pm.Gamma('kappa', 1, 0.1)
    # define the prior
    theta = pm.Beta('theta', mu * kappa, (1 - mu) * kappa, shape=len(N))
    # define the likelihood
    y = pm.Bernoulli('y', p=theta[coin], observed=y)

    # Generate a MCMC chain
    step = pm.Metropolis()
    trace = pm.sample(5000, step, progressbar=True)
    trace = pm.sample(5000, step, progressbar=True)


burnin = 2000  # posterior samples to discard
thin = 10  # thinning 
pm.autocorrplot(trace[burnin::thin], vars =[mu, kappa])

내 질문은 자기 상관에 관한 것입니다. 자기 상관을 어떻게 해석해야합니까? 자기 상관도를 해석하는 데 도움을 주시겠습니까?

여기에 이미지 설명을 입력하십시오

샘플이 서로 멀어 질수록 샘플 간의 상관 관계가 줄어 듭니다. 권리? 이것을 사용하여 최적의 씨닝을 찾을 수 있습니까? 씨닝이 후방 샘플에 영향을 줍니까? 결국,이 음모의 용도는 무엇입니까?

답변:


13

우선 : MCMC 출력을 처리하기위한 메모리 및 계산 시간이 제한되지 않는 경우 씬닝은 결코 "최적"이 아닙니다. 동일한 수의 MCMC 반복에서 체인이 얇아지면 항상 (평균적으로) MCMC 근사치의 손실 정밀도로 이어집니다.

따라서 자기 상관 또는 다른 진단을 기반으로하는 일상적인 숱은 권장되지 않습니다 . MCMC의 체인 얇게하기에 대한 링크, WA & Eaton, MJ (2012)를 참조하십시오. 생태와 진화의 방법, 3, 112-115.

그러나 매일 실습에서는 샘플러가 잘 혼합되지 않은 모델로 작업해야하는 일반적인 경우가 있습니다 (높은 자기 상관). 이 경우

1) 가까운 체인 요소는 매우 유사합니다. 즉, 하나를 버려도 많은 정보를 잃어 버리지 않습니다 (즉, 자기 상관 플롯에 표시됨).

2) 수렴을 얻으려면 많은 반복이 필요합니다. 즉, 얇지 않으면 매우 큰 체인을 얻게됩니다. 이로 인해 전체 체인 작업이 매우 느리거나 많은 스토리지 비용이 들거나 많은 변수를 모니터링 할 때 메모리 문제가 발생할 수 있습니다.

3) 또한, 얇아지면 JAGS도 약간 빨라진다는 느낌이 들지만 (동시에 몇 번 더 반복 할 수 있음).

그래서 내 요점은 : 자기 상관도는 얇아 짐을 통해 잃어버린 정보의 양에 대한 대략적인 추정치를 제공합니다 (이것은 전체 사후에 대한 평균이지만 손실은 특정 지역에서 더 높을 수 있습니다).

이 가격을 지불 할 가치가 있는지 여부는 컴퓨팅 리소스를 절약하고 나중에 시간을 절약 할 수있는 이점에 따라 결정됩니다. MCMC 반복이 저렴하면 몇 번의 반복을 더 실행하여 항상 씨닝 손실을 보상 할 수 있습니다.


당신의 대답에 대해 Florian에게 감사합니다. 그것은 나에게 매우 유용했습니다.
Adham
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.