Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

Boltzmann machine

From Wikipedia, the free encyclopedia
Type of stochastic recurrent neural network
A graphical representation of an example Boltzmann machine.
A graphical representation of an example Boltzmann machine. Each undirected edge represents dependency. In this example there are 3 hidden units and 4 visible units. This is not a restricted Boltzmann machine.

ABoltzmann machine (also calledSherrington–Kirkpatrick model with external field orstochastic Ising model), named afterLudwig Boltzmann, is aspin-glass model with an external field, i.e., aSherrington–Kirkpatrick model,[1] that is a stochasticIsing model. It is astatistical physics technique applied in the context ofcognitive science.[2] It is also classified as aMarkov random field.[3]

Boltzmann machines are theoretically intriguing because of the locality andHebbian nature of their training algorithm (being trained by Hebb's rule), and because of theirparallelism and the resemblance of their dynamics to simplephysical processes. Boltzmann machines with unconstrained connectivity have not been proven useful for practical problems inmachine learning orinference, but if the connectivity is properly constrained, the learning can be made efficient enough to be useful for practical problems.[4]

They are named after theBoltzmann distribution instatistical mechanics, which is used in theirsampling function. They were heavily popularized and promoted byGeoffrey Hinton,Terry Sejnowski andYann LeCun in cognitive sciences communities, particularly inmachine learning,[2] as part of "energy-based models" (EBM), becauseHamiltonians ofspin glasses as energy are used as a starting point to define the learning task.[5]

Structure

[edit]
A graphical representation of an example Boltzmann machine with weight labels.
A graphical representation of a Boltzmann machine with a few weights labeled. Each undirected edge represents dependency and is weighted with weightwij{\displaystyle w_{ij}}. In this example there are 3 hidden units (blue) and 4 visible units (white). This is not a restricted Boltzmann machine.

A Boltzmann machine, like aSherrington–Kirkpatrick model, is a network of units with a total "energy" (Hamiltonian) defined for the overall network. Its units producebinary results. Boltzmann machine weights arestochastic. The global energyE{\displaystyle E} in a Boltzmann machine is identical in form to that ofHopfield networks andIsing models:

E=(i<jwijsisj+iθisi){\displaystyle E=-\left(\sum _{i<j}w_{ij}\,s_{i}\,s_{j}+\sum _{i}\theta _{i}\,s_{i}\right)}

Where:

Often the weightswij{\displaystyle w_{ij}} are represented as a symmetric matrixW=[wij]{\displaystyle W=[w_{ij}]} with zeros along the diagonal.

Unit state probability

[edit]

The difference in the global energy that results from a single uniti{\displaystyle i} equaling 0 (off) versus 1 (on), writtenΔEi{\displaystyle \Delta E_{i}}, assuming a symmetric matrix of weights, is given by:

ΔEi=j>iwijsj+j<iwjisj+θi{\displaystyle \Delta E_{i}=\sum _{j>i}w_{ij}\,s_{j}+\sum _{j<i}w_{ji}\,s_{j}+\theta _{i}}

This can be expressed as the difference of energies of two states:

ΔEi=Ei=offEi=on{\displaystyle \Delta E_{i}=E_{\text{i=off}}-E_{\text{i=on}}}

Substituting the energy of each state with its relative probability according to theBoltzmann factor(the property of aBoltzmann distribution that the energy of a state is proportional to the negative log probability of that state)yields:

ΔEi=kBTln(pi=off)(kBTln(pi=on)),{\displaystyle \Delta E_{i}=-k_{B}T\ln(p_{\text{i=off}})-(-k_{B}T\ln(p_{\text{i=on}})),}

wherekB{\displaystyle k_{B}} is theBoltzmann constant and is absorbed into the artificial notion of temperatureT{\displaystyle T}.Noting that the probabilities of the unit beingon oroff sum to1{\displaystyle 1} allows for the simplification:

ΔEikBT=ln(pi=on)+ln(pi=off)=ln(1pi=onpi=on)=ln(pi=on11),{\displaystyle -{\frac {\Delta E_{i}}{k_{B}T}}=-\ln(p_{i={\text{on}}})+\ln(p_{i={\text{off}}})=\ln {\Big (}{\frac {1-p_{i={\text{on}}}}{p_{i={\text{on}}}}}{\Big )}=\ln(p_{i={\text{on}}}^{-1}-1),}

whence the probability that thei{\displaystyle i}-th unit is given by

pi=on=11+exp(ΔEikBT),{\displaystyle p_{i={\text{on}}}={\frac {1}{1+\exp {\Big (}-{\frac {\Delta E_{i}}{k_{B}T}}{\Big )}}},}

where thescalarT{\displaystyle T} is referred to as thetemperature of the system.This relation is the source of thelogistic function found in probability expressions in variants of the Boltzmann machine.

Equilibrium state

[edit]

The network runs by repeatedly choosing a unit and resetting its state. After running for long enough at a certain temperature, the probability of a global state of the network depends only upon that global state's energy, according to aBoltzmann distribution, and not on the initial state from which the process was started. This means that log-probabilities of global states become linear in their energies. This relationship is true when the machine is "atthermal equilibrium", meaning that the probability distribution of global states has converged. Running the network beginning from a high temperature, its temperature gradually decreases until reaching athermal equilibrium at a lower temperature. It then may converge to a distribution where the energy level fluctuates around the global minimum. This process is calledsimulated annealing.

To train the network so that the chance it will converge to a global state according to an external distribution over these states, the weights must be set so that the global states with the highest probabilities get the lowest energies. This is done by training.

Training

[edit]

The units in the Boltzmann machine are divided into 'visible' units, V, and 'hidden' units, H. The visible units are those that receive information from the 'environment', i.e. thetraining set is a set of binary vectors over the set V. The distribution over the training set is denotedP+(V){\displaystyle P^{+}(V)}.

The distribution over global states converges as the Boltzmann machine reachesthermal equilibrium. We denote this distribution, after wemarginalize it over the hidden units, asP(V){\displaystyle P^{-}(V)}.

Our goal is to approximate the "real" distributionP+(V){\displaystyle P^{+}(V)} using theP(V){\displaystyle P^{-}(V)} produced by the machine. The similarity of the two distributions is measured by theKullback–Leibler divergence,G{\displaystyle G}:

G=vP+(v)ln(P+(v)P(v)){\displaystyle G=\sum _{v}{P^{+}(v)\ln \left({\frac {P^{+}(v)}{P^{-}(v)}}\right)}}

where the sum is over all the possible states ofV{\displaystyle V}.G{\displaystyle G} is a function of the weights, since they determine the energy of a state, and the energy determinesP(v){\displaystyle P^{-}(v)}, as promised by the Boltzmann distribution. Agradient descent algorithm overG{\displaystyle G} changes a given weight,wij{\displaystyle w_{ij}}, by subtracting thepartial derivative ofG{\displaystyle G} with respect to the weight.

Boltzmann machine training involves two alternating phases. One is the "positive" phase where the visible units' states are clamped to a particular binary state vector sampled from the training set (according toP+{\displaystyle P^{+}}). The other is the "negative" phase where the network is allowed to run freely, i.e. only the input nodes have their state determined by external data, but the output nodes are allowed to float. The gradient with respect to a given weight,wij{\displaystyle w_{ij}}, is given by the equation:[2]

Gwij=1R[pij+pij]{\displaystyle {\frac {\partial {G}}{\partial {w_{ij}}}}=-{\frac {1}{R}}[p_{ij}^{+}-p_{ij}^{-}]}

where:

This result follows from the fact that atthermal equilibrium the probabilityP(s){\displaystyle P^{-}(s)} of any global states{\displaystyle s} when the network is free-running is given by the Boltzmann distribution.

This learning rule is biologically plausible because the only information needed to change the weights is provided by "local" information. That is, the connection (synapse, biologically) does not need information about anything other than the two neurons it connects. This is more biologically realistic than the information needed by a connection in many other neural network training algorithms, such asbackpropagation.

The training of a Boltzmann machine does not use theEM algorithm, which is heavily used inmachine learning. By minimizing theKL-divergence, it is equivalent to maximizing the log-likelihood of the data. Therefore, the training procedure performs gradient ascent on the log-likelihood of the observed data. This is in contrast to the EM algorithm, where the posterior distribution of the hidden nodes must be calculated before the maximization of the expected value of the complete data likelihood during the M-step.

Training the biases is similar, but uses only single node activity:

Gθi=1R[pi+pi]{\displaystyle {\frac {\partial {G}}{\partial {\theta _{i}}}}=-{\frac {1}{R}}[p_{i}^{+}-p_{i}^{-}]}

Problems

[edit]

Theoretically the Boltzmann machine is a rather general computational medium. For instance, if trained on photographs, the machine would theoretically model the distribution of photographs, and could use that model to, for example,complete a partial photograph.

Unfortunately, Boltzmann machines experience a serious practical problem, namely that it seems to stop learning correctly when the machine is scaled up to anything larger than a trivial size.[citation needed] This is due to important effects, specifically:

  • the required time order to collect equilibrium statistics grows exponentially with the machine's size, and with the magnitude of the connection strengths[citation needed]
  • connection strengths are more plastic when the connected units have activation probabilities intermediate between zero and one, leading to a so-called variance trap. The net effect is that noise causes the connection strengths to follow arandom walk until the activities saturate.

Types

[edit]

Restricted Boltzmann machine

[edit]
Graphical representation of an example restricted Boltzmann machine
Graphical representation of a restricted Boltzmann machine. The four blue units represent hidden units, and the three red units represent visible states. In restricted Boltzmann machines there are only connections (dependencies) between hidden and visible units, and none between units of the same type (no hidden-hidden, nor visible-visible connections).
Main article:Restricted Boltzmann machine

Although learning is impractical in general Boltzmann machines, it can be made quite efficient in a restricted Boltzmann machine (RBM) which does not allow intralayer connections between hidden units and visible units, i.e. there is no connection between visible to visible and hidden to hidden units. After training one RBM, the activities of its hidden units can be treated as data for training a higher-level RBM. This method of stacking RBMs makes it possible to train many layers of hidden units efficiently and is one of the most commondeep learning strategies. As each new layer is added the generative model improves.

An extension to the restricted Boltzmann machine allows using real valued data rather than binary data.[6]

One example of a practical RBM application is in speech recognition.[7]

Deep Boltzmann machine

[edit]

A deep Boltzmann machine (DBM) is a type of binary pairwiseMarkov random field (undirected probabilisticgraphical model) with multiple layers ofhiddenrandom variables. It is a network of symmetrically coupled stochasticbinary units. It comprises a set of visible unitsν{0,1}D{\displaystyle {\boldsymbol {\nu }}\in \{0,1\}^{D}} and layers of hidden unitsh(1){0,1}F1,h(2){0,1}F2,,h(L){0,1}FL{\displaystyle {\boldsymbol {h}}^{(1)}\in \{0,1\}^{F_{1}},{\boldsymbol {h}}^{(2)}\in \{0,1\}^{F_{2}},\ldots ,{\boldsymbol {h}}^{(L)}\in \{0,1\}^{F_{L}}}. No connection links units of the same layer (likeRBM). For theDBM, the probability assigned to vectorν is

p(ν)=1ZheijWij(1)νihj(1)+jlWjl(2)hj(1)hl(2)+lmWlm(3)hl(2)hm(3),{\displaystyle p({\boldsymbol {\nu }})={\frac {1}{Z}}\sum _{h}e^{\sum _{ij}W_{ij}^{(1)}\nu _{i}h_{j}^{(1)}+\sum _{jl}W_{jl}^{(2)}h_{j}^{(1)}h_{l}^{(2)}+\sum _{lm}W_{lm}^{(3)}h_{l}^{(2)}h_{m}^{(3)}},}

whereh={h(1),h(2),h(3)}{\displaystyle {\boldsymbol {h}}=\{{\boldsymbol {h}}^{(1)},{\boldsymbol {h}}^{(2)},{\boldsymbol {h}}^{(3)}\}} are the set of hidden units, andθ={W(1),W(2),W(3)}{\displaystyle \theta =\{{\boldsymbol {W}}^{(1)},{\boldsymbol {W}}^{(2)},{\boldsymbol {W}}^{(3)}\}} are the model parameters, representing visible-hidden and hidden-hidden interactions.[8] In aDBN only the top two layers form a restricted Boltzmann machine (which is an undirectedgraphical model), while lower layers form a directed generative model. In a DBM all layers are symmetric and undirected.

LikeDBNs, DBMs can learn complex and abstract internal representations of the input in tasks such asobject orspeech recognition, using limited, labeled data to fine-tune the representations built using a large set of unlabeled sensory input data. However, unlike DBNs and deepconvolutional neural networks, they pursue the inference and training procedure in both directions, bottom-up and top-down, which allow the DBM to better unveil the representations of the input structures.[9][10][11]

However, the slow speed of DBMs limits their performance and functionality. Because exact maximum likelihood learning is intractable for DBMs, only approximate maximum likelihood learning is possible. Another option is to use mean-field inference to estimate data-dependent expectations and approximate the expected sufficient statistics by usingMarkov chain Monte Carlo (MCMC).[8] This approximate inference, which must be done for each test input, is about 25 to 50 times slower than a single bottom-up pass in DBMs. This makes joint optimization impractical for large data sets, and restricts the use of DBMs for tasks such as feature representation.

Spike-and-slab RBMs

[edit]

The need for deep learning withreal-valued inputs, as inGaussian RBMs, led to the spike-and-slabRBM (ssRBM), which models continuous-valued inputs withbinarylatent variables.[12] Similar to basicRBMs and its variants, a spike-and-slab RBM is abipartite graph, while like GRBMs, the visible units (input) are real-valued. The difference is in the hidden layer, where each hidden unit has a binary spike variable and a real-valued slab variable. A spike is a discreteprobability mass at zero, while a slab is adensity over continuous domain;[13] their mixture forms aprior.[14]

An extension of ssRBM called μ-ssRBM provides extra modeling capacity using additional terms in theenergy function. One of these terms enables the model to form aconditional distribution of the spike variables bymarginalizing out the slab variables given an observation.

In mathematics

[edit]
Main articles:Gibbs measure andLog-linear model

In more general mathematical setting, the Boltzmann distribution is also known as theGibbs measure. Instatistics andmachine learning it is called alog-linear model. Indeep learning the Boltzmann distribution is used in the sampling distribution ofstochastic neural networks such as the Boltzmann machine.

History

[edit]

The Boltzmann machine is based on the Sherrington–Kirkpatrickspin glass model byDavid Sherrington andScott Kirkpatrick.[15] The seminal publication byJohn Hopfield (1982) applied methods of statistical mechanics, mainly the recently developed (1970s) theory of spin glasses, to studyassociative memory (later named the "Hopfield network").[16]

The original contribution in applying such energy-based models in cognitive science appeared in papers byGeoffrey Hinton andTerry Sejnowski.[17][18][19] In a 1995 interview, Hinton stated that in 1983 February or March, he was going to give a talk onsimulated annealing in Hopfield networks, so he had to design a learning algorithm for the talk, resulting in the Boltzmann machine learning algorithm.[20]

The idea of applying the Ising model with annealedGibbs sampling was used inDouglas Hofstadter'sCopycat project (1984).[21][22]

The explicit analogy drawn with statistical mechanics in the Boltzmann machine formulation led to the use of terminology borrowed from physics (e.g., "energy"), which became standard in the field. The widespread adoption of this terminology may have been encouraged by the fact that its use led to the adoption of a variety of concepts and methods from statistical mechanics. The various proposals to use simulated annealing for inference were apparently independent.

Similar ideas (with a change of sign in the energy function) are found inPaul Smolensky's "Harmony Theory".[23] Ising models can be generalized toMarkov random fields, which find widespread application inlinguistics,robotics,computer vision andartificial intelligence.

In 2024, Hopfield and Hinton were awardedNobel Prize in Physics for their foundational contributions tomachine learning, such as the Boltzmann machine.[24]

See also

[edit]

References

[edit]
  1. ^Sherrington, David; Kirkpatrick, Scott (1975), "Solvable Model of a Spin-Glass",Physical Review Letters,35 (35):1792–1796,Bibcode:1975PhRvL..35.1792S,doi:10.1103/PhysRevLett.35.1792
  2. ^abcAckley, David H.; Hinton, Geoffrey E.; Sejnowski, Terrence J. (1985)."A Learning Algorithm for Boltzmann Machines"(PDF).Cognitive Science.9 (1):147–169.doi:10.1207/s15516709cog0901_7. Archived fromthe original(PDF) on 18 July 2011.
  3. ^Hinton, Geoffrey E. (2007-05-24)."Boltzmann machine".Scholarpedia.2 (5): 1668.Bibcode:2007SchpJ...2.1668H.doi:10.4249/scholarpedia.1668.ISSN 1941-6016.
  4. ^Osborn, Thomas R. (1 January 1990)."Fast Teaching of Boltzmann Machines with Local Inhibition".International Neural Network Conference. Springer Netherlands. pp. 785.doi:10.1007/978-94-009-0643-3_76.ISBN 978-0-7923-0831-7.
  5. ^Nijkamp, E.; Hill, M. E; Han, T. (2020),"On the Anatomy of MCMC-Based Maximum Likelihood Learning of Energy-Based Models",Proceedings of the AAAI Conference on Artificial Intelligence,4 (34):5272–5280,arXiv:1903.12370,doi:10.1609/aaai.v34i04.5973
  6. ^Recent Developments in Deep Learning, 22 March 2010,archived from the original on 2021-12-22, retrieved2020-02-17
  7. ^Yu, Dong; Dahl, George; Acero, Alex; Deng, Li (2011)."Context-Dependent Pre-trained Deep Neural Networks for Large Vocabulary Speech Recognition"(PDF).Microsoft Research.20.
  8. ^abHinton, Geoffrey; Salakhutdinov, Ruslan (2012)."A better way to pretrain deep Boltzmann machines"(PDF).Advances in Neural.3:1–9. Archived fromthe original(PDF) on 2017-08-13. Retrieved2017-08-18.
  9. ^Hinton, Geoffrey; Salakhutdinov, Ruslan (2009)."Efficient Learning of Deep Boltzmann Machines"(PDF).Proceedings of the Twelfth International Conference on Artificial Intelligence and Statistics. Vol. 3. pp. 448–455. Archived fromthe original(PDF) on 2015-11-06. Retrieved2017-08-18.
  10. ^Bengio, Yoshua; LeCun, Yann (2007)."Scaling Learning Algorithms towards AI"(PDF).Université de Montréal (Preprint).
  11. ^Larochelle, Hugo; Salakhutdinov, Ruslan (2010)."Efficient Learning of Deep Boltzmann Machines"(PDF).Proceedings of the Thirteenth International Conference on Artificial Intelligence and Statistics. pp. 693–700. Archived fromthe original(PDF) on 2017-08-14. Retrieved2017-08-18.
  12. ^Courville, Aaron; Bergstra, James; Bengio, Yoshua (2011)."A Spike and Slab Restricted Boltzmann Machine"(PDF).JMLR: Workshop and Conference Proceeding.15:233–241. Archived fromthe original(PDF) on 2016-03-04. Retrieved2019-08-25.
  13. ^Courville, Aaron; Bergstra, James; Bengio, Yoshua (2011)."Unsupervised Models of Images by Spike-and-Slab RBMs"(PDF).Proceedings of the 28th International Conference on Machine Learning. Vol. 10. pp. 1–8. Archived fromthe original(PDF) on 2016-03-04. Retrieved2019-08-25.
  14. ^Mitchell, T; Beauchamp, J (1988). "Bayesian Variable Selection in Linear Regression".Journal of the American Statistical Association.83 (404):1023–1032.doi:10.1080/01621459.1988.10478694.
  15. ^Sherrington, David; Kirkpatrick, Scott (1975-12-29). "Solvable Model of a Spin-Glass".Physical Review Letters.35 (26):1792–1796.Bibcode:1975PhRvL..35.1792S.doi:10.1103/physrevlett.35.1792.ISSN 0031-9007.
  16. ^Hopfield, J. J. (1982)."Neural networks and physical systems with emergent collective computational abilities".Proceedings of the National Academy of Sciences of the United States of America.79 (8). [s.n.]:2554–8.Bibcode:1982PNAS...79.2554H.doi:10.1073/pnas.79.8.2554.OCLC 848771572.PMC 346238.PMID 6953413.
  17. ^Hinton, Geoffery; Sejnowski, Terrence J. (May 1983).Analyzing Cooperative Computation. 5th Annual Congress of the Cognitive Science Society. Rochester, New York. Retrieved17 February 2020.[permanent dead link]
  18. ^Hinton, Geoffrey E.; Sejnowski, Terrence J. (June 1983).Optimal Perceptual Inference. IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Washington, D.C.: IEEE Computer Society. pp. 448–453.
  19. ^Fahlman SE, Hinton GE, Sejnowski TJ.Massively parallel architectures for Al: NETL, Thistle, and Boltzmann machines. In: Genesereth MR, editor.AAAI-83. Washington, DC: AAAI; 1983. pp. 109–113
  20. ^Chapter 16. Rosenfeld, Edward, and James A. Anderson, eds. 2000.Talking Nets: An Oral History of Neural Networks. Reprint edition. The MIT Press.
  21. ^Hofstadter, D. R. (January 1984).The Copycat Project: An Experiment in Nondeterminism and Creative Analogies. Defense Technical Information Center.OCLC 227617764.
  22. ^Hofstadter, Douglas R. (1988). "A Non-Deterministic Approach to Analogy, Involving the Ising Model of Ferromagnetism". In Caianiello, Eduardo R. (ed.).Physics of cognitive processes. Teaneck, New Jersey: World Scientific.ISBN 9971-5-0255-0.OCLC 750950619.
  23. ^Smolensky, Paul. "Information processing in dynamical systems: Foundations of harmony theory." (1986): 194-281.
  24. ^Johnston, Hamish (2024-10-08)."John Hopfield and Geoffrey Hinton share the 2024 Nobel Prize for Physics".Physics World. Retrieved2024-10-18.

Further reading

[edit]

External links

[edit]
Theory
Statistical thermodynamics
Models
Mathematical approaches
Critical phenomena
Entropy
Applications
Authority control databasesEdit this at Wikidata
Retrieved from "https://en.wikipedia.org/w/index.php?title=Boltzmann_machine&oldid=1272470985"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp