From an implementation standpoint, how does a general Boltzmann Machine (GBM) differ from a Restricted Boltzmann Machine (RBM)? From a conceptual point of view, I understand that the difference between the two is that there are no links between the various nodes within each layer (i.e. nodes within a visible layer are only connected to nodes in a hidden layer) in an RBM. With the exception of the discussion here, I can't really seem to find any actual implementations of a GBM, just an explanation of why GBMs don't work in practice followed with an example of an RBM. I'm hoping that someone can either point out some resources that clearly layout the differences between a GBM and RBM, or can at least provide some pseudo-code for how they differ.


Hinton explained in his Video, that a General Boltzmann Machine has no "inference" rule as such, that means there is no such thing as an update algorithm that could decrease the energy by updating the weights.

Without even any mathematical hint how to reduce that energy you can not find an implementation of that, so GBM is merely a concept than an algorithm.

  • 1
    $\begingroup$ Of course there is a hint. You try to reach 'thermal' equilibrium by changing weights under the influence of an external distribution. This is explained in length on Wikipedia. $\endgroup$ – nemo Mar 19 '16 at 3:17

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.