Generating Efficient MCMC Kernels from Probabilistic Programs

Generating Efficient MCMC Kernels from Probabilistic Programs
复制标题

从概率程序生成高效的 MCMC 内核

DOI:
--
复制
发表时间:
2014
期刊:
International Conference on Artificial Intelligence and Statistics
影响因子:
--
通讯作者:
Noah D. Goodman
Noah D. Goodman
中科院分区:
--
文献类型:
--
作者:
Lingfeng Yang;P. Hanrahan;Noah D. Goodman

文献摘要

被引文献

相似文献

通用概率编程语言(如Church [6])用性能换取抽象:任何模型都可以用任意随机计算来表示,但需要昂贵的在线分析来进行推理。我们提出了一种技术,从一个通用的概率语言,恢复手工编码的性能水平的大都会黑斯廷斯(MH)MCMC推理算法。它以Church程序作为输入,并跟踪其执行以消除计算开销。然后,它使用切片分析每个建议的轨迹,以确定评估MH接受概率所需的最小计算。生成的增量代码比基线实现快得多(高达600倍),通常与手工编码的MH内核一样快。
Universal probabilistic programming languages (such as Church [6]) trade performance for abstraction: any model can be represented compactly as an arbitrary stochastic computation, but costly online analyses are required for inference. We present a technique that recovers hand-coded levels of performance from a universal probabilistic language, for the Metropolis-Hastings (MH) MCMC inference algorithm. It takes a Church program as input and traces its execution to remove computation overhead. It then analyzes the trace for each proposal, using slicing, to identify the minimal computation needed to evaluate the MH acceptance probability. Generated incremental code is much faster than a baseline implementation (up to 600x) and usually as fast as handcoded MH kernels.