一句话:提出以随机估计密度比为核心的 PPL,首次同时支持边缘化、嵌套推断、随机控制流与可编程推断。
论文针对现有概率编程语言(PPL)必须精确计算推断所需密度比、从而限制表达力的问题,提出以随机估计密度比为核心的新 PPL 设计与实现路径。作者放宽精确密度约束,将支持边缘化与嵌套推断、无限制随机控制流、连续/离散采样及可编程推断的程序编译为随机算法,无偏估计密度及其倒数,并在修正 Monte Carlo 推断中保证依赖不精确密度比仍 sound。论文用新核心演算 λSP 和逻辑关系证明编译器正确,在 Gen 的开源扩展 GenSP 上评估六个推断问题:可自动为昂贵精确密度生成快速估计器,噪声基本不影响收敛,构造性可靠估计器与手写方案相当且仅小常数开销。
We present a new approach to the design and implementation of probabilistic programming languages (PPLs), based on the idea of stochastically estimating the probability density ratios necessary for probabilistic inference. By relaxing the usual PPL design constraint that these densities be computed exactly, we are able to eliminate many common restrictions in current PPLs, to deliver a language that, for the first time, simultaneously supports first-class constructs for marginalization and nested inference, unrestricted stochastic control flow, continuous and discrete sampling, and programmable inference with custom proposals. At the heart of our approach is a new technique for compiling these expressive probabilistic programs into randomized algorithms for unbiasedly estimating their densities and density reciprocals. We employ these stochastic probability estimators within modified Monte Carlo inference algorithms that are guaranteed to be sound despite their reliance on inexact estimates of density ratios. We establish the correctness of our compiler using logical relations over the semantics of λSP, a new core calculus for modeling and inference with stochastic probabilities. We also implement our approach in an open-source extension to Gen, called GenSP, and evaluate it on six challenging inference problems adapted from the modeling and inference literature. We find that: (1) can automate fast density estimators for programs with very expensive exact densities; (2) convergence of inference is mostly unaffected by the noise from these estimators; and (3) our sound-by-construction estimators are competitive with hand-coded density estimators, incurring only a small constant-factor overhead.
@article{paperbot1943,
title = {Probabilistic Programming with Stochastic Probabilities},
author = {Alexander K. Lew and Matin Ghavamizadeh and Martin C. Rinard and Vikash K. Mansinghka},
journal = {Proceedings of the ACM on Programming Languages},
volume = {7},
number = {PLDI},
year = {2023},
doi = {10.1145/3591290}
}