nimble - MCMC, Particle Filtering, and Programmable Hierarchical Modeling
A system for writing hierarchical statistical models largely compatible with 'BUGS' and 'JAGS', writing nimbleFunctions to operate models and do basic R-style math, and compiling both models and nimbleFunctions via custom-generated C++. 'NIMBLE' includes default methods for MCMC, Laplace Approximation, deterministic nested approximations, Monte Carlo Expectation Maximization, and some other tools. The nimbleFunction system makes it easy to do things like implement new MCMC samplers from R, customize the assignment of samplers to different parts of a model from R, and compile the new samplers automatically via C++ alongside the samplers 'NIMBLE' provides. 'NIMBLE' extends the 'BUGS'/'JAGS' language by making it extensible: New distributions and functions can be added, including as calls to external compiled code. Although most people think of MCMC as the main goal of the 'BUGS'/'JAGS' language for writing models, one can use 'NIMBLE' for writing arbitrary other kinds of model-generic algorithms as well. A full User Manual is available at <https://r-nimble.org>.
Last updated
bayesian-inferencebayesian-methodshierarchical-modelsmcmcprobabilistic-programmingopenblascpp
13.98 score 195 stars 31 dependents 3.3k scripts 7.4k downloadsnimbleSMC - Sequential Monte Carlo Methods for 'nimble'
Includes five particle filtering algorithms for use with state space models in the 'nimble' system: 'Auxiliary', 'Bootstrap', 'Ensemble Kalman filter', 'Iterated Filtering 2', and 'Liu-West', as described in Michaud et al. (2021), <doi:10.18637/jss.v100.i03>. A full User Manual is available at <https://r-nimble.org>.
Last updated
4.84 score 4 stars 58 scripts 625 downloadsbigGP - Distributed Gaussian Process Calculations
Distributes Gaussian process calculations across nodes in a distributed memory setting, using Rmpi. The bigGP class provides high-level methods for maximum likelihood with normal data, prediction, calculation of uncertainty (i.e., posterior covariance calculations), and simulation of realizations. In addition, bigGP provides an API for basic matrix calculations with distributed covariance matrices, including Cholesky decomposition, back/forwardsolve, crossproduct, and matrix multiplication.
Last updated
openblasopenmpi
3.72 score 5 stars 21 scripts 57 downloadsnimbleQuad - Laplace Approximation, Quadrature, and Nested Deterministic Approximation Methods for 'nimble'
Provides deterministic approximation methods for use with the 'nimble' package. These include Laplace approximation and higher-order extension of Laplace approximation using adaptive Gauss-Hermite quadrature (AGHQ), plus nested deterministic approximation methods related to the 'INLA' approach. Additional information is available in the NIMBLE User Manual and a 'nimbleQuad' tutorial, both available at <https://r-nimble.org/documentation.html>.
Last updated
2.69 score 3 dependents 15 scripts 3.6k downloadsspectralGP - Approximate Gaussian Processes Using the Fourier Basis
Routines for creating, manipulating, and performing Bayesian inference about Gaussian processes in one and two dimensions using the Fourier basis approximation: simulation and plotting of processes, calculation of coefficient variances, calculation of process density, coefficient proposals (for use in MCMC). It uses R environments to store GP objects as references/pointers.
Last updated
1.69 score 1 stars 49 scripts 212 downloads