Crate modppl

Source
Expand description

modppl is a a library for general-purpose, low-level probabilistic modeling and inference. Modeling and inference are separated by a trait interface, called GenFn.

Any function that implements GenFn (representing a Bayesian model) can use and compose any inference procedure in the standard inference library.

Re-exports§

pub use trie::Trie;
pub use address::SplitAddr;
pub use address::AddrMap;
pub use address::normalize_addr;
pub use gfi::Trace;
pub use gfi::GenFn;
pub use gfi::ArgDiff;
pub use modeling::dists::u01;
pub use modeling::dists::Distribution;
pub use modeling::dists::bernoulli;
pub use modeling::dists::uniform_continuous;
pub use modeling::dists::uniform;
pub use modeling::dists::uniform_discrete;
pub use modeling::dists::categorical;
pub use modeling::dists::normal;
pub use modeling::dists::mvnormal;
pub use modeling::dists::geometric;
pub use modeling::dists::poisson;
pub use modeling::dists::gamma;
pub use modeling::dists::beta;
pub use modeling::dyngenfn::DynTrie;
pub use modeling::dyngenfn::DynTrace;
pub use modeling::dyngenfn::DynGenFn;
pub use modeling::dyngenfn::DynGenFnHandler;
pub use modeling::dynunfold::DynUnfold;
pub use modeling::dynunfold::DynParticles;
pub use inference::importance_sampling;
pub use inference::importance_resampling;
pub use inference::metropolis_hastings;
pub use inference::mh;
pub use inference::mh;
pub use inference::regenerative_metropolis_hastings;
pub use inference::regen_mh;
pub use inference::ParticleSystem;

Modules§

address
Utilities for parsing addresses (keys used in the Trie data structure).
gfi
Definition of the Generative Function Interface (GFI).
inference
Standard inference library.
modeling
Distributions and a modeling DSL built on Tries.
prelude
trie
Implementations of the Trie data structure, used extensively in modeling::DynGenFn.

Functions§

logsumexp
For an input vector of [x1, ..., xn], return log(exp(x1) + ... + exp(xn)).