当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Correctness of Sequential Monte Carlo Inference for Probabilistic Programming Languages
arXiv - CS - Programming Languages Pub Date : 2020-03-11 , DOI: arxiv-2003.05191
Daniel Lund\'en, Johannes Borgstr\"om, David Broman

Probabilistic programming languages (PPLs) make it possible to reason under uncertainty, by encoding inference problems as programs. In order to solve these inference problems, PPLs employ many different inference algorithms. Existing research on such inference algorithms mainly concerns their implementation and efficiency, rather than the correctness of the algorithms themselves when applied in the context of expressive PPLs. To remedy this, we give a correctness proof for sequential Monte Carlo (SMC) methods in the context of an expressive PPL calculus, representative of popular PPLs such as WebPPL, Anglican, and Birch. Previous work have studied correctness of Markov chain Monte Carlo (MCMC) using an operational semantics, and in a denotational setting without term recursion. However, for SMC inference---one of the most commonly used algorithms in PPLs as of today---no formal correctness proof exists in an untyped operational setting. In particular, an open question is if the resample locations in a probabilistic program affects the correctness of SMC. We solve this fundamental problem, and make three novel contributions: (i) we prove, for the first time, that SMC inference is correct in an untyped operational context of an expressive PPL calculus, and we show that, under mild assumptions, the correctness is independent of the placement of explicit resampling points, (ii) we formalize the bootstrap particle filter for the calculus, and (iii) we demonstrate a classical law of large numbers from the SMC literature that holds as a consequence of our proof.

中文翻译:

概率编程语言的顺序蒙特卡罗推理的正确性

概率编程语言 (PPL) 通过将推理问题编码为程序,可以在不确定的情况下进行推理。为了解决这些推理问题,PPL 采用了许多不同的推理算法。对此类推理算法的现有研究主要关注它们的实现和效率,而不是算法本身在应用于表达性 PPL 的上下文中时的正确性。为了解决这个问题,我们在表达性 PPL 演算的背景下给出了顺序蒙特卡罗 (SMC) 方法的正确性证明,代表了流行的 PPL,如 WebPPL、英国国教和 Birch。以前的工作已经使用操作语义研究了马尔可夫链蒙特卡罗 (MCMC) 的正确性,并且在没有术语递归的指称设置中。然而,对于 SMC 推理——迄今为止 PPL 中最常用的算法之一——在无类型的操作设置中不存在正式的正确性证明。特别是,一个悬而未决的问题是概率程序中的重采样位置是否会影响 SMC 的正确性。我们解决了这个基本问题,并做出了三个新的贡献:(i)我们第一次证明了 SMC 推理在表达性 PPL 演算的无类型运算上下文中是正确的,并且我们表明,在温和的假设下,正确性与显式重采样点的位置无关,(ii)我们将微积分的自举粒子滤波器形式化,以及(iii)我们证明了 SMC 文献中的经典大数定律,该定律是我们证明的结果。一个悬而未决的问题是概率程序中的重采样位置是否会影响 SMC 的正确性。我们解决了这个基本问题,并做出了三个新的贡献:(i)我们第一次证明了 SMC 推理在表达性 PPL 演算的无类型运算上下文中是正确的,并且我们表明,在温和的假设下,正确性与显式重采样点的位置无关,(ii)我们将微积分的自举粒子滤波器形式化,以及(iii)我们证明了 SMC 文献中的经典大数定律,该定律是我们证明的结果。一个悬而未决的问题是概率程序中的重采样位置是否会影响 SMC 的正确性。我们解决了这个基本问题,并做出了三个新的贡献:(i)我们第一次证明了 SMC 推理在表达性 PPL 演算的无类型运算上下文中是正确的,并且我们表明,在温和的假设下,正确性与显式重采样点的位置无关,(ii)我们将微积分的自举粒子滤波器形式化,以及(iii)我们证明了 SMC 文献中的经典大数定律,该定律是我们证明的结果。
更新日期:2020-03-12
down
wechat
bug