Skip to contents

Ensemble of densities

This repository provides an R package and some theoretical background for Bayesian nonparametric population inference, which can also be called “inference under exchangeability” or “density inference”. The package is especially apt for the study of statistics and associations of subpopulations or subgroups.

The package is under development and has not yet reached a stable phase: function names and arguments may still change, new functions will be added. More tutorials will be prepared. Also the package name is still under consideration.

But the core functionalities do work, and have been tested in concrete research questions; see example applications below.

The package internally does the computations necessary for Bayesian inference by means of Monte Carlo methods, thanks to the R package Nimble. Users unfamiliar with Monte Carlo methods don’t have to worry, because the computations are handled automatically. Users familiar with Monte Carlo methods can easily have access to computational details and can even change some of the computation hyperparameters.

If you want to test the package we’d be very happy to help in resolving possible issues and in understanding the functionalities.

Installation

Install the package with R by using the remotes package:

remotes::install_github('pglpm/inferno')

To install a tagged version:

remotes::install_github('pglpm/inferno@vx.y.z')

To install from source, first clone the repo:

git clone https://github.com/pglpm/inferno.git

then install the package in R:

install.packages(pkgs='path/to/inferno', repos=NULL)

the installation will also automatically install all required R-dependencies.

Documentation

The vignette Bayesian nonparametric inference with inferno is a step-by-step introduction to inferno and also to Bayesian nonparametrics. It guides you through a concrete example with various kinds of inferences. You may also try to follow it using a dataset of your own.

Other tutorials, still drafts, are available at pglpm.github.io/inferno

A summary of the theoretical foundations, including further references, is available in this draft. The main idea for the internal mathematical representation comes from Dunson & Bhattacharya and Ishwaran & Zarepour.

For a low-level course on Bayesian nonparametric inference and Decision Theory see Foundations of data science.

Inferno App

An application has been built upon Inferno. This app can be used for testing out the features of Inferno with just a few button clicks, without having to write any code in R yourself.

Desktop Application

  • Currently available for Windows and MacOS. Download and install the desktop application by following this: Installation Guide.

Cross-Platform Open Source Version

  • For Windows, macOS, and Linux, you can run the PySide6 app locally using Python by following this: Setup Guide.

Contact

Please report bugs and request features or specific documentation on GitHub Issues. If you have other questions about application, theory, technical implementation, feel free to contact Luca (remove ‘XYZ’ for anti-spam purposes).