The bayesian neural network is a standard neural network with weights in a probability distribution.
What is the difference in training?
The learning process depends on Bayes approach: $P(\theta | D) = \frac{P(D|\theta) P(\theta)}{P(D)} \propto P(D|\theta) P(\theta)$
The trick to avoid $P(D)$ is by using sampling methods.
Sampling methods includes
Metropolis-hasting Monte Carlo
Hamitonian Monte Carlo
Varitional Inference
Stochastic Langevin Descent
Implementation
For #5, I would recommend using Jax-Bayes that provides an example of BNN with regression problem. The bnn code for regression has been tested on my laptop, it works as expected.
What is Bayesian neural network?
What is the difference in training?
Implementation
For #5, I would recommend using Jax-Bayes that provides an example of BNN with regression problem. The bnn code for regression has been tested on my laptop, it works as expected.
The idea is to apply this method to #5, since there dataset is organized, and can be easily split into train-test set. We could use Jax framework to train the model with mcmc and variational inference
Computational environment
Materias