Probabilistic programs are typically normal-looking programs describing posterior probability distributions. They intrinsically code up randomized algorithms and have long been at the heart of modern machine learning and approximate computing. We explore the theory of generating functions [19] and investigate its usage in the exact quantitative reasoning of probabilistic programs. Important topics include the exact representation of program semantics [13], proving exact program equivalence [5], and -- as our main focus in this extended abstract -- exact probabilistic inference. In probabilistic programming, inference aims to derive a program's posterior distribution. In contrast to approximate inference, inferring exact distributions comes with several benefits [8], e.g., no loss of precision, natural support for symbolic parameters, and efficiency on models with certain structures. Exact probabilistic inference, however, is a notoriously hard task [6,12,17,18]. The challenges mainly arise from three program constructs: (1) unbounded while-loops and/or recursion, (2) infinite-support distributions, and (3) conditioning (via posterior observations). We present our ongoing research in addressing these challenges (with a focus on conditioning) leveraging generating functions and show their potential in facilitating exact probabilistic inference for discrete probabilistic programs.
翻译:概率预测程序通常是描述后概率分布的正常的、看似正常的方案,描述后概率分布。它们本质上是随机算法的编码,长期以来一直是现代机器学习和近似计算的核心。我们探索产生函数的理论[19],并调查其用于精确的概率方案定量推理。重要议题包括方案语义的准确表述[13],证明精确的等效程序[5],以及 -- -- 作为我们在这个扩展的抽象中的主要焦点 -- -- 精确概率推论。在概率编程中,推论旨在得出一个方案的后方分布。与近似推论相反,推断精确分布具有若干好处[8],例如,不丧失精确性、对象征参数的自然支持和某些结构模型的效率。但异常概率推论是一个臭名昭著的艰巨任务[6、12、17、18]。挑战主要来自三个方案构造:(1)无约束的边际和/或循环,(2)无限支持分布,以及(3)调节(通过远方位推算的精确度调整,我们展示了当前研究的焦点和直率功能,以产生这些精确的精度来应对挑战)。