设计一个好的混合/哈密顿蒙特卡洛算法,我应该知道些什么?


12

我正在为PyMC设计一种混合蒙特卡洛采样算法,并且试图使其尽可能地简化和通用,因此我正在寻找有关设计HMC算法的好的建议。我已阅读雷德福的调查章节Beskos等。等人最近发表的有关HMC最佳(步长)调整的论文,我收集了以下技巧:

  • 动量变量应该与协方差分布,其中Ç通常是一样的东西分配(为简单分布)的协方差矩阵,但可以想见,是不同的(对于滑稽形分布)。默认情况下,我在该模式下使用粗麻布。C1C
  • 轨迹应使用跳越法计算(其他集成商似乎不值得)
  • 对于非常大的问题,最佳接受率是.651,否则更高。
  • 步长大小应该被缩放等,其中,大号是自由变量和d是维数。L×d(1/4)Ld
  • 当存在轻尾或其他具有奇数稳定性特征的区域时,步长应更小。步长随机化可以对此有所帮助。

还有其他我应该采纳或至少考虑的想法吗?我应该阅读其他论文吗?例如,是否有值得采用的自适应步长算法?轨迹长度是否有好的建议?实际上是否有更好的集成商?

有人请使其成为社区Wiki。

Answers:


3

这篇论文非常有趣(尽管我还没有完全了解我的想法),

Girolami M.Calderhead B.(2011)黎曼流形Langevin和汉密尔顿蒙特卡洛方法。JR统计员。Soc。B.(与讨论)。73,第2部分。pp1-37。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.