Paysage v0.1 is the first release of our library for unsupervised learning and probabilistic generative models written in Python and PyTorch. Currently, paysage can be used to train things like:
- Bernoulli Restricted Boltzmann Machines
- Gaussian Restricted Boltzmann Machines
- Hopfield Models
- Deep Boltzmann Machines
All of these models can be trained using advanced Monte Carlo methods designed for efficiently exploring complex energy landscapes. Deep Boltzmann machines are trained using a greedy layerwise algorithm. Restricted Boltzmann machines with Bernoulli layers can also be trained using an advanced mean-field algorithm called the Thouless-Anderson-Palmer (TAP) approximation.
Training can be performed on a CPU or using a GPU -- to use the GPU, change the settings in paysage\backends\config.json
to backend: pytorch
and processor: gpu
. Make sure that you have a CUDA enabled version of PyTorch installed and running already.