Gen.jl
A general-purpose probabilistic programming system with programmable inference, embedded in Julia
Reference
- Markov chain Monte Carlo (MCMC)
- MCMC in Gen
- Built-in Stationary Kernels
- Enabling Dynamic Checks
- Composite Kernel DSL
- Involutive MCMC
- Reverse Kernels
- API
- Tutorials and Case Studies
- Modeling Language Implementation
- Learning Generative Functions
- Built-in Modeling Language
- Annotations
- Making random choices
- Calling generative functions
- Composite addresses
- Tilde syntax
- Return value
- Trainable parameters
- Differentiable programming
- Static Modeling Language
- Extending Gen
- Custom gradients
- Custom incremental computation
- Custom distributions
- Custom generative functions
- Custom modeling languages
- Selections
- Importance Sampling
- Generative Functions
- Introduction
- Mathematical concepts
- Traces
- Updating traces
- Differentiable programming
- Generative function interface
- Optimizing Trainable Parameters
- Optimizing Trainable Parameters
- MAP Optimization
- Variational Inference
- Trace Translators
- Deterministic Trace Translators
- General Trace Translators
- Symmetric Trace Translators
- Simple Extending Trace Translators
- Trace Transform DSL
- API
- Generative Function Combinators
- Particle Filtering
- Choice Maps
- Getting Started
- Probability Distributions
- Built-In Distributions
- Defining New Distributions Inline with the
@dist
DSL - Mixture Distribution Constructors
- Defining New Distributions From Scratch
- Gen.jl