PyMC 용 하이브리드 몬테 카를로 샘플링 알고리즘을 설계 중이며 가능한 한 일반적인 무료로 만들기 위해 노력하고 있으므로 HMC 알고리즘 설계에 대한 조언을 찾고 있습니다. Radford의 설문 조사 장 과 Beskos 등 을 읽었습니다 . al.의 최근 HMC의 최적 (스텝 크기) 조정에 관한 논문 은 다음과 같은 팁을 모았습니다.
- 모멘텀 변수는 공분산 으로 분포되어야합니다 . 여기서 는 일반적으로 분포의 공분산 행렬과 같지만 (단순 분포의 경우) 재미있는 모양 분포의 경우에는 다를 수 있습니다. 기본적으로 나는 모드에서 헤 시안을 사용하고 있습니다.
- 궤적은 leapfrog 방법으로 계산해야합니다 (다른 통합자는 가치가없는 것 같습니다)
- 실제로 큰 문제와 그렇지 않은 경우 최적의 수락 률은 .651입니다.
- 단계 크기는 L \ times d ^ {(1/4)} 와 같이 스케일되어야합니다 . 여기서 은 자유 변수이고 는 차원 수입니다.
- 가벼운 꼬리 또는 이상한 안정성 특성을 가진 영역이있는 경우 계단 크기가 작아야합니다. 단계 크기 무작위 화가 도움이 될 수 있습니다.
내가 채택하거나 적어도 고려해야 할 다른 아이디어가 있습니까? 내가 읽어야 할 다른 논문? 예를 들어, 적합한 스텝 크기 알고리즘이 있습니까? 궤도 길이에 대한 좋은 조언이 있습니까? 실제로 더 나은 통합자가 있습니까?
누군가 이것을 커뮤니티 위키로 만드십시오.