HyperAIHyperAI

Command Palette

Search for a command to run...

마르코프 체인 몬테카를로 방법 MCMC

날짜

엠씨엠씨 이는 마르코프 체인을 기반으로 한 무작위 분포에서 샘플링을 위한 알고리즘으로, 확률 공간에서 무작위로 샘플링하여 관심 매개변수의 사후 분포를 근사합니다.

MCMC의 기본 이론은 마르코프 과정입니다. 관련 알고리즘에서, 지정된 분포를 샘플링하기 위해 마르코프 과정에 따라 모든 상태에서 이 과정을 시뮬레이션하고, 최종적으로 안정적인 분포로 수렴할 때까지 상태 전이를 지속적으로 수행할 수 있습니다.

전반적인 아이디어는 복잡한 분포를 대체하기 위해 안정적인 분포를 사용하고, 이를 사용하여 표본을 추출하고 적합시켜 최종적으로 복잡한 표본의 분포를 얻는 것입니다.

일반적인 MCMC 방법: 메트로폴리스-헤이스팅스 샘플링, 깁스 샘플링

메트로폴리스-헤이스팅스 샘플링

1: 마르코프 체인의 초기 상태를 초기화합니다. latexX_0 = x_0latex {X\mathop{{}}\nolimits\_{{0}}\text{ }=\text{ }x\mathop{{}}\nolimits\_{{0}}}latexX_0 = x_0

2: latext = 0, 1, 2, latex {t\text{ }=\text{ }0,\text{ }1,\text{ }2,\text{ }…}latext = 0, 1, 2,  사이클의 다음 프로세스를 샘플링하세요.

  • latextlatex {t}latext 순간에 마르코프 체인의 상태는 latexX_t = x_tlatex {X\mathop{{}}\nolimits\_{{t}}\text{ }=\text{ }x\mathop{{}}\nolimits\_{{t}}}latexX_t = x_t 이고 샘플링latexy  q(xx_t)latex {y\text{ } \sim \text{ }q{ \left( {x \left| x\mathop{{}}\nolimits\_{{t}}\right. } \right) }}latexy  q(xx_t)
  • 균일 분포에서의 샘플링latexu  Uniform[0,1]latex {u\text{ } \sim \text{ }Uniform{ \left[ {0,1} \right] }}latexu  Uniform[0,1]
  • latex {u\text{ } < \text{ } \alpha { \left( {x\mathop{{}}\nolimits\_{{t}},y} \right) }\text{ }=\text{ }min{ \left\{ {\frac{{p{ \left( {y} \right) }q{ \left( {x\mathop{{}}\nolimits\_{{t}} \left| y\right. } \right) }}}{{p{ \left( {x\mathop{{}}\nolimits\_{{t}}} \right) }p{ \left( {y \left| {x\mathop{{}}\nolimits\_{{t}}\text{ } \to \text{ }y}, 즉 latexX_t+1 = ylatex {X\mathop{{}}\nolimits\_{{t+1}}\text{ }=\text{ }y}latexX_t+1 = y
  • 그렇지 않으면 전송이 허용되지 않습니다. 즉, latexX_t+1 = x_tlatex {X\mathop{{}}\nolimits\_{{t+1}}\text{ }=\text{ }x\mathop{{}}\nolimits\_{{t}}}latexX_t+1 = x_t

깁스 샘플링

1: latexX_0 = x_0, Y_0 = y_0latex {X\mathop{{}}\nolimits\_{{0}}\text{ }=\text{ }x\mathop{{}}\nolimits\_{{0}},\text{ }Y\mathop{{}}\nolimits\_{{0}}\text{ }=\text{ }y\mathop{{}}\nolimits\_{{0}}}latexX_0 = x_0, Y_0 = y_0를 무작위로 초기화합니다.

2: latex의순환샘플링t = 0, 1, 2, latex의 순환 샘플링 {t\text{ }=\text{ }0,\text{ }1,\text{ }2,\text{ }…}latex의순환샘플링t = 0, 1, 2, 

  • latexy_t+1  p(yx_t)latex {y\mathop{{}}\nolimits\_{{t+1}}\text{ } \sim \text{ }p{ \left( {y \left| x\mathop{{}}\nolimits\_{{t}}\right. } \right) }}latexy_t+1  p(yx_t)
  • latexx_t+1  p(xy_t+1)latex {x\mathop{{}}\nolimits\_{{t+1}}\text{ } \sim \text{ }p{ \left( {x \left| y\mathop{{}}\nolimits\_{{t+1}}\right. } \right) }}latexx_t+1  p(xy_t+1)

참고문헌

【1】MCMC 시작하기

【2】마르코프 체인 몬테카를로 방법에 대한 간략한 분석

AI로 AI 구축

아이디어에서 출시까지 — 무료 AI 코코딩, 즉시 사용 가능한 환경, 최적의 GPU 가격으로 AI 개발을 가속화하세요.

AI 협업 코딩
바로 사용 가능한 GPU
최적의 가격

HyperAI Newsletters

최신 정보 구독하기
한국 시간 매주 월요일 오전 9시 에 이번 주의 최신 업데이트를 메일로 발송합니다
이메일 서비스 제공: MailChimp