中文

C3:基于续延与调用点缓存的概率程序轻量级增量化 MCMC

人工智能 2015-09-09 v2 编程语言

摘要

用于实现概率编程语言 MCMC 的轻量级源到源变换方法因其简单性、对现有确定性代码的支持以及能在现有快速运行时上执行而广受欢迎。然而它们也很慢,需要在每次 Metropolis Hastings 提议时完整重新执行程序。我们提出轻量级方法的一个新扩展 C3,其实现了 MH 提议的高效增量式重新执行。C3 基于两个核心思想:将概率程序转换为续延传递风格 (CPS),以及缓存函数调用的结果。我们展示在几个常见模型上,C3 将提议运行时间减少了 20-100 倍,在某些情况下将运行时间复杂度从模型大小的线性降为常量。我们还在复杂的逆过程式建模应用上展示了近一个数量级加速。

关键词

引用

@article{arxiv.1509.02151,
  title  = {C3: Lightweight Incrementalized MCMC for Probabilistic Programs using Continuations and Callsite Caching},
  author = {Daniel Ritchie and Andreas Stuhlmüller and Noah D. Goodman},
  journal= {arXiv preprint arXiv:1509.02151},
  year   = {2015}
}

备注

Fix typo in author name