An energy-based model (EBM) (also called a Canonical Ensemble Learning(CEL) or Learning via Canonical Ensemble (LCE)) is an application of canonical ensemble formulation of statistical physics for learning from data problems. The approach prominently appears in generative models (GMs).
EBMs provide a unified framework for many probabilistic and non-probabilistic approaches to such learning, particularly for training graphical and other structured models. [1]
An EBM learns the characteristics of a target dataset and generates a similar but larger dataset. EBMs detect the latent variables of a dataset and generate new datasets with a similar distribution. [1]
Energy-based generative neural networks [2] [3] is a class of generative models, which aim to learn explicit probability distributions of data in the form of energy-based models whose energy functions are parameterized by modern deep neural networks.
Boltzmann machines are a special form of energy-based models with a specific parametrization of the energy. [4]
For a given input , the model describes an energy such that the Boltzmann distribution is a probability (density) and typically .
Since the normalization constant , also known as partition function, depends on all the Boltzmann factors of all possible inputs it cannot be easily computed or reliably estimated during training simply using standard maximum likelihood estimation.
However for maximizing the likelihood during training, the gradient of the log likelihood of a single training example is given by using the chain rule
The expectation in the above formula for the gradient can be approximately estimated by drawing samples from the distribution using Markov chain Monte Carlo (MCMC) [5]
Early energy-based models like the 2003 Boltzmann machine by Hinton estimated this expectation using block Gibbs sampler. Newer approaches make use of more efficient Stochastic Gradient Langevin Dynamics (LD) drawing samples using: [6]
and . A replay buffer of past values is used with LD to initialize the optimization module. [1]
The parameters of the neural network are, therefore, trained in a generative manner by MCMC-based maximum likelihood estimation: [7] The learning process follows an "analysis by synthesis" scheme, where within each learning iteration, the algorithm samples the synthesized examples from the current model by a gradient-based MCMC method, e.g., Langevin dynamics or Hybrid Monte Carlo, and then updates the model parameters based on the difference between the training examples and the synthesized ones, see equation . This process can be interpreted as an alternating mode seeking and mode shifting process, and also has an adversarial interpretation. [8] [9]
In the end, the model learns a function that associates low energies to correct values, and higher energies to incorrect values. [1]
After training, given a converged energy model , the Metropolis–Hastings algorithm can be used to draw new samples. The acceptance probability is given by:
The term "energy-based models" was first coined in a 2003 JMLR paper [10] where the authors defined a generalisation of independent components analysis to the overcomplete setting using EBMs. Other early work on EBMs proposed models that represented energy as a composition of latent and observable variables.
EBMs demonstrate useful properties: [1]
On image datasets such as CIFAR-10 and ImageNet 32x32, an EBM model generated high-quality images relatively quickly. It supported combining features learned from one type of image for generating other types of images. It was able to generalize using out-of-distribution datasets, outperforming flow-based and autoregressive models. EBM was relatively resistant to adversarial perturbations, behaving better than models explicitly trained against them with training for classification. [1]
Target applications include natural language processing, robotics and computer vision. [1]
The first energy-based generative neural network is the generative ConvNet [1] proposed in 2016 for image patterns, where the neural network is a convolutional neural network. [11] [12] The model has been generalized to various domains to learn distributions of videos, [8] [3] and 3D voxels. [13] They are made more effective in their variants. [14] [15] [16] [17] [18] [19] They have proven useful for data generation (e.g., image synthesis, [1] video synthesis, [8] 3D shape synthesis, [5] etc.), data recovery (e.g., recovering videos with missing pixels or image frames, [8] 3D super-resolution, [5] etc), data reconstruction (e.g., image reconstruction and linear interpolation [15]).
EBMs compete with techniques such as variational autoencoders (VAEs), generative adversarial networks (GANs) or normalizing flows. [1]
Joint energy-based models (JEM), proposed in 2020 by Grathwohl et al., allow any classifier with softmax output to be interpreted as energy-based model. The key observation is that such a classifier is trained to predict the conditional probability where is the y-th index of the logits corresponding to class y. Without any change to the logits it was proposed to reinterpret the logits to describe a joint probability density:
with unknown partition function and energy . By marginalization, we obtain the unnormalized density
therefore,
so that any classifier can be used to define an energy function .
{{
cite book}}
: CS1 maint: location missing publisher (
link) CS1 maint: multiple names: authors list (
link)
An energy-based model (EBM) (also called a Canonical Ensemble Learning(CEL) or Learning via Canonical Ensemble (LCE)) is an application of canonical ensemble formulation of statistical physics for learning from data problems. The approach prominently appears in generative models (GMs).
EBMs provide a unified framework for many probabilistic and non-probabilistic approaches to such learning, particularly for training graphical and other structured models. [1]
An EBM learns the characteristics of a target dataset and generates a similar but larger dataset. EBMs detect the latent variables of a dataset and generate new datasets with a similar distribution. [1]
Energy-based generative neural networks [2] [3] is a class of generative models, which aim to learn explicit probability distributions of data in the form of energy-based models whose energy functions are parameterized by modern deep neural networks.
Boltzmann machines are a special form of energy-based models with a specific parametrization of the energy. [4]
For a given input , the model describes an energy such that the Boltzmann distribution is a probability (density) and typically .
Since the normalization constant , also known as partition function, depends on all the Boltzmann factors of all possible inputs it cannot be easily computed or reliably estimated during training simply using standard maximum likelihood estimation.
However for maximizing the likelihood during training, the gradient of the log likelihood of a single training example is given by using the chain rule
The expectation in the above formula for the gradient can be approximately estimated by drawing samples from the distribution using Markov chain Monte Carlo (MCMC) [5]
Early energy-based models like the 2003 Boltzmann machine by Hinton estimated this expectation using block Gibbs sampler. Newer approaches make use of more efficient Stochastic Gradient Langevin Dynamics (LD) drawing samples using: [6]
and . A replay buffer of past values is used with LD to initialize the optimization module. [1]
The parameters of the neural network are, therefore, trained in a generative manner by MCMC-based maximum likelihood estimation: [7] The learning process follows an "analysis by synthesis" scheme, where within each learning iteration, the algorithm samples the synthesized examples from the current model by a gradient-based MCMC method, e.g., Langevin dynamics or Hybrid Monte Carlo, and then updates the model parameters based on the difference between the training examples and the synthesized ones, see equation . This process can be interpreted as an alternating mode seeking and mode shifting process, and also has an adversarial interpretation. [8] [9]
In the end, the model learns a function that associates low energies to correct values, and higher energies to incorrect values. [1]
After training, given a converged energy model , the Metropolis–Hastings algorithm can be used to draw new samples. The acceptance probability is given by:
The term "energy-based models" was first coined in a 2003 JMLR paper [10] where the authors defined a generalisation of independent components analysis to the overcomplete setting using EBMs. Other early work on EBMs proposed models that represented energy as a composition of latent and observable variables.
EBMs demonstrate useful properties: [1]
On image datasets such as CIFAR-10 and ImageNet 32x32, an EBM model generated high-quality images relatively quickly. It supported combining features learned from one type of image for generating other types of images. It was able to generalize using out-of-distribution datasets, outperforming flow-based and autoregressive models. EBM was relatively resistant to adversarial perturbations, behaving better than models explicitly trained against them with training for classification. [1]
Target applications include natural language processing, robotics and computer vision. [1]
The first energy-based generative neural network is the generative ConvNet [1] proposed in 2016 for image patterns, where the neural network is a convolutional neural network. [11] [12] The model has been generalized to various domains to learn distributions of videos, [8] [3] and 3D voxels. [13] They are made more effective in their variants. [14] [15] [16] [17] [18] [19] They have proven useful for data generation (e.g., image synthesis, [1] video synthesis, [8] 3D shape synthesis, [5] etc.), data recovery (e.g., recovering videos with missing pixels or image frames, [8] 3D super-resolution, [5] etc), data reconstruction (e.g., image reconstruction and linear interpolation [15]).
EBMs compete with techniques such as variational autoencoders (VAEs), generative adversarial networks (GANs) or normalizing flows. [1]
Joint energy-based models (JEM), proposed in 2020 by Grathwohl et al., allow any classifier with softmax output to be interpreted as energy-based model. The key observation is that such a classifier is trained to predict the conditional probability where is the y-th index of the logits corresponding to class y. Without any change to the logits it was proposed to reinterpret the logits to describe a joint probability density:
with unknown partition function and energy . By marginalization, we obtain the unnormalized density
therefore,
so that any classifier can be used to define an energy function .
{{
cite book}}
: CS1 maint: location missing publisher (
link) CS1 maint: multiple names: authors list (
link)