Skip to content

Latest commit

 

History

History
43 lines (35 loc) · 3.51 KB

README.md

File metadata and controls

43 lines (35 loc) · 3.51 KB

Documentation

For an overview see the README.

Tutorials

Clay notebooks in notebooks/foerster/, rendered at replikativ.github.io/foerster. Each runs as it renders, in CI on every pull request.

Notebook Topics
Getting Started a first model, sample and observe, SMC, the posterior and the evidence
Choosing an Inference Algorithm importance sampling, SMC, particle MCMC, MCMC and BBVI on known posteriors; which to use when
Inference Methods every inference method foerster implements — what it does, when to use it, its options and cost, a run on a model with a known answer, and the papers it comes from
Models in Worlds :world-policy :fork, systems in the world, budgets, what cannot be copied
Blocks and HMC numerical blocks, HMC-within-Gibbs, checking a gradient
Streaming SMC online filtering against the Kalman filter
Programmable Inference the generative function interface, MH by selection, involutive MCMC
Interventions and Counterfactuals seeing and doing, interventions by selector, twin-world counterfactuals
From the PyMC Gallery golf putting (logistic and geometric models compared by LOO) and radon (partial pooling, NUTS on 89 parameters), each against an exact posterior; stochastic volatility (a non-centred path by NUTS, checked by a particle filter)
Marketing Mix Modeling adstock and saturation fit by NUTS on a block, ROAS by counterfactual and in the twin world, a lift test, budget splits by expected response and CVaR — against a known truth
Steering a Process SMC over scored steps of a process without a density, value estimates as twists, trajectories as training data

Guides

Guide
Language sites and their options, addresses, selectors, the rules of the spin macro
Algorithms every inference entry point and its options; foerster in an interpreter sandbox
Posteriors reading a measure: particles, traces, summaries, ESS, evidence, training data
Checking a Model and its Inference prior predictive simulation, several methods, R-hat/ESS/MCSE and SMC diagnostics, posterior predictive checks, model comparison, simulation-based calibration
Coming from Other PPLs Stan, PyMC, Turing, Gen, Anglican and WebPPL concepts in foerster, and what foerster does not have yet
Extending your own distributions, policies, proposals, MH moves and kernels; learned twists and proposals
Worlds canonical worlds, their lifecycle, failure and recovery, resources
Distributions and Reproducibility foerster.dist, writing a distribution, seeds and streams
Design inference as handlers of spindel savepoints; how each algorithm works
Literature the systems and papers foerster builds on, by method

Reference

The API reference is on cljdoc, generated from the docstrings.