#boltzmannmachine

machinelearningtogo's profile picture

➡️ Machine Learning from Scratch, part 48: the Boltzmann machine. In 1985 Hinton, David Ackley and Terrence Sejnowski published how a Boltzmann machine learns, starting from the Hopfield network of part 47. Like the Hopfield network it prefers pictures with low energy, but it also has hidden units next to the visible pixels, and its units switch on by chance: the sigmoid turns the weighted sum into a probability. So the machine never settles and visits low energy pictures more often. We use the restricted version, with connections only between the two layers. The code (boltzmann.py, 16 lines of numpy) trains a restricted Boltzmann machine with 9 visible and 8 hidden units on all 14 bars-and-stripes pictures of 3 x 3 pixels, with contrastive divergence (one dream step per round, 5,000 rounds). Then 1,000 dreams start from pure noise and switch back and forth 100 times: 855 of them became one of the 14 pictures, from 3 times for the empty picture to 142 times for one with two bars. Sources: Nobel Prize in Physics 2024, press release of 8 October 2024 (Hopfield and Hinton, "for foundational discoveries and inventions that enable machine learning with artificial neural networks"); D. H. Ackley, G. E. Hinton, T. J. Sejnowski, "A Learning Algorithm for Boltzmann Machines", Cognitive Science, 1985; G. E. Hinton, "Training Products of Experts by Minimizing Contrastive Divergence", Neural Computation, 2002. Honest notes: the pictures do not come up equally often, because one dream step per round is only a shortcut for the real learning rule. When two of the 14 pictures are left out of training, our small machine does not dream them up; new examples of the same kind come from large machines trained on many examples. #machinelearning #ai #boltzmannmachine #neuralnetworks #nobelprize

MachineLearningToGo

14,700 görüntüleme • 13 gün önce

Daha fazla içerik yok.