ELFI - Engine for Likelihood-Free Inference

ELFI is a statistical software package written in Python for Approximative Bayesian Computation (ABC), also known e.g. as likelihood-free inference, simulator-based inference, approximative Bayesian inference etc. This is useful, when the likelihood function is unknown or difficult to evaluate, but a generative simulator model exists.

The probabilistic inference model is defined as a directed acyclic graph, which allows for an intuitive means to describe inherent dependencies in the model. The inference pipeline is automatically parallelized with Dask, which scales well from a desktop up to a cluster environment. The package includes functionality for input/output operations and visualization.

Currently implemented ABC methods:

  • rejection sampler
  • Sequential Monte Carlo sampler
  • Bayesian Optimization for Likelihood-Free Inference (BOLFI) framework

GitHub page: https://github.com/elfi-dev/elfi

See examples under the notebooks directory to get started. Limited user-support may be asked from elfi-support.at.hiit.fi, but the Gitter chat is preferable.