Bayesian Deep Learning

Bayesian Deep Learning#

The Bayesian module provides methods for approximate Bayesian inference in neural networks, enabling uncertainty decomposition into epistemic and aleatoric components.

Methods#

MCDropout(model[, num_samples, dropout_rate])

Monte Carlo Dropout for uncertainty estimation.

DeepEnsemble(model_fn[, num_models])

Deep Ensembles for uncertainty quantification.

SWAG(model[, num_samples, max_models, var_clamp])

Stochastic Weight Averaging - Gaussian (SWAG).

LaplaceApproximation(model[, likelihood, ...])

Laplace Approximation for Bayesian Neural Networks.

Metrics#

predictive_entropy(predictions)

Compute predictive entropy for batched Bayesian predictions (total uncertainty).

mutual_information(predictions)

Compute mutual information (epistemic uncertainty).

disagreement(predictions[, method])

Compute disagreement score for each sample.

Utilities#

decompose_uncertainty(predictions)

Decompose predictive uncertainty into epistemic and aleatoric components.