The library implements Hamiltonian Monte-Carlo (HMC) schemes over LibTorch. The focus is on high-dimensional problems.
Currently, we have implemented the explicit RMHMC scheme developed by A.D.Cobb et al.. A standard HMC algorithm is also available.
In the near future, our research focus on enhancing this scheme with NUTS type algorithms.
In the notebook you will find an introduction to Geometric Hamiltonian Monte-Carlo and a tutorial on Bayesian Deep Learning.
A talk covering those topics has been given at itCppCon21 conference.
Basic usage examples can be found in functional tests. The log density function, that we sample from, should be compatible with torch::autograd
.
It must be built out of instances of torch::autograd::Function
or torch::nn::Module
richly available from the PyTorch C++
API.
The user can provide custom extensions if needed, see tutorial. It is also possible to rely on TorchScript, which is in fact the recommended way to work with deep learning models.
Implementations of the HMC algorithms above over PyTorch are also available in the hamiltorch package.
(c) 2023 GrinisRIT ltd. and contributors