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
关键词
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
相关论文
共 50 条
  • [21] 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
  • [22] Inference Compilation and Universal Probabilistic Programming
    Tuan Anh Le
    Baydin, Atilim Gunes
    Wood, Frank
    ARTIFICIAL INTELLIGENCE AND STATISTICS, VOL 54, 2017, 54 : 1338 - 1348
  • [23] A New Approach to Probabilistic Programming Inference
    Wood, Frank
    van de Meent, Jan Willem
    Mansinghka, Vikash
    ARTIFICIAL INTELLIGENCE AND STATISTICS, VOL 33, 2014, 33 : 1024 - 1032
  • [24] MAP Inference for Probabilistic Logic Programming
    Bellodi, Elena
    Alberti, Marco
    Riguzzi, Fabrizio
    Zese, Riccardo
    THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2020, 20 (05) : 641 - 655
  • [25] Fuzzy programming of multiperiod probabilistic inference
    Murgu, A
    KNOWLEDGE-BASED INTELLIGENT INFORMATION ENGINEERING SYSTEMS & ALLIED TECHNOLOGIES, PTS 1 AND 2, 2001, 69 : 1468 - 1472
  • [26] The magic of logical inference in probabilistic programming
    Gutmann, Bernd
    Thon, Ingo
    Kimmig, Angelika
    Bruynooghe, Maurice
    De Raedt, Luc
    THEORY AND PRACTICE OF LOGIC PROGRAMMING, 2011, 11 : 663 - 680
  • [27] Structured Factored Inference for Probabilistic Programming
    Pfeffer, Avi
    Ruttenberg, Brian
    Kretschmer, William
    O'Connor, Alison
    INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE AND STATISTICS, VOL 84, 2018, 84
  • [28] Declarative probabilistic logic programming in discrete-continuous domains
    Dos Martires, Pedro Zuidberg
    De Raedt, Luc
    Kimmig, Angelika
    ARTIFICIAL INTELLIGENCE, 2024, 337
  • [29] A Functional Account of Probabilistic Programming with Possible Worlds Declarative Pearl
    van den Berg, Birthe
    Schrijvers, Tom
    FUNCTIONAL AND LOGIC PROGRAMMING, FLOPS 2022, 2022, 13215 : 186 - 204
  • [30] Stan: A Probabilistic Programming Language
    Carpenter, Bob
    Gelman, Andrew
    Hoffman, Matthew D.
    Lee, Daniel
    Goodrich, Ben
    Betancourt, Michael
    Brubaker, Marcus A.
    Guo, Jiqiang
    Li, Peter
    Riddell, Allen
    JOURNAL OF STATISTICAL SOFTWARE, 2017, 76 (01): : 1 - 29