Mcx

screenshot of Mcx

Express & compile probabilistic programs for performant inference on CPU & GPU. Powered by JAX.

Overview

MCX is a probabilistic programming library focused on sampling methods. It transforms model definitions to generate logpdf or sampling functions, JIT-compiled with JAX, supporting batching on CPU, GPU, or TPU. It aims to offer sequential inference and performant sampling methods for Bayesian deep learning.

Features

  • Laser-focus on sampling methods
  • JIT-compiled with JAX for GPU and TPU support
  • Modular and re-usable model definitions
  • Batch sampling runtime with interactive mode for real-time monitoring
  • Support for neural network layers, stochastic support, and causal inference tools

Summary

MCX is a probabilistic programming library with a focus on sampling methods, aimed at providing performant sampling approaches for Bayesian deep learning. It emphasizes modular model definitions and re-usability, supporting GPU and TPU execution. With features such as batch sampling and interactive mode, MCX offers a versatile tool for probabilistic programming enthusiasts.