OpenViSTAI · Agents · Blockchain · Crypto
Menu
AI Models

Boltzmann Machines

Boltzmann Machines is a public, MIT-licensed repository of TensorFlow implementations for restricted Boltzmann machines and deep Boltzmann machines, accompanied by example scripts and notebooks. It provides reusable model code for experimentation rather than a hosted AI service.

Independent OpenViST project profile, based on linked sources.

Boltzmann Machines — OpenViST project profile in AI Models.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use it when you want an implementation and examples to study or adapt for RBM and DBM experiments, and can work with the repository's TensorFlow-era dependencies.

Who it is for

  • Researchers exploring energy-based models and Boltzmann-machine training methods
  • Developers adapting RBM or DBM implementations for experiments
  • Learners following the included MNIST and CIFAR-10 examples

Documented uses

  • Explore k-step contrastive-divergence training and Gibbs sampling in RBM workflows
  • Study multi-layer DBM learning based on persistent contrastive divergence and mean-field variational inference
  • Reproduce the included MNIST and CIFAR-10 experiments
  • Inspect training visualizations and generate samples from trained DBMs
Before you choose

Requirements & limits

The repository is public and identifies an MIT license.

  • The default installation uses TensorFlow GPU around version 1.3.0; the README explains how to change the dependency for non-GPU TensorFlow or an existing installation.
  • JSAnimation is an additional requirement for some notebooks.
  • The README reports up to 2–3 GB GPU memory per example model and up to 11 GB RAM for its most demanding example; it notes that batch size and negative-particle count can be reduced to lower GPU memory use.
  • DBM initialization is described as using greedily layer-wise pretrained RBMs rather than random initialization.
  • The documented partition-function estimate uses annealed importance sampling; the variational lower-bound estimate is currently limited to a two-layer binary Boltzmann machine.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Install the repository and prepare its data

Set up the documented codebase and retrieve the data required for examples.

Before you start

  • Python environment with pip
  • Git
  • Review the TensorFlow dependency in requirements.txt; the default installation specifies TensorFlow GPU around version 1.3.0

Steps

  1. Clone the repository and change into its directory.

  2. Install dependencies with pip install -r requirements.txt.

  3. For notebooks that need it, install JSAnimation as described in the README.

  4. Run make data to download the necessary data.

Expected outcome

The repository dependencies are installed and the documented example data is downloaded.

Guide limitations

  • The README specifies an older TensorFlow version by default and describes editing requirements.txt for non-GPU TensorFlow or an existing TensorFlow installation.
  • Some notebooks require the separate JSAnimation dependency.
  • This guide covers setup and data retrieval, not running or validating an experiment.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
6 November 2026
Original website title
yell/boltzmann-machines · Official homepage title · retained in its source language