Automatic Alignment in Higher-Order Probabilistic Programming Languages

被引:1
|
作者
Lunden, Daniel [1 ]
Caylak, Gizem [1 ]
Ronquist, Fredrik [2 ,3 ]
Broman, David [1 ]
机构
[1] KTH Royal Inst Technol, EECS & Digital Futures, Stockholm, Sweden
[2] Swedish Museum Nat Hist, Dept Bioinformat & Genet, Stockholm, Sweden
[3] Stockholm Univ, Dept Zool, Stockholm, Sweden
基金
瑞典研究理事会;
关键词
Probabilistic programming; Operational semantics; Static analysis;
D O I
10.1007/978-3-031-30044-8_20
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Probabilistic Programming Languages (PPLs) allow users to encode statistical inference problems and automatically apply an inference algorithm to solve them. Popular inference algorithms for PPLs, such as sequential Monte Carlo (SMC) and Markov chain Monte Carlo (MCMC), are built around checkpoints-relevant events for the inference algorithm during the execution of a probabilistic program. Deciding the location of checkpoints is, in current PPLs, not done optimally. To solve this problem, we present a static analysis technique that automatically determines checkpoints in programs, relieving PPL users of this task. The analysis identifies a set of checkpoints that execute in the same order in every program run-they are aligned. We formalize alignment, prove the correctness of the analysis, and implement the analysis as part of the higher-order functional PPL Miking CorePPL. By utilizing the alignment analysis, we design two novel inference algorithm variants: aligned SMC and aligned lightweight MCMC. We show, through real-world experiments, that they significantly improve inference execution time and accuracy compared to standard PPL versions of SMC and MCMC.
引用
收藏
页码:535 / 563
页数:29
相关论文
共 50 条
  • [21] Kripke semantics for higher-order type theory applied to constraint logic programming languages
    Lipton, James
    Nieva, Susana
    [J]. THEORETICAL COMPUTER SCIENCE, 2018, 712 : 1 - 37
  • [22] Extensional Higher-Order Logic Programming
    Charalambidis, Angelos
    Handjopoulos, Konstantinos
    Rondogiannis, Panos
    Wadge, William W.
    [J]. LOGICS IN ARTIFICIAL INTELLIGENCE, JELIA 2010, 2010, 6341 : 91 - 103
  • [23] Higher-order chemical programming style
    Banâtre, JP
    Fradet, P
    Radenac, Y
    [J]. UNCONVENTIONAL PROGRAMMING PARADIGMS, 2005, 3566 : 84 - 95
  • [24] Extensional Higher-Order Logic Programming
    Charalambidis, Angelos
    Handjopoulos, Konstantinos
    Rondogiannis, Panagiotis
    Wadge, William W.
    [J]. ACM TRANSACTIONS ON COMPUTATIONAL LOGIC, 2013, 14 (03)
  • [25] Tabling for higher-order logic programming
    Pientka, B
    [J]. AUTOMATED DEDUCTION - CADE-20, PROCEEDINGS, 2005, 3632 : 54 - 68
  • [26] HIGHER-ORDER COMMUNICATIONS FOR CONCURRENT PROGRAMMING
    PETTOROSSI, A
    SKOWRON, A
    [J]. PARALLEL COMPUTING, 1984, 1 (3-4) : 331 - 336
  • [27] QPCF: Higher-Order Languages and Quantum Circuits
    Paolini, Luca
    Piccolo, Mauro
    Zorzi, Margherita
    [J]. JOURNAL OF AUTOMATED REASONING, 2019, 63 (04) : 941 - 966
  • [28] A REDUCTION SEMANTICS FOR IMPERATIVE HIGHER-ORDER LANGUAGES
    FELLEISEN, M
    FRIEDMAN, DP
    [J]. LECTURE NOTES IN COMPUTER SCIENCE, 1987, 259 : 206 - 223
  • [29] QPCF: Higher-Order Languages and Quantum Circuits
    Luca Paolini
    Mauro Piccolo
    Margherita Zorzi
    [J]. Journal of Automated Reasoning, 2019, 63 : 941 - 966
  • [30] Graph IRs for Impure Higher-Order Languages
    Bracevac, Oliver
    Wei, Guannan
    Jia, Songlin
    Abeysinghe, Supun
    Jiang, Yuxuan
    Bao, Yuyan
    Rompf, Tiark
    [J]. PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2023, 7 (OOPSLA):