RxInfer Logo

Welcome to RxInfer.jl - a powerful Julia package for fast and flexible Bayesian inference. By combining message passing algorithms with model's graph structure, RxInfer makes probabilistic programming both efficient and accessible. Whether you're working on machine learning, signal processing, or complex statistical models, RxInfer provides the tools you need to solve real-world inference problems.

Why RxInfer?

Copied to your clipboard!

Discover the power of reactive Bayesian inference

User Friendly

Clean specification of probabilistic models and inference constraints.

Streaming Datasets

Reactive message passing-based inference for streaming datasets.

Hybrid Models

Support for hybrid models combining discrete and continuous latent variables.

Scalable

Scalability for large models with millions of parameters and observations.

Extensible

Designed to be extended with custom operations.

Community Driven

Join our vibrant community of developers and researchers.

Hello World with RxInfer

Copied to your clipboard!

Probabilistic programming made simple

RxInfer makes it easy to specify both generative models and variational constraints using familiar mathematical notation. The flexible design lets you control exactly how inference should be performed.

Generative Models

Define probabilistic models with intuitive syntax

Variational Constraints

Customize inference with flexible constraints

Graphical Models

Let RxInfer choose the best inference procedure

1using RxInfer
2
3@model function generative_model(y)
4    μ  ~ Normal(mean = 0.0, variance = 1.0)
5    τ  ~ Gamma(shape = 1.0, rate = 1.0)
6    y .~ Normal(mean = μ, precision = τ)
7end
8
9@constraints function mean_field()
10    q(μ, τ) = q(μ)q(τ)
11end
12
13result = infer(
14    model = generative_model(),
15    data = load_dataset(),
16    constraints = mean_field(),
17    iterations = 10
18)

Explore more interactive examples and discover the full potential of reactive Bayesian inference.

View Examples

RxInfer is Fast

Copied to your clipboard!

Optimized for performance and scalability

Below is a benchmark comparison between RxInfer's message passing algorithm and Hamiltonian Monte Carlo (HMC) on a linear dynamical system. The benchmark measures time to convergence for inferring the posterior distribution. As shown, on this problem RxInfer's optimized message passing achieves over 300x faster inference results compared to traditional HMC sampling.

Smaller time is better

View benchmark details

Lightning Fast

Optimized message passing

Real-time Processing

Process data with minimal latency

Resource Efficient

Optimized CPU utilization

Solve Complex Problems

Copied to your clipboard!

See RxInfer in action with real-world applications

Track Hidden States in Real-time

Unveil real-time insights into dynamic systems with our software's prowess in tracking hidden states. By providing continuous monitoring and analysis, our tool empowers you to gain a deeper understanding of complex processes, enabling informed decision-making and proactive responses.

Dynamic SystemsReal-timeState Tracking

Smart Navigation & Collision Avoidance

Stay in control, prevent collisions, and streamline routes effortlessly with RxInfer. Streamline your navigation experience and enhance safety.

NavigationSafetyAutomation

Reactive Reasoning with Active Inference

Enhance your decision-making process with the Active Inference framework. Designed to help you analyze incoming information in real-time, this tool enables you to make well-informed choices and adapt to changing situations effectively.

Active InferenceDecision MakingAdaptive

Discover more examples and see how RxInfer can help solve your inference problems.

Explore More Examples

Watch JuliaCon Talk

Copied to your clipboard!

Deep dive into RxInfer's architecture and capabilities

Learn about the core concepts behind RxInfer, its implementation, and how it enables reactive probabilistic programming with message passing-based inference. This talk from JuliaCon 2023 covers the fundamental principles and demonstrates real-world applications.

Community Videos

Join our growing community and explore more videos from Julia developers. Share your own experiences and connect with fellow RxInfer users!

Fast Bayesian Inference with RxInfer.jl

Intro to RxInfer by Doggo.jl

Variational inference with RxInfer

Active Inference Symposium

Stable Ecosystem

Copied to your clipboard!

Unleash the power of Bayesian inference with our robust ecosystem of Julia packages

Thanks to Our Supporters

Copied to your clipboard!

We're grateful to these amazing organizations for their continued support and contributions

Let's stay in touch!

Copied to your clipboard!

Here are some of the ways you can follow us:

© BIASlab, 2022-2024, ReactiveBayes 2024-present