Bean Machine: A Declarative Probabilistic Programming Language For Efficient Programmable Inference

被引:0
|
作者
Tehrani, Nazanin [1 ]
Arora, Nimar S. [1 ]
Li, Yucen Lily [1 ]
Shah, Kinjal Divesh [1 ]
Noursi, David [1 ]
Tingley, Michael [1 ]
Torabi, Narjes [1 ]
Masouleh, Sepehr [1 ]
Lippert, Eric [1 ]
Meijer, Erik [1 ]
机构
[1] Facebook Inc, Menlo Pk, CA 94025 USA
来源
INTERNATIONAL CONFERENCE ON PROBABILISTIC GRAPHICAL MODELS, VOL 138 | 2020年 / 138卷
关键词
Probabilistic Programming; Programmable Inference; Declarative Structure;
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
A number of imperative Probabilistic Programming Languages (PPLs) have been recently proposed, but the imperative style choice makes it very hard to deduce the dependence structure between the latent variables, which can also change from iteration to iteration. We propose a new declarative style PPL, Bean Machine, and demonstrate that in this new language, the dynamic dependence structure is readily available. Although we are not the first to propose a declarative PPL or to observe the advantages of knowing the dependence structure, we take the idea further by showing other inference techniques that become feasible or easier in this style. We show that it is very easy for users to program inference by composition (combining different inference techniques for different parts of the model), customization (providing a custom hand-written inference method for specific variables), and blocking (specifying blocks of random variables that should be sampled together) in a declarative language. A number of empirical results are provided where we backup these claims modulo the runtime inefficiencies of unvectorized Python. As a fringe benefit, we note that it is very easy to translate statistical models written in mathematical notation into our language.
引用
收藏
页码:485 / 496
页数:12
相关论文
共 31 条
  • [1] Probabilistic programming with programmable inference
    Mansinghka V.K.
    Schaechtle U.
    Handa S.
    Radul A.
    Chen Y.
    Rinard M.
    ACM SIGPLAN Notices, 2018, 53 (04): : 603 - 616
  • [2] Probabilistic Programming with Programmable Inference
    Mansinghka, Vikash K.
    Schaechtle, Ulrich
    Handa, Shivam
    Radul, Alexey
    Chen, Yutian
    Rinard, Martin
    PROCEEDINGS OF THE 39TH ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, PLDI 2018, 2018, : 603 - 616
  • [3] Probabilistic Programming with Programmable Inference
    Mansinghka, Vikash K.
    Schaechtle, Ulrich
    Handa, Shivam
    Radul, Alexey
    Chen, Yutian
    Rinard, Martin
    ACM SIGPLAN NOTICES, 2018, 53 (04) : 603 - 616
  • [4] Probabilistic Programming with Programmable Variational Inference
    Becker, Mccoy R.
    Lew, Alexander K.
    Wang, Xiaoyan
    Ghavami, Matin
    Huot, Mathieu
    Rinard, Martin C.
    Mansinghka, Vikash K.
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (PLDI):
  • [5] Declarative Probabilistic Programming with Datalog
    Barany, Vince
    Ten Cate, Balder
    Kimelfeld, Benny
    Olteanu, Dan
    Vagena, Zografoula
    ACM TRANSACTIONS ON DATABASE SYSTEMS, 2017, 42 (04):
  • [6] Stan: A Probabilistic Programming Language for Bayesian Inference and Optimization
    Gelman, Andrew
    Lee, Daniel
    Guo, Jiqiang
    JOURNAL OF EDUCATIONAL AND BEHAVIORAL STATISTICS, 2015, 40 (05) : 530 - 543
  • [7] Gen: A General-Purpose Probabilistic Programming System with Programmable Inference
    Cusumano-Towner, Marco F.
    Saad, Feras A.
    Lew, Alexander K.
    Mansinghka, Vikash K.
    PROCEEDINGS OF THE 40TH ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION (PLDI '19), 2019, : 221 - 236
  • [8] Semi-symbolic Inference for Efficient Streaming Probabilistic Programming
    Atkinson, Eric
    Yuan, Charles
    Baudart, Guillaume
    Mandel, Louis
    Carbin, Michael
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (OOPSLA):
  • [9] PRISM revisited: Declarative implementation of a probabilistic programming language using multi-prompt delimited control
    Abdallah, Samer
    INTERNATIONAL JOURNAL OF APPROXIMATE REASONING, 2018, 103 : 364 - 382
  • [10] Trace Types and Denotational Semantics for Sound Programmable Inference in Probabilistic Languages
    Lew, Alexander K.
    Cusumano-Towner, Marco F.
    Sherman, Benjamin
    Carbin, Michael
    Mansinghka, Vikash K.
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2020, 4 (POPL):