좋은 하이브리드 / 해밀턴 몬테 카를로 알고리즘을 설계 할 때 알아야 할 사항은 무엇입니까?


12

PyMC 용 하이브리드 몬테 카를로 샘플링 알고리즘을 설계 중이며 가능한 한 일반적인 무료로 만들기 위해 노력하고 있으므로 HMC 알고리즘 설계에 대한 조언을 찾고 있습니다. Radford의 설문 조사 장Beskos 등 을 읽었습니다 . al.의 최근 HMC의 최적 (스텝 크기) 조정에 관한 논문 은 다음과 같은 팁을 모았습니다.

  • 모멘텀 변수는 공분산 으로 분포되어야합니다 . 여기서 는 일반적으로 분포의 공분산 행렬과 같지만 (단순 분포의 경우) 재미있는 모양 분포의 경우에는 다를 수 있습니다. 기본적으로 나는 모드에서 헤 시안을 사용하고 있습니다.C1C
  • 궤적은 leapfrog 방법으로 계산해야합니다 (다른 통합자는 가치가없는 것 같습니다)
  • 실제로 큰 문제와 그렇지 않은 경우 최적의 수락 률은 .651입니다.
  • 단계 크기는 L \ times d ^ {(1/4)} 와 같이 스케일되어야합니다 L×d(1/4). 여기서 L 은 자유 변수이고 d 는 차원 수입니다.
  • 가벼운 꼬리 또는 이상한 안정성 특성을 가진 영역이있는 경우 계단 크기가 작아야합니다. 단계 크기 무작위 화가 도움이 될 수 있습니다.

내가 채택하거나 적어도 고려해야 할 다른 아이디어가 있습니까? 내가 읽어야 할 다른 논문? 예를 들어, 적합한 스텝 크기 알고리즘이 있습니까? 궤도 길이에 대한 좋은 조언이 있습니까? 실제로 더 나은 통합자가 있습니까?

누군가 이것을 커뮤니티 위키로 만드십시오.

답변:


3

이 논문은 매우 흥미 롭습니다 (그러나 아직 머리를 완전히 갖지 못했지만).

Girolami M. Calderhead B. (2011) Riemann 매니 폴드 Langevin 및 Hamiltonian Monte Carlo 방법. JR 통계 학자. Soc. B. (토론). 73, 2 부. pp 1-37.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.