Wake-sleep Algorithm
   HOME

TheInfoList



OR:

The wake-sleep algorithm is an
unsupervised learning Unsupervised learning is a framework in machine learning where, in contrast to supervised learning, algorithms learn patterns exclusively from unlabeled data. Other frameworks in the spectrum of supervisions include weak- or semi-supervision, wh ...
algorithm for deep generative models, especially Helmholtz Machines. The algorithm is similar to the expectation-maximization algorithm, and optimizes the model
likelihood A likelihood function (often simply called the likelihood) measures how well a statistical model explains observed data by calculating the probability of seeing that data under different parameter values of the model. It is constructed from the j ...
for observed data. The name of the algorithm derives from its use of two learning phases, the “wake” phase and the “sleep” phase, which are performed alternately. It can be conceived as a model for learning in the brain, but is also being applied for
machine learning Machine learning (ML) is a field of study in artificial intelligence concerned with the development and study of Computational statistics, statistical algorithms that can learn from data and generalise to unseen data, and thus perform Task ( ...
.


Description

The goal of the wake-sleep algorithm is to find a hierarchical representation of observed data. In a graphical representation of the algorithm, data is applied to the algorithm at the bottom, while higher layers form gradually more abstract representations. Between each pair of layers are two sets of weights: Recognition weights, which define how representations are
inferred Inferences are steps in logical reasoning, moving from premises to logical consequences; etymologically, the word ''infer'' means to "carry forward". Inference is theoretically traditionally divided into deduction and induction, a distinction ...
from data, and generative weights, which define how these representations relate to data.


Training

Training consists of two phases – the “wake” phase and the “sleep” phase. It has been proven that this learning algorithm is convergent.


The "wake" phase

Neurons are fired by recognition connections (from what would be input to what would be output). Generative connections (leading from outputs to inputs) are then modified to increase probability that they would recreate the correct activity in the layer below – closer to actual data from sensory input.


The "sleep" phase

The process is reversed in the “sleep” phase – neurons are fired by generative connections while recognition connections are being modified to increase probability that they would recreate the correct activity in the layer above – further to actual data from sensory input.


Extensions

Since the recognition network is limited in its flexibility, it might not be able to approximate the posterior distribution of latent variables well.{{cite arXiv, title = Reweighted Wake-Sleep, eprint= 1406.2751, date = 2014-06-10, first1 = Jörg, last1 = Bornschein, first2 = Yoshua, last2 = Bengio, class= cs.LG To better approximate the posterior distribution, it is possible to employ
importance sampling Importance sampling is a Monte Carlo method for evaluating properties of a particular distribution, while only having samples generated from a different distribution than the distribution of interest. Its introduction in statistics is generally at ...
, with the recognition network as the proposal distribution. This improved approximation of the posterior distribution also improves the overall performance of the model.


See also

*
Restricted Boltzmann machine A restricted Boltzmann machine (RBM) (also called a restricted Sherrington–Kirkpatrick model with external field or restricted stochastic Ising–Lenz–Little model) is a generative stochastic artificial neural network that can learn a prob ...
, a type of neural net that is trained with a conceptually similar algorithm. *
Helmholtz machine The Helmholtz machine (named after Hermann von Helmholtz and his concept of Helmholtz free energy) is a type of artificial neural network that can account for the hidden structure of a set of data by being trained to create a generative model of th ...
, a neural network model trained by the wake-sleep algorithm.


References

Machine learning algorithms