arrow
Return

DNest4: Diffusive Nested Sampling in C plus plus and Python

delete2018-01-01
delete37
delete
OA
AI
B
Brendon J. Brewer *
D
Daniel Foreman-Mackey
DOI:10.18637/jss.v086.i07delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
In probabilistic (Bayesian) inferences, we typically want to compute properties of the posterior distribution, describing knowledge of unknown quantities in the context of a particular dataset and the assumed prior information. The marginal likelihood, also known as the evidence, is a key quantity in Bayesian model selection. The diffusive nested sampling algorithm, a variant of nested sampling, is a powerful tool for generating posterior samples and estimating marginal likelihoods. It is effective at solving complex problems including many where the posterior distribution is multimodal or has strong dependencies between variables. DNest4 is an open source (MIT licensed), multi-threaded implementation of this algorithm in C++11, along with associated utilities including: (i) 'RJObject', a class template for finite mixture models; and (ii) a Python package allowing basic use without C++ coding. In this paper we demonstrate DNest4 usage through examples including simple Bayesian data analysis, finite mixture models, and approximate Bayesian computation.
Keywords:
Bayesian inference
Markov chain Monte Carlo
Metropolis algorithm
Bayesian computation
nested sampling
C++11
Python

Journal

Journal of Statistical Software cover
Journal of Statistical Software
IF:
8.1
Papers:
622
Citations:
4.6W

Organization

U
University of Washington
Scholars:
8.0W
Papers: 7.0W
Citations: 12.5W
U
University of Auckland
Scholars:
2.3W
Papers: 2.4W
Citations: 3.3W