/ebm-torch

Energy-based models in PyTorch

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Energy-based models in Pytorch

Author: Alejandro Pozas Kerstjens

Implementation of different generative models based on energy-based learning. Examples are provided with the MNIST dataset.

Libraries required:

  • pytorch >= 0.4.0 as ML framework
  • numpy for math operations
  • matplotlib for image visualization
  • tqdm for custom progress bar
  • imageio for exporting outputs to .gif format

1. RBM

Restricted Boltzmann Machine with binary visible and hidden units. Although in this example it is used as a generative model, RBMs can also perform supervised tasks. The current implementation allows for both binary and continuous-valued visible units.

2. Deep Belief Network

Deep belief network with greedy pre-training plus global finetuning.