一句话:提出 bit blasting 离散化,将混合概率程序转为布尔随机变量上的离散推断,并实现 HyBit。
概率编程语言为构建和推理概率模型提供了强大表达力,但现有系统对同时包含连续与离散结构的混合概率程序支持不足。本文提出一种混合概率程序的近似推断算法:先离散化连续分布,再在所得程序上执行离散概率推断。核心创新是称为 bit blasting 的离散化方法,它利用数字的二进制表示,使 2^b 个离散点可简洁表示为关于 poly(b) 个布尔随机变量的离散概率程序。作者证明许多常见连续分布可被 bit blast,且相较显式离散化不损失精度,并支持高效概率推断。他们实现了系统 HyBit,采用 bit blasting 后接离散概率推断。实验表明,该方法优于现有基于采样和符号推断的方法。
Probabilistic programming languages (PPLs) are an expressive means for creating and reasoning about probabilistic models. Unfortunately hybrid probabilistic programs that involve both continuous and discrete structures are not well supported by today’s PPLs. In this paper we develop a new approximate inference algorithm for hybrid probabilistic programs that first discretizes the continuous distributions and then performs discrete inference on the resulting program. The key novelty is a form of discretization that we call bit blasting , which uses a binary representation of numbers such that a domain of 2 b discretized points can be succinctly represented as a discrete probabilistic program over poly b Boolean random variables. Surprisingly, we prove that many common continuous distributions can be bit blasted in a manner that incurs no loss of accuracy over an explicit discretization and supports efficient probabilistic inference. We have built a probabilistic programming system for hybrid programs called HyBit , which employs bit blasting followed by discrete probabilistic inference. We empirically demonstrate the benefits of our approach over existing sampling-based and symbolic inference approaches
DOI 原文 · arXiv · PDF(开放获取) · DBLP
@article{GargHBM24,
title = {Bit Blasting Probabilistic Programs},
author = {Poorva Garg and Steven Holtzen and Guy Van den Broeck and Todd Millstein},
journal = {Proceedings of the ACM on Programming Languages},
volume = {8},
number = {PLDI},
year = {2024},
doi = {10.1145/3656412}
}