시작하기무료로 시작하기

다중 체인

트레이스 플롯(Trace plots)은 마르코프 체인 시뮬레이션의 품질을 진단하는 데 도움을 줍니다. "좋은" 마르코프 체인은 체인 길이가 길어질수록 안정성을 보이고, 반복된 시뮬레이션(즉, 다중 체인) 간에도 일관성을 보입니다. 아래에서는 RJAGS를 사용해 네 개의 병렬 체인을 실행하고 트레이스 플롯을 그려 보겠습니다. 정의된 sleep_model은 작업 공간에 준비되어 있습니다.

이 연습은 강의의 일부입니다

RJAGS로 배우는 Bayesian 모델링

강의 보기

연습 안내

  • jags.model()을 사용해 sleep_model컴파일(COMPILE)하고 4개의 병렬 체인을 초기화하세요. 출력은 jags 객체 sleep_jags_multi에 저장하세요.

  • ms의 사후분포에서 1,000번 표본을 시뮬레이션(SIMULATE)하세요. 결과 mcmc.listsleep_sim_multi에 저장하세요.

  • sleep_sim_multihead()를 확인하세요. 4개의 병렬 체인을 담은 4개의 리스트 항목이 있음을 확인해 보세요.

  • plot()을 사용해 다중 체인의 트레이스 플롯을 그리세요. 밀도 플롯은 표시하지 않도록 suppress 하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# COMPILE the model
sleep_jags_multi <- jags.model(textConnection(sleep_model), data = list(Y = sleep_study$diff_3), ___)   

# SIMULATE the posterior    
sleep_sim_multi <- coda.samples(model = ___, variable.names = c("m", "s"), n.iter = ___)

# Check out the head of sleep_sim_multi


# Construct trace plots of the m and s chains
코드 편집 및 실행