Slice Sampling for Probabilistic Programming
We introduce the first, general purpose, slice sampling inference engine for probabilistic programs. This engine is released as part of StocPy, a new Turing-Complete probabilistic programming language, available as a Python library. We present a transdimensional generalisation of slice sampling which is necessary for the inference engine to work on traces with different numbers of random variables. We show that StocPy compares favourably to other PPLs in terms of flexibility and usability, and that slice sampling can outperform previously introduced inference methods. Our experiments include a logistic regression, HMM, and Bayesian Neural Net.
Code (0)
등록된 구현이 없습니다.
Tasks
Probabilistic ProgrammingregressionSimilar Papers 제목 키워드 기반
diff-SAT -- A Software for Sampling and Probabilistic Reasoning for SAT and Answer Set Programming
This paper describes diff-SAT, an Answer Set and SAT solver which combines regular solving with the capability to use probabilistic clauses, facts and rules, and to sample an optimal world-view (multiset of satisfying Bo…
MultiVerse: Causal Reasoning using Importance Sampling in Probabilistic Programming
We elaborate on using importance sampling for causal reasoning, in particular for counterfactual inference. We show how this can be implemented natively in probabilistic programming. By considering the structure of the c…
counterfactualCounterfactual InferenceProbabilistic ProgrammingTransforming Probabilistic Programs for Model Checking
Probabilistic programming is perfectly suited to reliable and transparent data science, as it allows the user to specify their models in a high-level language without worrying about the complexities of how to fit the mod…
modelProbabilistic ProgrammingAmortized Rejection Sampling in Universal Probabilistic Programming
Naive approaches to amortized inference in probabilistic programs with unbounded loops can produce estimators with infinite variance. This is particularly true of importance sampling inference in programs that explicitly…
Probabilistic ProgrammingSlice sampling covariance hyperparameters of latent Gaussian models
The Gaussian process (GP) is a popular way to specify dependencies between random variables in a probabilistic model. In the Bayesian framework the covariance structure can be specified using unknown hyperparameters. Int…