diff --git a/doc/pub/BM/html/._BM-bs000.html b/doc/pub/BM/html/._BM-bs000.html index dbed0cb69..d01b0b80f 100644 --- a/doc/pub/BM/html/._BM-bs000.html +++ b/doc/pub/BM/html/._BM-bs000.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -343,7 +355,7 @@ MathJax.Hub.Config({
    Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University and Department of Physics, University of Oslo, Norway

    -

    Nov 23, 2018

    +

    Nov 28, 2018


    @@ -367,7 +379,7 @@ MathJax.Hub.Config({

  • 9
  • 10
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs001.html b/doc/pub/BM/html/._BM-bs001.html index f2659c400..ed4802047 100644 --- a/doc/pub/BM/html/._BM-bs001.html +++ b/doc/pub/BM/html/._BM-bs001.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -370,7 +382,7 @@ Some of the most common tasks are:
  • 10
  • 11
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs002.html b/doc/pub/BM/html/._BM-bs002.html index cb748fc57..774e5bcf6 100644 --- a/doc/pub/BM/html/._BM-bs002.html +++ b/doc/pub/BM/html/._BM-bs002.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -355,7 +367,7 @@ Furthermore, they have been used to solve complicated quantum mechanical many-pa
  • 11
  • 12
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs003.html b/doc/pub/BM/html/._BM-bs003.html index 77e3b3ed9..ebc0e5a21 100644 --- a/doc/pub/BM/html/._BM-bs003.html +++ b/doc/pub/BM/html/._BM-bs003.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -328,7 +340,7 @@ MathJax.Hub.Config({

    An intermediate step, the Hopfield network and links to the Ising and Potts models

    -More material on Hopfield networks will come here +More material on Hopfield networks will come here later.

    @@ -349,7 +361,7 @@ More material on Hopfield networks will come here

  • 12
  • 13
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs004.html b/doc/pub/BM/html/._BM-bs004.html index 6c41955ac..a1e476a34 100644 --- a/doc/pub/BM/html/._BM-bs004.html +++ b/doc/pub/BM/html/._BM-bs004.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -360,7 +372,7 @@ MathJax.Hub.Config({
  • 13
  • 14
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs005.html b/doc/pub/BM/html/._BM-bs005.html index 715e21166..29488179f 100644 --- a/doc/pub/BM/html/._BM-bs005.html +++ b/doc/pub/BM/html/._BM-bs005.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -366,7 +378,7 @@ its most likely state at a given temperature of the surroundings.
  • 14
  • 15
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs006.html b/doc/pub/BM/html/._BM-bs006.html index 2ecaa2033..8ab21c02b 100644 --- a/doc/pub/BM/html/._BM-bs006.html +++ b/doc/pub/BM/html/._BM-bs006.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -363,7 +375,7 @@ the interpretation of random walks and Markov processes.
  • 15
  • 16
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs007.html b/doc/pub/BM/html/._BM-bs007.html index 64523edda..b6aa520c1 100644 --- a/doc/pub/BM/html/._BM-bs007.html +++ b/doc/pub/BM/html/._BM-bs007.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -368,7 +380,7 @@ This sequence of steps forms a chain.
  • 16
  • 17
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs008.html b/doc/pub/BM/html/._BM-bs008.html index 0c272f456..59bc1b2c3 100644 --- a/doc/pub/BM/html/._BM-bs008.html +++ b/doc/pub/BM/html/._BM-bs008.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -357,7 +369,7 @@ MathJax.Hub.Config({
  • 17
  • 18
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs009.html b/doc/pub/BM/html/._BM-bs009.html index bd394572d..c565b95df 100644 --- a/doc/pub/BM/html/._BM-bs009.html +++ b/doc/pub/BM/html/._BM-bs009.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -371,7 +383,7 @@ The list of applications is endless.
  • 18
  • 19
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs010.html b/doc/pub/BM/html/._BM-bs010.html index 2311d6067..a352f3144 100644 --- a/doc/pub/BM/html/._BM-bs010.html +++ b/doc/pub/BM/html/._BM-bs010.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -372,7 +384,7 @@ We can regard the discretized PDF as a vector.
  • 19
  • 20
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs011.html b/doc/pub/BM/html/._BM-bs011.html index f7453fcb8..351bfdc97 100644 --- a/doc/pub/BM/html/._BM-bs011.html +++ b/doc/pub/BM/html/._BM-bs011.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -386,7 +398,7 @@ PDF with equal probability of jumping left or right.
  • 20
  • 21
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs012.html b/doc/pub/BM/html/._BM-bs012.html index 09dc2b2fe..db65058de 100644 --- a/doc/pub/BM/html/._BM-bs012.html +++ b/doc/pub/BM/html/._BM-bs012.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -383,7 +395,7 @@ not necessarily equal zero.
  • 21
  • 22
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs013.html b/doc/pub/BM/html/._BM-bs013.html index 1bc6d8446..009254233 100644 --- a/doc/pub/BM/html/._BM-bs013.html +++ b/doc/pub/BM/html/._BM-bs013.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -391,7 +403,7 @@ $$
  • 22
  • 23
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs014.html b/doc/pub/BM/html/._BM-bs014.html index 2ea9085a8..a4725c333 100644 --- a/doc/pub/BM/html/._BM-bs014.html +++ b/doc/pub/BM/html/._BM-bs014.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -384,7 +396,7 @@ $$
  • 23
  • 24
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs015.html b/doc/pub/BM/html/._BM-bs015.html index ed39a7cff..c2c93ec89 100644 --- a/doc/pub/BM/html/._BM-bs015.html +++ b/doc/pub/BM/html/._BM-bs015.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -381,7 +393,7 @@ $$
  • 24
  • 25
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs016.html b/doc/pub/BM/html/._BM-bs016.html index b5bd1531d..6d88a625b 100644 --- a/doc/pub/BM/html/._BM-bs016.html +++ b/doc/pub/BM/html/._BM-bs016.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -380,7 +392,7 @@ Note that the vector \( \hat{w} \) is always normalized to \( 1 \).
  • 25
  • 26
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs017.html b/doc/pub/BM/html/._BM-bs017.html index 6243f8bc9..0ce1bbc6d 100644 --- a/doc/pub/BM/html/._BM-bs017.html +++ b/doc/pub/BM/html/._BM-bs017.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -395,7 +407,7 @@ $$
  • 26
  • 27
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs018.html b/doc/pub/BM/html/._BM-bs018.html index 9c44716b4..e1d03b71b 100644 --- a/doc/pub/BM/html/._BM-bs018.html +++ b/doc/pub/BM/html/._BM-bs018.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -392,7 +404,7 @@ time steps. After twelve iterations we have reached the exact value with six le
  • 27
  • 28
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs019.html b/doc/pub/BM/html/._BM-bs019.html index 0e658e359..41287e47e 100644 --- a/doc/pub/BM/html/._BM-bs019.html +++ b/doc/pub/BM/html/._BM-bs019.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -373,7 +385,7 @@ transition probability matrix.
  • 28
  • 29
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs020.html b/doc/pub/BM/html/._BM-bs020.html index fe4a63987..89f5a63a0 100644 --- a/doc/pub/BM/html/._BM-bs020.html +++ b/doc/pub/BM/html/._BM-bs020.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -388,7 +400,7 @@ If we assume that \( \lambda_0 \) is the largest eigenvector we see that in the
  • 29
  • 30
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs021.html b/doc/pub/BM/html/._BM-bs021.html index 05086e4fe..395d46932 100644 --- a/doc/pub/BM/html/._BM-bs021.html +++ b/doc/pub/BM/html/._BM-bs021.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -394,7 +406,7 @@ $$
  • 30
  • 31
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs022.html b/doc/pub/BM/html/._BM-bs022.html index a8bdbf06a..9e41edeee 100644 --- a/doc/pub/BM/html/._BM-bs022.html +++ b/doc/pub/BM/html/._BM-bs022.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -385,7 +397,7 @@ Here we have written the previous matrix \( W_{ij}=W(j\rightarrow i) \).
  • 31
  • 32
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs023.html b/doc/pub/BM/html/._BM-bs023.html index 4e87fccd2..655b532f8 100644 --- a/doc/pub/BM/html/._BM-bs023.html +++ b/doc/pub/BM/html/._BM-bs023.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -384,7 +396,7 @@ we have reached the most likely state of the system, the so-called steady state
  • 32
  • 33
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs024.html b/doc/pub/BM/html/._BM-bs024.html index ac72c7617..d79f66f8e 100644 --- a/doc/pub/BM/html/._BM-bs024.html +++ b/doc/pub/BM/html/._BM-bs024.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -368,7 +380,7 @@ $$
  • 33
  • 34
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs025.html b/doc/pub/BM/html/._BM-bs025.html index 077b42ce7..d3c73c41d 100644 --- a/doc/pub/BM/html/._BM-bs025.html +++ b/doc/pub/BM/html/._BM-bs025.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -376,7 +388,7 @@ The algorithm can then be expressed as
  • 34
  • 35
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs026.html b/doc/pub/BM/html/._BM-bs026.html index 4ed860462..84b9e6121 100644 --- a/doc/pub/BM/html/._BM-bs026.html +++ b/doc/pub/BM/html/._BM-bs026.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -369,7 +381,7 @@ to the probability of being in a state \( j \) and performing a transition to th
  • 35
  • 36
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs027.html b/doc/pub/BM/html/._BM-bs027.html index 058a5a102..3bd49d612 100644 --- a/doc/pub/BM/html/._BM-bs027.html +++ b/doc/pub/BM/html/._BM-bs027.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -373,7 +385,7 @@ $$
  • 36
  • 37
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs028.html b/doc/pub/BM/html/._BM-bs028.html index a6d322bef..04fb60988 100644 --- a/doc/pub/BM/html/._BM-bs028.html +++ b/doc/pub/BM/html/._BM-bs028.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -383,7 +395,7 @@ $$
  • 37
  • 38
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs029.html b/doc/pub/BM/html/._BM-bs029.html index 25082292b..9ccd61b2f 100644 --- a/doc/pub/BM/html/._BM-bs029.html +++ b/doc/pub/BM/html/._BM-bs029.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -381,7 +393,7 @@ $$
  • 38
  • 39
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs030.html b/doc/pub/BM/html/._BM-bs030.html index 9a243e1e1..af9f38482 100644 --- a/doc/pub/BM/html/._BM-bs030.html +++ b/doc/pub/BM/html/._BM-bs030.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -391,7 +403,7 @@ which is nothing but the standard equation for a Markov chain when the steady st
  • 39
  • 40
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs031.html b/doc/pub/BM/html/._BM-bs031.html index 0c0c37a83..9b6c4ec94 100644 --- a/doc/pub/BM/html/._BM-bs031.html +++ b/doc/pub/BM/html/._BM-bs031.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -385,7 +397,7 @@ $$
  • 40
  • 41
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs032.html b/doc/pub/BM/html/._BM-bs032.html index ae5f78164..8aa5d4ec4 100644 --- a/doc/pub/BM/html/._BM-bs032.html +++ b/doc/pub/BM/html/._BM-bs032.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -369,7 +381,7 @@ $$
  • 41
  • 42
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs033.html b/doc/pub/BM/html/._BM-bs033.html index 987e4b240..f777e79b8 100644 --- a/doc/pub/BM/html/._BM-bs033.html +++ b/doc/pub/BM/html/._BM-bs033.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -384,7 +396,7 @@ $$
  • 42
  • 43
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs034.html b/doc/pub/BM/html/._BM-bs034.html index aa6f36fdd..9c5921eb5 100644 --- a/doc/pub/BM/html/._BM-bs034.html +++ b/doc/pub/BM/html/._BM-bs034.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -386,7 +398,7 @@ we never need to evaluate the partition function \( Z \).
  • 43
  • 44
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs035.html b/doc/pub/BM/html/._BM-bs035.html index 9acf0f427..a74188dbd 100644 --- a/doc/pub/BM/html/._BM-bs035.html +++ b/doc/pub/BM/html/._BM-bs035.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -379,7 +391,7 @@ $$
  • 44
  • 45
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs036.html b/doc/pub/BM/html/._BM-bs036.html index 965c8a38b..97838c6ec 100644 --- a/doc/pub/BM/html/._BM-bs036.html +++ b/doc/pub/BM/html/._BM-bs036.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -374,7 +386,7 @@ one place to another in space, we 'jump' from one microstate to another.
  • 45
  • 46
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs037.html b/doc/pub/BM/html/._BM-bs037.html index 527a3640c..c96a86231 100644 --- a/doc/pub/BM/html/._BM-bs037.html +++ b/doc/pub/BM/html/._BM-bs037.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -382,7 +394,7 @@ the transition probability \( T(i\rightarrow j) \) is symmetric, implying that \
  • 46
  • 47
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs038.html b/doc/pub/BM/html/._BM-bs038.html index a4dfc60e9..56a034ec2 100644 --- a/doc/pub/BM/html/._BM-bs038.html +++ b/doc/pub/BM/html/._BM-bs038.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -376,7 +388,7 @@ Our desired energy is \( E_0 \).
  • 47
  • 48
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs039.html b/doc/pub/BM/html/._BM-bs039.html index 3071bdf95..bbaa35be2 100644 --- a/doc/pub/BM/html/._BM-bs039.html +++ b/doc/pub/BM/html/._BM-bs039.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -375,7 +387,7 @@ we simulate long enough it should be included in our computation of an expectati
  • 48
  • 49
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs040.html b/doc/pub/BM/html/._BM-bs040.html index 29e3f2d41..36644f24d 100644 --- a/doc/pub/BM/html/._BM-bs040.html +++ b/doc/pub/BM/html/._BM-bs040.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -374,7 +386,7 @@ to this constraint.
  • 49
  • 50
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs041.html b/doc/pub/BM/html/._BM-bs041.html index ef84a92c5..cba7ca947 100644 --- a/doc/pub/BM/html/._BM-bs041.html +++ b/doc/pub/BM/html/._BM-bs041.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -373,7 +385,7 @@ $$
  • 50
  • 51
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs042.html b/doc/pub/BM/html/._BM-bs042.html index 4d92af66f..b1394dddc 100644 --- a/doc/pub/BM/html/._BM-bs042.html +++ b/doc/pub/BM/html/._BM-bs042.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -377,7 +389,7 @@ If the ratio is smaller than a given random number we accept the move to a highe
  • 51
  • 52
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs043.html b/doc/pub/BM/html/._BM-bs043.html index 8242f312c..169cce4ee 100644 --- a/doc/pub/BM/html/._BM-bs043.html +++ b/doc/pub/BM/html/._BM-bs043.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -371,7 +383,7 @@ fewer accepted moves.
  • 52
  • 53
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs044.html b/doc/pub/BM/html/._BM-bs044.html index fad0f4148..9bc78d94d 100644 --- a/doc/pub/BM/html/._BM-bs044.html +++ b/doc/pub/BM/html/._BM-bs044.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -380,7 +392,7 @@ $$
  • 53
  • 54
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs045.html b/doc/pub/BM/html/._BM-bs045.html index 274d4f3df..ef974cf52 100644 --- a/doc/pub/BM/html/._BM-bs045.html +++ b/doc/pub/BM/html/._BM-bs045.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -356,7 +368,7 @@ More text to come.
  • 54
  • 55
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs046.html b/doc/pub/BM/html/._BM-bs046.html index 182334f5a..67c7903ae 100644 --- a/doc/pub/BM/html/._BM-bs046.html +++ b/doc/pub/BM/html/._BM-bs046.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -367,7 +379,7 @@ Why use a generative model rather than the more well known discriminative deep n
  • 55
  • 56
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs047.html b/doc/pub/BM/html/._BM-bs047.html index 4e43a466b..4c276ee26 100644 --- a/doc/pub/BM/html/._BM-bs047.html +++ b/doc/pub/BM/html/._BM-bs047.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -361,7 +373,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some
  • 56
  • 57
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs048.html b/doc/pub/BM/html/._BM-bs048.html index c25206634..458c3ed30 100644 --- a/doc/pub/BM/html/._BM-bs048.html +++ b/doc/pub/BM/html/._BM-bs048.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,10 +337,37 @@ MathJax.Hub.Config({ -

    The structure of the RBM network

    +

    Boltzmann machines (BM)

    -



    +
    +
    +

    +A BM is what we would call an undirected probabilistic graphical model +with stochastic continuous or discrete units. +

    +
    + +
    +
    +

    +It is interpreted as a stochastic recurrent neural network where the +state of each unit(neurons/nodes) depends on the units it is connected +to. The weights in the network represent thus the strength of the +interaction between various units/nodes. +

    +
    + +
    +
    +

    +It turns into a Hopfield network if we choose deterministic rather +than stochastic units. In contrast to a Hopfield network, a BM is a +so-called generative model. It allows us to generate new samples from +the learned distribution. +

    +
    +

    @@ -356,7 +395,7 @@ MathJax.Hub.Config({

  • 57
  • 58
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs049.html b/doc/pub/BM/html/._BM-bs049.html index f01e332e8..d87038b5a 100644 --- a/doc/pub/BM/html/._BM-bs049.html +++ b/doc/pub/BM/html/._BM-bs049.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,16 +337,40 @@ MathJax.Hub.Config({ -

    The network

    +

    A standard BM setup

    -The network layers: +

    +
    +

    +A standard BM network is divided into a set of observable and visible units \( \hat{x} \) and a set of unknown hidden units/nodes \( \hat{h} \). +

    +
    -
      -
    1. A function \( \mathbf{x} \) that represents the visible layer, a vector of \( M \) elements (nodes). This layer represents both what the RBM might be given as training input, and what we want it to be able to reconstruct. This might for example be the pixels of an image, the spin values of the Ising model, or coefficients representing speech.
    2. -
    3. The function \( \mathbf{h} \) represents the hidden, or latent, layer. A vector of \( N \) elements (nodes). Also called "feature detectors".
    4. -
    +

    +

    +
    +

    +Additionally there can be bias nodes for the hidden and visible layers. These biases are normally set to \( 1 \). +

    +
    + + +

    +

    +
    +

    +BMs are stackable, meaning they cwe can train a BM which serves as input to another BM. We can construct deep networks for learning complex PDFs. The layers can be trained one after another, a feature which makes them popular in deep learning +

    +
    + + +

    +However, they are often hard to train. This leads to the introduction of so-called restricted BMs, or RBMS. +Here we take away all lateral connections between nodes in the visible layer as well as connections between nodes in the hidden layer. The network is illustrated in the figure below. + +

    diff --git a/doc/pub/BM/html/._BM-bs050.html b/doc/pub/BM/html/._BM-bs050.html index 797909147..bba970f2c 100644 --- a/doc/pub/BM/html/._BM-bs050.html +++ b/doc/pub/BM/html/._BM-bs050.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,28 +337,12 @@ MathJax.Hub.Config({ -

    Goals

    +

    The structure of the RBM network

    -The goal of the hidden layer is to increase the model's expressive power. We encode complex interactions between visible variables by introducing additional, hidden variables that interact with visible degrees of freedom in a simple manner, yet still reproduce the complex correlations between visible degrees in the data once marginalized over (integrated out). +



    -Examples of this trick being employed in physics: - -

      -
    1. The Hubbard-Stratonovich transformation
    2. -
    3. The introduction of ghost fields in gauge theory
    4. -
    5. Shadow wave functions in Quantum Monte Carlo simulations
    6. -
    - -The network parameters, to be optimized/learned: - -
      -
    1. \( \mathbf{a} \) represents the visible bias, a vector of same length as \( \mathbf{x} \).
    2. -
    3. \( \mathbf{b} \) represents the hidden bias, a vector of same lenght as \( \mathbf{h} \).
    4. -
    5. \( W \) represents the interaction weights, a matrix of size \( M\times N \).
    6. -
    -

    diff --git a/doc/pub/BM/html/._BM-bs051.html b/doc/pub/BM/html/._BM-bs051.html index 1217b8bef..68374fd23 100644 --- a/doc/pub/BM/html/._BM-bs051.html +++ b/doc/pub/BM/html/._BM-bs051.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,26 +337,16 @@ MathJax.Hub.Config({ -

    Joint distribution and the Energy function

    -The restricted Boltzmann machine is described by a Bolztmann distribution -$$ -\begin{align} - P_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}, -\tag{5} -\end{align} -$$ - -where \( Z \) is the normalization constant or partition function, defined as -$$ -\begin{align} - Z = \int \int e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})} d\mathbf{x} d\mathbf{h}. -\tag{6} -\end{align} -$$ - -It is common to ignore \( T_0 \) by setting it to one. +

    The network

    +The network layers: + +

      +
    1. A function \( \mathbf{x} \) that represents the visible layer, a vector of \( M \) elements (nodes). This layer represents both what the RBM might be given as training input, and what we want it to be able to reconstruct. This might for example be the pixels of an image, the spin values of the Ising model, or coefficients representing speech.
    2. +
    3. The function \( \mathbf{h} \) represents the hidden, or latent, layer. A vector of \( N \) elements (nodes). Also called "feature detectors".
    4. +
    +

    diff --git a/doc/pub/BM/html/._BM-bs052.html b/doc/pub/BM/html/._BM-bs052.html index 3c998c9d7..361b13e76 100644 --- a/doc/pub/BM/html/._BM-bs052.html +++ b/doc/pub/BM/html/._BM-bs052.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,17 +337,28 @@ MathJax.Hub.Config({ -

    Network Elements

    +

    Goals

    -The function \( E(\mathbf{x},\mathbf{h}) \) gives the energy of a -configuration (pair of vectors) \( (\mathbf{x}, \mathbf{h}) \). The lower -the energy of a configuration, the higher the probability of it. This -function also depends on the parameters \( \mathbf{a} \), \( \mathbf{b} \) and -\( W \). Thus, when we adjust them during the learning procedure, we are -adjusting the energy function to best fit our problem. +The goal of the hidden layer is to increase the model's expressive power. We encode complex interactions between visible variables by introducing additional, hidden variables that interact with visible degrees of freedom in a simple manner, yet still reproduce the complex correlations between visible degrees in the data once marginalized over (integrated out).

    +Examples of this trick being employed in physics: + +

      +
    1. The Hubbard-Stratonovich transformation
    2. +
    3. The introduction of ghost fields in gauge theory
    4. +
    5. Shadow wave functions in Quantum Monte Carlo simulations
    6. +
    + +The network parameters, to be optimized/learned: + +
      +
    1. \( \mathbf{a} \) represents the visible bias, a vector of same length as \( \mathbf{x} \).
    2. +
    3. \( \mathbf{b} \) represents the hidden bias, a vector of same lenght as \( \mathbf{h} \).
    4. +
    5. \( W \) represents the interaction weights, a matrix of size \( M\times N \).
    6. +
    +

    diff --git a/doc/pub/BM/html/._BM-bs053.html b/doc/pub/BM/html/._BM-bs053.html index 450ae601e..52919ba29 100644 --- a/doc/pub/BM/html/._BM-bs053.html +++ b/doc/pub/BM/html/._BM-bs053.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,42 +337,24 @@ MathJax.Hub.Config({ -

    Defining different types of RBMs

    -There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function \( E(\mathbf{x},\mathbf{h}) \). - -

    -

    -
    -

    - -

    -RBMs were first developed using binary units in both the visible and hidden layer. The corresponding energy function is defined as follows: +

    Joint distribution

    +The restricted Boltzmann machine is described by a Bolztmann distribution $$ \begin{align} - E(\mathbf{x}, \mathbf{h}) = - \sum_i^M x_i a_i- \sum_j^N b_j h_j - \sum_{i,j}^{M,N} x_i w_{ij} h_j, -\tag{7} + P_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}, +\tag{5} \end{align} $$ -where the binary values taken on by the nodes are most commonly 0 and 1. -
    -
    - -
    -
    -

    - -

    -Another varient is the RBM where the visible units are Gaussian while the hidden units remain binary: +where \( Z \) is the normalization constant or partition function, defined as $$ \begin{align} - E(\mathbf{x}, \mathbf{h}) = \sum_i^M \frac{(x_i - a_i)^2}{2\sigma_i^2} - \sum_j^N b_j h_j - \sum_{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma_i^2}. -\tag{8} + Z = \int \int e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})} d\mathbf{x} d\mathbf{h}. +\tag{6} \end{align} $$ -

    -
    +It is common to ignore \( T_0 \) by setting it to one.

    @@ -388,7 +382,7 @@ $$

  • 62
  • 63
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs054.html b/doc/pub/BM/html/._BM-bs054.html index 6560a5359..18ca94de2 100644 --- a/doc/pub/BM/html/._BM-bs054.html +++ b/doc/pub/BM/html/._BM-bs054.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,22 +337,32 @@ MathJax.Hub.Config({ -

    More about RBMs

    +

    Network Elements, the energy function

    -
      -
    1. Useful when we model continuous data (i.e., we wish \( \mathbf{x} \) to be continuous)
    2. -
    3. Requires a smaller learning rate, since there's no upper bound to the value a component might take in the reconstruction
    4. -
    +

    +The function \( E(\mathbf{x},\mathbf{h}) \) gives the energy of a +configuration (pair of vectors) \( (\mathbf{x}, \mathbf{h}) \). The lower +the energy of a configuration, the higher the probability of it. This +function also depends on the parameters \( \mathbf{a} \), \( \mathbf{b} \) and +\( W \). Thus, when we adjust them during the learning procedure, we are +adjusting the energy function to best fit our problem. -Other types of units include: +

    +An expression for the energy function is +$$ +E(\hat{x},\hat{h}) = -\sum_{ia}^{NA}b_i^a \alpha_i^a(x_i)-\sum_{jd}^{MD}c_j^d \beta_j^d(h_j)-\sum_{ijad}^{NAMD}b_i^a \alpha_i^a(x_i)c_j^d \beta_j^d(h_j)w_{ij}^{ad}. +$$ -

      -
    1. Softmax and multinomial units
    2. -
    3. Gaussian visible and hidden units
    4. -
    5. Binomial units
    6. -
    7. Rectified linear units
    8. -
    +

    +Here \( \beta_j^d(h_j) \) and \( \alpha_i^a(x_j) \) are so-called transfer functions that map a given input value to a desired feature value. The labels \( a \) and \( d \) denote that there can be multiple transfer functions per variable. The first sum depends only on the visible units. The second on the hidden ones. Note that there is no connection between nodes in a layer. +

    +The quantities \( b \) and \( c \) can be interpreted as the visible and hidden biases, respectively. + +

    +The connection between the nodes in the two layers is given by the weights \( w_{ij} \). + +

    diff --git a/doc/pub/BM/html/._BM-bs055.html b/doc/pub/BM/html/._BM-bs055.html index dde2da421..b3463aa67 100644 --- a/doc/pub/BM/html/._BM-bs055.html +++ b/doc/pub/BM/html/._BM-bs055.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,28 +337,43 @@ MathJax.Hub.Config({ -

    Sampling: Metropolis sampling

    -In order to sample from the RBM probability distribution it is common to use Markov Chain Monte Carlo (MCMC) algorithms such as Metropolis-Hastings or Gibbs sampling. +

    Defining different types of RBMs

    +There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function \( E(\mathbf{x},\mathbf{h}) \).

    -Metropolis sampling starts by suggesting a new configuration \( \boldsymbol{x}^{k+1} \). In the brute force method this is done by some random change of the visible units. The new configuration is then accepted with the acceptance probability -$$ -\begin{align} - A(\boldsymbol{x}^k \rightarrow \boldsymbol{x}^{k+1}) = \text{min} (1, \frac{P(\boldsymbol{x}^{k+1})}{P(\boldsymbol{x}^k)}), -\tag{9} -\end{align} -$$ +

    +
    +

    -where we need the marginalized probability +

    +RBMs were first developed using binary units in both the visible and hidden layer. The corresponding energy function is defined as follows: $$ \begin{align} - P(\boldsymbol{x}) &= \sum_\mathbf{h} P_{rbm}(\mathbf{x}, \mathbf{h}) -\tag{10}\\ - &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. -\tag{11} + E(\mathbf{x}, \mathbf{h}) = - \sum_i^M x_i a_i- \sum_j^N b_j h_j - \sum_{i,j}^{M,N} x_i w_{ij} h_j, +\tag{7} \end{align} $$ +where the binary values taken on by the nodes are most commonly 0 and 1. +

    +
    + +
    +
    +

    + +

    +Another varient is the RBM where the visible units are Gaussian while the hidden units remain binary: +$$ +\begin{align} + E(\mathbf{x}, \mathbf{h}) = \sum_i^M \frac{(x_i - a_i)^2}{2\sigma_i^2} - \sum_j^N b_j h_j - \sum_{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma_i^2}. +\tag{8} +\end{align} +$$ +

    +
    + +

    @@ -371,6 +398,9 @@ $$

  • 62
  • 63
  • 64
  • +
  • 65
  • +
  • ...
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs056.html b/doc/pub/BM/html/._BM-bs056.html index 1577b29ad..f51d1511d 100644 --- a/doc/pub/BM/html/._BM-bs056.html +++ b/doc/pub/BM/html/._BM-bs056.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,26 +337,22 @@ MathJax.Hub.Config({ -

    Sampling: Gibbs sampling

    +

    More about RBMs

    -

    -In this method we sample from the joint probability \( P_{rbm} (\mathbf{x}, \mathbf{h}) \) by way of a two step sampling process. We alternately update the visible and hidden units. -New samples are generated according to the conditional probabilities \( P(x_i|\mathbf{h}) \) and \( P(h_j|\mathbf{x}) \) respectively and accepted with the probability of \( 1 \). While the the visible nodes are dependent on the hidden nodes and vice versa, the nodes are independent of other nodes within the same layer. This is due to there being no intra layer interactions in the restricted Boltzmann machine. +

      +
    1. Useful when we model continuous data (i.e., we wish \( \mathbf{x} \) to be continuous)
    2. +
    3. Requires a smaller learning rate, since there's no upper bound to the value a component might take in the reconstruction
    4. +
    -

    -The conditional probabilities are often referred to as the activitation functions in the neural networks context due to their role in determining the node outputs. For the binary-binary RBM they are -$$ -\begin{align} - P(h_j = 1 | \boldsymbol{x}) &= \frac{1}{1 + e^{-b_j - \sum_i x_i w_{ij}}} -\tag{12}\\ - P(x_i = 1 | \boldsymbol{h}) &= \frac{1}{1 + e^{-a_j - \sum_j h_j w_{ij}}}, -\tag{13} -\end{align} -$$ +Other types of units include: -where we recognize the logistic sigmoid function \( \sigma (x) = 1/(1+exp(-x)) \). +

      +
    1. Softmax and multinomial units
    2. +
    3. Gaussian visible and hidden units
    4. +
    5. Binomial units
    6. +
    7. Rectified linear units
    8. +
    -

    diff --git a/doc/pub/BM/html/._BM-bs057.html b/doc/pub/BM/html/._BM-bs057.html index 76edbecd6..20051d66f 100644 --- a/doc/pub/BM/html/._BM-bs057.html +++ b/doc/pub/BM/html/._BM-bs057.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,18 +337,27 @@ MathJax.Hub.Config({ -

    Gaussian RBM

    -For the Gaussian-Binary RBM the conditional probabilities are +

    Sampling: Metropolis sampling

    +In order to sample from the RBM probability distribution it is common to use Markov Chain Monte Carlo (MCMC) algorithms such as Metropolis-Hastings or Gibbs sampling. + +

    +Metropolis sampling starts by suggesting a new configuration \( \boldsymbol{x}^{k+1} \). In the brute force method this is done by some random change of the visible units. The new configuration is then accepted with the acceptance probability $$ \begin{align} - P(x_i|\mathbf{h}) &= \mathcal{N}(x_i; a_i+ \sum_j h_j w_{ij}, \sigma^2) -\tag{14}\\ - P(h_j=1|\mathbf{x}) &= \frac{1}{1+e^{-b_j-\frac{1}{\sigma^2} \sum_i x_i w_{ij}}}, -\tag{15} -\end{align} + A(\boldsymbol{x}^k \rightarrow \boldsymbol{x}^{k+1}) = \text{min} (1, \frac{P(\boldsymbol{x}^{k+1})}{P(\boldsymbol{x}^k)}), +\tag{9} +\end{align} $$ -while the visible units now follow a normal distribution, we see the hidden units again follow the logistic sigmoid function. +where we need the marginalized probability +$$ +\begin{align} + P(\boldsymbol{x}) &= \sum_\mathbf{h} P_{rbm}(\mathbf{x}, \mathbf{h}) +\tag{10}\\ + &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. +\tag{11} +\end{align} +$$

    @@ -360,6 +381,11 @@ while the visible units now follow a normal distribution, we see the hidden unit

  • 62
  • 63
  • 64
  • +
  • 65
  • +
  • 66
  • +
  • 67
  • +
  • ...
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs058.html b/doc/pub/BM/html/._BM-bs058.html index 5a3283a64..bfd056fb3 100644 --- a/doc/pub/BM/html/._BM-bs058.html +++ b/doc/pub/BM/html/._BM-bs058.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,22 +337,24 @@ MathJax.Hub.Config({ -

    Cost function

    +

    Sampling: Gibbs sampling

    -When working with a training dataset, the most common training approach is maximizing the log-likelihood of the training data. The log likelihood characterizes the log-probability of generating the observed data using our generative model. Using this method our cost function is chosen as the negative log-likelihood. The learning then consists of trying to find parameters that maximize the probability of the dataset, and is known as Maximum Likelihood Estimation (MLE). -Denoting the parameters as \( \boldsymbol{\theta} = a_1,...,a_M,b_1,...,b_N,w_{11},...,w_{MN} \), the log-likelihood is given by +In this method we sample from the joint probability \( P_{rbm} (\mathbf{x}, \mathbf{h}) \) by way of a two step sampling process. We alternately update the visible and hidden units. +New samples are generated according to the conditional probabilities \( P(x_i|\mathbf{h}) \) and \( P(h_j|\mathbf{x}) \) respectively and accepted with the probability of \( 1 \). While the the visible nodes are dependent on the hidden nodes and vice versa, the nodes are independent of other nodes within the same layer. This is due to there being no intra layer interactions in the restricted Boltzmann machine. + +

    +The conditional probabilities are often referred to as the activitation functions in the neural networks context due to their role in determining the node outputs. For the binary-binary RBM they are $$ \begin{align} - \mathcal{L}(\{ \theta_i \}) &= \langle \text{log} P_\theta(\boldsymbol{x}) \rangle_{data} -\tag{16}\\ - &= - \langle E(\boldsymbol{x}; \{ \theta_i\}) \rangle_{data} - \text{log} Z(\{ \theta_i\}), -\tag{17} + P(h_j = 1 | \boldsymbol{x}) &= \frac{1}{1 + e^{-b_j - \sum_i x_i w_{ij}}} +\tag{12}\\ + P(x_i = 1 | \boldsymbol{h}) &= \frac{1}{1 + e^{-a_j - \sum_j h_j w_{ij}}}, +\tag{13} \end{align} $$ -where we used that the normalization constant does not depend on the data, \( \langle \text{log} Z(\{ \theta_i\}) \rangle = \text{log} Z(\{ \theta_i\}) \) -Our cost function is the negative log-likelihood, \( \mathcal{C}(\{ \theta_i \}) = - \mathcal{L}(\{ \theta_i \}) \) +where we recognize the logistic sigmoid function \( \sigma (x) = 1/(1+exp(-x)) \).

    @@ -363,6 +377,12 @@ Our cost function is the negative log-likelihood, \( \mathcal{C}(\{ \theta_i \})

  • 62
  • 63
  • 64
  • +
  • 65
  • +
  • 66
  • +
  • 67
  • +
  • 68
  • +
  • ...
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs059.html b/doc/pub/BM/html/._BM-bs059.html index d820433ab..3e8932a6f 100644 --- a/doc/pub/BM/html/._BM-bs059.html +++ b/doc/pub/BM/html/._BM-bs059.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,45 +337,18 @@ MathJax.Hub.Config({ -

    Optimization / Training

    -The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation +

    Gaussian RBM

    +For the Gaussian-Binary RBM the conditional probabilities are $$ \begin{align} - \boldsymbol{\theta}_{k+1} = \boldsymbol{\theta}_k - \eta \nabla \mathcal{C} (\boldsymbol{\theta}_k) -\tag{18} + P(x_i|\mathbf{h}) &= \mathcal{N}(x_i; a_i+ \sum_j h_j w_{ij}, \sigma^2) +\tag{14}\\ + P(h_j=1|\mathbf{x}) &= \frac{1}{1+e^{-b_j-\frac{1}{\sigma^2} \sum_i x_i w_{ij}}}, +\tag{15} \end{align} $$ -at each \( k \)-th iteration. There are a range of variants of the algorithm which aim at making the learning rate \( \eta \) more adaptive so the method might be more efficient while remaining stable. - -

    -We now need the gradient of the cost function in order to minimize it. We find that -$$ -\begin{align} - \frac{\partial \mathcal{C}(\{ \theta_i\})}{\partial \theta_i} - &= \langle \frac{\partial E(\boldsymbol{x}; \theta_i)}{\partial \theta_i} \rangle_{data} - + \frac{\partial \text{log} Z(\{ \theta_i\})}{\partial \theta_i} -\tag{19}\\ - &= \langle O_i(\boldsymbol{x}) \rangle_{data} - \langle O_i(\boldsymbol{x}) \rangle_{model}, -\tag{20} -\end{align} -$$ - -where in order to simplify notation we defined the "operator" -$$ -\begin{align} - O_i(\boldsymbol{x}) = \frac{\partial E(\boldsymbol{x}; \theta_i)}{\partial \theta_i}, -\tag{21} -\end{align} -$$ - -and used the statistical mechanics relationship between expectation values and the log-partition function: -$$ -\begin{align} - \langle O_i(\boldsymbol{x}) \rangle_{model} = \text{Tr} P_\theta(\boldsymbol{x})O_i(\boldsymbol{x}) = - \frac{\partial \text{log} Z(\{ \theta_i\})}{\partial \theta_i}. -\tag{22} -\end{align} -$$ +while the visible units now follow a normal distribution, we see the hidden units again follow the logistic sigmoid function.

    @@ -385,6 +370,13 @@ $$

  • 62
  • 63
  • 64
  • +
  • 65
  • +
  • 66
  • +
  • 67
  • +
  • 68
  • +
  • 69
  • +
  • ...
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs060.html b/doc/pub/BM/html/._BM-bs060.html index b9fd3b967..50f8e3235 100644 --- a/doc/pub/BM/html/._BM-bs060.html +++ b/doc/pub/BM/html/._BM-bs060.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -323,28 +335,24 @@ MathJax.Hub.Config({

     

     

     

    - + -

    More on RBMs

    +

    Cost function

    -The data-dependent term in the gradient is known as the positive phase of the gradient, while the model-dependent term is known as the negative phase of the gradient. The aim of the training is to lower the energy of configurations that are near observed data points (increasing their probability), and raising the energy of configurations that are far from observed data points (decreasing their probability). - -

    -The gradient of the negative log-likelihood cost function of a Binary-Binary RBM is then +When working with a training dataset, the most common training approach is maximizing the log-likelihood of the training data. The log likelihood characterizes the log-probability of generating the observed data using our generative model. Using this method our cost function is chosen as the negative log-likelihood. The learning then consists of trying to find parameters that maximize the probability of the dataset, and is known as Maximum Likelihood Estimation (MLE). +Denoting the parameters as \( \boldsymbol{\theta} = a_1,...,a_M,b_1,...,b_N,w_{11},...,w_{MN} \), the log-likelihood is given by $$ \begin{align} - \frac{\partial \mathcal{C} (w_{ij}, a_i, b_j)}{\partial w_{ij}} =& \langle x_i h_j \rangle_{data} - \langle x_i h_j \rangle_{model} -\tag{23}\\ - \frac{\partial \mathcal{C} (w_{ij}, a_i, b_j)}{\partial a_{ij}} =& \langle x_i \rangle_{data} - \langle x_i \rangle_{model} -\tag{24}\\ - \frac{\partial \mathcal{C} (w_{ij}, a_i, b_j)}{\partial b_{ij}} =& \langle h_i \rangle_{data} - \langle h_i \rangle_{model}. -\tag{25}\\ -\tag{26} + \mathcal{L}(\{ \theta_i \}) &= \langle \text{log} P_\theta(\boldsymbol{x}) \rangle_{data} +\tag{16}\\ + &= - \langle E(\boldsymbol{x}; \{ \theta_i\}) \rangle_{data} - \text{log} Z(\{ \theta_i\}), +\tag{17} \end{align} $$ -To get the expecation values with respect to the data, we set the visible units to each of the observed samples in the training data, then update the hidden units according to the conditional probability found before. We then average over all samples in the training data to calculate expectation values with respect to the data. +where we used that the normalization constant does not depend on the data, \( \langle \text{log} Z(\{ \theta_i\}) \rangle = \text{log} Z(\{ \theta_i\}) \) +Our cost function is the negative log-likelihood, \( \mathcal{C}(\{ \theta_i \}) = - \mathcal{L}(\{ \theta_i \}) \)

    @@ -365,6 +373,12 @@ To get the expecation values with respect to the data, we set the visib

  • 62
  • 63
  • 64
  • +
  • 65
  • +
  • 66
  • +
  • 67
  • +
  • 68
  • +
  • 69
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs061.html b/doc/pub/BM/html/._BM-bs061.html index 102c6c1e1..176c69a9f 100644 --- a/doc/pub/BM/html/._BM-bs061.html +++ b/doc/pub/BM/html/._BM-bs061.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,10 +337,47 @@ MathJax.Hub.Config({ -

    Which sampling to use

    +

    Optimization / Training

    -To get the expectation values with respect to the model, we use Gibbs sampling. We can either initialize the \( \boldsymbol{x} \) randomly or with a training sample. While we ideally want a large number of Gibbs iterations \( n\rightarrow n \), one might decide to truncate it earlier for efficiency. Doing this while having intialized \( \boldsymbol{x} \) with a training data vector is referred to as contrastive divergence (CD), because one is then closer to approximating the gradient of this function than the negative log-likelihood. The contrastive divergence function is the difference between two Kullback-Leibler divergences (also called relative entropy), which measure how one probability distribution diverges from a second, expected probability distribution (in this case the estimated one from the ground truth one). +The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation +$$ +\begin{align} + \boldsymbol{\theta}_{k+1} = \boldsymbol{\theta}_k - \eta \nabla \mathcal{C} (\boldsymbol{\theta}_k) +\tag{18} +\end{align} +$$ + +at each \( k \)-th iteration. There are a range of variants of the algorithm which aim at making the learning rate \( \eta \) more adaptive so the method might be more efficient while remaining stable. + +

    +We now need the gradient of the cost function in order to minimize it. We find that +$$ +\begin{align} + \frac{\partial \mathcal{C}(\{ \theta_i\})}{\partial \theta_i} + &= \langle \frac{\partial E(\boldsymbol{x}; \theta_i)}{\partial \theta_i} \rangle_{data} + + \frac{\partial \text{log} Z(\{ \theta_i\})}{\partial \theta_i} +\tag{19}\\ + &= \langle O_i(\boldsymbol{x}) \rangle_{data} - \langle O_i(\boldsymbol{x}) \rangle_{model}, +\tag{20} +\end{align} +$$ + +where in order to simplify notation we defined the "operator" +$$ +\begin{align} + O_i(\boldsymbol{x}) = \frac{\partial E(\boldsymbol{x}; \theta_i)}{\partial \theta_i}, +\tag{21} +\end{align} +$$ + +and used the statistical mechanics relationship between expectation values and the log-partition function: +$$ +\begin{align} + \langle O_i(\boldsymbol{x}) \rangle_{model} = \text{Tr} P_\theta(\boldsymbol{x})O_i(\boldsymbol{x}) = - \frac{\partial \text{log} Z(\{ \theta_i\})}{\partial \theta_i}. +\tag{22} +\end{align} +$$

    @@ -348,6 +397,12 @@ To get the expectation values with respect to the model, we use Gibbs s

  • 62
  • 63
  • 64
  • +
  • 65
  • +
  • 66
  • +
  • 67
  • +
  • 68
  • +
  • 69
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/._BM-bs062.html b/doc/pub/BM/html/._BM-bs062.html index 2322c9e79..0c03d461b 100644 --- a/doc/pub/BM/html/._BM-bs062.html +++ b/doc/pub/BM/html/._BM-bs062.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -323,30 +335,30 @@ MathJax.Hub.Config({

     

     

     

    - + -

    Recent examples: RBMs for the quantum many body problem

    +

    More on RBMs

    -The idea of applying RBMs to quantum many body problems was presented by G. Carleo and M. Troyer, working with ETH Zurich and Microsoft Research. +The data-dependent term in the gradient is known as the positive phase of the gradient, while the model-dependent term is known as the negative phase of the gradient. The aim of the training is to lower the energy of configurations that are near observed data points (increasing their probability), and raising the energy of configurations that are far from observed data points (decreasing their probability).

    -Some of their motivation included +The gradient of the negative log-likelihood cost function of a Binary-Binary RBM is then +$$ +\begin{align} + \frac{\partial \mathcal{C} (w_{ij}, a_i, b_j)}{\partial w_{ij}} =& \langle x_i h_j \rangle_{data} - \langle x_i h_j \rangle_{model} +\tag{23}\\ + \frac{\partial \mathcal{C} (w_{ij}, a_i, b_j)}{\partial a_{ij}} =& \langle x_i \rangle_{data} - \langle x_i \rangle_{model} +\tag{24}\\ + \frac{\partial \mathcal{C} (w_{ij}, a_i, b_j)}{\partial b_{ij}} =& \langle h_i \rangle_{data} - \langle h_i \rangle_{model}. +\tag{25}\\ +\tag{26} +\end{align} +$$ -

    +To get the expecation values with respect to the data, we set the visible units to each of the observed samples in the training data, then update the hidden units according to the conditional probability found before. We then average over all samples in the training data to calculate expectation values with respect to the data. +

    diff --git a/doc/pub/BM/html/._BM-bs063.html b/doc/pub/BM/html/._BM-bs063.html index 064423b3e..eeaaa99f1 100644 --- a/doc/pub/BM/html/._BM-bs063.html +++ b/doc/pub/BM/html/._BM-bs063.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -325,13 +337,12 @@ MathJax.Hub.Config({ -

    Choose the right RBM

    +

    Which sampling to use

    -Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice. +To get the expectation values with respect to the model, we use Gibbs sampling. We can either initialize the \( \boldsymbol{x} \) randomly or with a training sample. While we ideally want a large number of Gibbs iterations \( n\rightarrow n \), one might decide to truncate it earlier for efficiency. Doing this while having intialized \( \boldsymbol{x} \) with a training data vector is referred to as contrastive divergence (CD), because one is then closer to approximating the gradient of this function than the negative log-likelihood. The contrastive divergence function is the difference between two Kullback-Leibler divergences (also called relative entropy), which measure how one probability distribution diverges from a second, expected probability distribution (in this case the estimated one from the ground truth one).

    -

    diff --git a/doc/pub/BM/html/._BM-bs064.html b/doc/pub/BM/html/._BM-bs064.html index b2cf6a620..f235e2b3d 100644 --- a/doc/pub/BM/html/._BM-bs064.html +++ b/doc/pub/BM/html/._BM-bs064.html @@ -188,37 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), + ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), - ('RBMs for the quantum many body problem', 2, None, '___sec61'), - ('Choose the right RBM', 2, None, '___sec62'), - ('Representing the wave function', 2, None, '___sec63'), - ('Choose the cost function', 2, None, '___sec64'), - ('Running the codes', 2, None, '___sec65'), + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), ('Energy as function of iterations, $N=2$ electrons', 2, None, - '___sec66'), - ('Energy as function of iterations, $N=6$ electrons', - 2, - None, - '___sec67'), - ('Conclusions and where do we stand', 2, None, '___sec68')]} + '___sec68')]} end of tocinfo --> @@ -303,28 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • -
  • Representing the wave function
  • -
  • Choose the cost function
  • -
  • Running the codes
  • -
  • Energy as function of iterations, \( N=2 \) electrons
  • -
  • Energy as function of iterations, \( N=6 \) electrons
  • -
  • Conclusions and where do we stand
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -340,41 +337,28 @@ MathJax.Hub.Config({ -

    Representing the wave function

    -The wavefunction should be a probability amplitude depending on \( \boldsymbol{x} \). The RBM model is given by the joint distribution of \( \boldsymbol{x} \) and \( \boldsymbol{h} \) -$$ -\begin{align} - F_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}. -\tag{27} -\end{align} -$$ - -To find the marginal distribution of \( \boldsymbol{x} \) we set: -$$ -\begin{align} - F_{rbm}(\mathbf{x}) &= \sum_\mathbf{h} F_{rbm}(\mathbf{x}, \mathbf{h}) -\tag{28}\\ - &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. -\tag{29} -\end{align} -$$ - -Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS) -$$ -\begin{align} - \Psi (\mathbf{X}) &= F_{rbm}(\mathbf{x}) -\tag{30}\\ - &= \frac{1}{Z}\sum_{\boldsymbol{h}} e^{-E(\mathbf{x}, \mathbf{h})} -\tag{31}\\ - &= \frac{1}{Z} \sum_{\{h_j\}} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2} + \sum_j^N b_j h_j + \sum_{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma^2}} -\tag{32}\\ - &= \frac{1}{Z} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2}} \prod_j^N (1 + e^{b_j + \sum_i^M \frac{x_i w_{ij}}{\sigma^2}}). -\tag{33}\\ -\tag{34} -\end{align} -$$ +

    Recent examples: RBMs for the quantum many body problem

    +The idea of applying RBMs to quantum many body problems was presented by G. Carleo and M. Troyer, working with ETH Zurich and Microsoft Research. + +

    +Some of their motivation included + +

    +

    @@ -340,23 +337,10 @@ MathJax.Hub.Config({ -

    Choose the cost function

    -Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is -$$ -\begin{align} - G_i = \frac{\partial \langle E_L \rangle}{\partial \theta_i} - = 2(\langle E_L \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle - \langle E_L \rangle \langle \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle ), -\tag{35} -\end{align} -$$ +

    Choose the right RBM

    -where the local energy is given by -$$ -\begin{align} - E_L = \frac{1}{\Psi} \hat{\mathbf{H}} \Psi. -\tag{36} -\end{align} -$$ +

    +Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice.

    diff --git a/doc/pub/BM/html/._BM-bs066.html b/doc/pub/BM/html/._BM-bs066.html index 984197c81..69b15ca6e 100644 --- a/doc/pub/BM/html/._BM-bs066.html +++ b/doc/pub/BM/html/._BM-bs066.html @@ -188,37 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), + ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), - ('RBMs for the quantum many body problem', 2, None, '___sec61'), - ('Choose the right RBM', 2, None, '___sec62'), - ('Representing the wave function', 2, None, '___sec63'), - ('Choose the cost function', 2, None, '___sec64'), - ('Running the codes', 2, None, '___sec65'), + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), ('Energy as function of iterations, $N=2$ electrons', 2, None, - '___sec66'), - ('Energy as function of iterations, $N=6$ electrons', - 2, - None, - '___sec67'), - ('Conclusions and where do we stand', 2, None, '___sec68')]} + '___sec68')]} end of tocinfo --> @@ -303,28 +300,28 @@ MathJax.Hub.Config({

  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • -
  • Representing the wave function
  • -
  • Choose the cost function
  • -
  • Running the codes
  • -
  • Energy as function of iterations, \( N=2 \) electrons
  • -
  • Energy as function of iterations, \( N=6 \) electrons
  • -
  • Conclusions and where do we stand
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -340,22 +337,43 @@ MathJax.Hub.Config({ -

    Running the codes

    -
    -
    -

    -You can find the codes for the simple two-electron case at the Github repository https://github.com/mhjensenseminars/MachineLearningTalk/tree/master/doc/Programs/MLcpp/src. Python codes to come, only c++ as of now. +

    Representing the wave function

    +The wavefunction should be a probability amplitude depending on \( \boldsymbol{x} \). The RBM model is given by the joint\ + distribution of \( \boldsymbol{x} \) and \( \boldsymbol{h} \) +$$ +\begin{align} + F_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}. +\tag{27} +\end{align} +$$ + +To find the marginal distribution of \( \boldsymbol{x} \) we set: +$$ +\begin{align} + F_{rbm}(\mathbf{x}) &= \sum_\mathbf{h} F_{rbm}(\mathbf{x}, \mathbf{h}) +\tag{28}\\ + &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. +\tag{29} +\end{align} +$$

    -The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor \( \exp{(r_{ij})} \) and the reduced Boltzmann machines. - -

    -The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used \( 14 \) hidden nodes in the calculations below. - -

    -

    -
    - +Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS) +$$ +\begin{align} + \Psi (\mathbf{X}) &= F_{rbm}(\mathbf{x}) +\tag{30}\\ + &= \frac{1}{Z}\sum_{\boldsymbol{h}} e^{-E(\mathbf{x}, \mathbf{h})} +\tag{31}\\ + &= \frac{1}{Z} \sum_{\{h_j\}} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2} + \sum_j^N b_j h_j + \sum_\ +{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma^2}} +\tag{32}\\ + &= \frac{1}{Z} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2}} \prod_j^N (1 + e^{b_j + \sum_i^M \frac{x\ +_i w_{ij}}{\sigma^2}}). +\tag{33}\\ +\tag{34} +\end{align} +$$

    diff --git a/doc/pub/BM/html/._BM-bs067.html b/doc/pub/BM/html/._BM-bs067.html index 3c894f39b..9952b0373 100644 --- a/doc/pub/BM/html/._BM-bs067.html +++ b/doc/pub/BM/html/._BM-bs067.html @@ -188,37 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), + ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), - ('RBMs for the quantum many body problem', 2, None, '___sec61'), - ('Choose the right RBM', 2, None, '___sec62'), - ('Representing the wave function', 2, None, '___sec63'), - ('Choose the cost function', 2, None, '___sec64'), - ('Running the codes', 2, None, '___sec65'), + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), ('Energy as function of iterations, $N=2$ electrons', 2, None, - '___sec66'), - ('Energy as function of iterations, $N=6$ electrons', - 2, - None, - '___sec67'), - ('Conclusions and where do we stand', 2, None, '___sec68')]} + '___sec68')]} end of tocinfo --> @@ -303,28 +300,28 @@ MathJax.Hub.Config({

  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • -
  • Representing the wave function
  • -
  • Choose the cost function
  • -
  • Running the codes
  • -
  • Energy as function of iterations, \( N=2 \) electrons
  • -
  • Energy as function of iterations, \( N=6 \) electrons
  • -
  • Conclusions and where do we stand
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -340,14 +337,23 @@ MathJax.Hub.Config({ -

    Energy as function of iterations, \( N=2 \) electrons

    -
    -
    -

    -



    -
    -
    +

    Choose the cost function

    +Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is +$$ +\begin{align} + G_i = \frac{\partial \langle E_L \rangle}{\partial \theta_i} + = 2(\langle E_L \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle - \langle E_L \rangle \langle \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle ), +\tag{35} +\end{align} +$$ +where the local energy is given by +$$ +\begin{align} + E_L = \frac{1}{\Psi} \hat{\mathbf{H}} \Psi. +\tag{36} +\end{align} +$$

    diff --git a/doc/pub/BM/html/._BM-bs068.html b/doc/pub/BM/html/._BM-bs068.html index df2e0a530..5ddb54b96 100644 --- a/doc/pub/BM/html/._BM-bs068.html +++ b/doc/pub/BM/html/._BM-bs068.html @@ -188,37 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), + ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), - ('RBMs for the quantum many body problem', 2, None, '___sec61'), - ('Choose the right RBM', 2, None, '___sec62'), - ('Representing the wave function', 2, None, '___sec63'), - ('Choose the cost function', 2, None, '___sec64'), - ('Running the codes', 2, None, '___sec65'), + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), ('Energy as function of iterations, $N=2$ electrons', 2, None, - '___sec66'), - ('Energy as function of iterations, $N=6$ electrons', - 2, - None, - '___sec67'), - ('Conclusions and where do we stand', 2, None, '___sec68')]} + '___sec68')]} end of tocinfo --> @@ -303,28 +300,28 @@ MathJax.Hub.Config({

  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • -
  • Representing the wave function
  • -
  • Choose the cost function
  • -
  • Running the codes
  • -
  • Energy as function of iterations, \( N=2 \) electrons
  • -
  • Energy as function of iterations, \( N=6 \) electrons
  • -
  • Conclusions and where do we stand
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -340,11 +337,19 @@ MathJax.Hub.Config({ -

    Energy as function of iterations, \( N=6 \) electrons

    +

    Running the codes

    -



    +You can find the codes for the simple two-electron case at the Github repository https://github.com/mhjensenseminars/MachineLearningTalk/tree/master/doc/Programs/MLcpp/src. Python codes to come, only c++ as of now. + +

    +The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor \( \exp{(r_{ij})} \) and the reduced Boltzmann machines. + +

    +The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used \( 14 \) hidden nodes in the calculations below. + +

    diff --git a/doc/pub/BM/html/._BM-bs069.html b/doc/pub/BM/html/._BM-bs069.html index 7a12d4688..de86ebcd5 100644 --- a/doc/pub/BM/html/._BM-bs069.html +++ b/doc/pub/BM/html/._BM-bs069.html @@ -188,37 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), + ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), - ('RBMs for the quantum many body problem', 2, None, '___sec61'), - ('Choose the right RBM', 2, None, '___sec62'), - ('Representing the wave function', 2, None, '___sec63'), - ('Choose the cost function', 2, None, '___sec64'), - ('Running the codes', 2, None, '___sec65'), + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), ('Energy as function of iterations, $N=2$ electrons', 2, None, - '___sec66'), - ('Energy as function of iterations, $N=6$ electrons', - 2, - None, - '___sec67'), - ('Conclusions and where do we stand', 2, None, '___sec68')]} + '___sec68')]} end of tocinfo --> @@ -303,28 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • -
  • Representing the wave function
  • -
  • Choose the cost function
  • -
  • Running the codes
  • -
  • Energy as function of iterations, \( N=2 \) electrons
  • -
  • Energy as function of iterations, \( N=6 \) electrons
  • -
  • Conclusions and where do we stand
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -340,26 +337,11 @@ MathJax.Hub.Config({ -

    Conclusions and where do we stand

    +

    Energy as function of iterations, \( N=2 \) electrons

    - -

    +



    diff --git a/doc/pub/BM/html/BM-bs.html b/doc/pub/BM/html/BM-bs.html index dbed0cb69..d01b0b80f 100644 --- a/doc/pub/BM/html/BM-bs.html +++ b/doc/pub/BM/html/BM-bs.html @@ -188,28 +188,34 @@ Automatically generated HTML file from DocOnce source 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -294,22 +300,28 @@ MathJax.Hub.Config({
  • Gibbs sampling
  • Boltzmann Machines
  • Some similarities and differences from DNNs
  • -
  • The structure of the RBM network
  • -
  • The network
  • -
  • Goals
  • -
  • Joint distribution and the Energy function
  • -
  • Network Elements
  • -
  • Defining different types of RBMs
  • -
  • More about RBMs
  • -
  • Sampling: Metropolis sampling
  • -
  • Sampling: Gibbs sampling
  • -
  • Gaussian RBM
  • -
  • Cost function
  • -
  • Optimization / Training
  • -
  • More on RBMs
  • -
  • Which sampling to use
  • -
  • Recent examples: RBMs for the quantum many body problem
  • -
  • Choose the right RBM
  • +
  • Boltzmann machines (BM)
  • +
  • A standard BM setup
  • +
  • The structure of the RBM network
  • +
  • The network
  • +
  • Goals
  • +
  • Joint distribution
  • +
  • Network Elements, the energy function
  • +
  • Defining different types of RBMs
  • +
  • More about RBMs
  • +
  • Sampling: Metropolis sampling
  • +
  • Sampling: Gibbs sampling
  • +
  • Gaussian RBM
  • +
  • Cost function
  • +
  • Optimization / Training
  • +
  • More on RBMs
  • +
  • Which sampling to use
  • +
  • Recent examples: RBMs for the quantum many body problem
  • +
  • Choose the right RBM
  • +
  • Representing the wave function
  • +
  • Choose the cost function
  • +
  • Running the codes
  • +
  • Energy as function of iterations, \( N=2 \) electrons
  • @@ -343,7 +355,7 @@ MathJax.Hub.Config({
    Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University and Department of Physics, University of Oslo, Norway

    -

    Nov 23, 2018

    +

    Nov 28, 2018


    @@ -367,7 +379,7 @@ MathJax.Hub.Config({

  • 9
  • 10
  • ...
  • -
  • 64
  • +
  • 70
  • »
  • diff --git a/doc/pub/BM/html/BM-reveal.html b/doc/pub/BM/html/BM-reveal.html index 703656134..ac5114524 100644 --- a/doc/pub/BM/html/BM-reveal.html +++ b/doc/pub/BM/html/BM-reveal.html @@ -147,7 +147,7 @@ MathJax.Hub.Config({
    Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University and Department of Physics, University of Oslo, Norway

     
    -

    Nov 23, 2018

    +

    Nov 28, 2018


    @@ -209,7 +209,7 @@ Furthermore, they have been used to solve complicated quantum mechanical many-pa

    An intermediate step, the Hopfield network and links to the Ising and Potts models

    -More material on Hopfield networks will come here +More material on Hopfield networks will come here later. @@ -1502,7 +1502,68 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some

    -

    The structure of the RBM network

    +

    Boltzmann machines (BM)

    + +

    +

    + +

    +A BM is what we would call an undirected probabilistic graphical model +with stochastic continuous or discrete units. +

    + +
    + +

    +It is interpreted as a stochastic recurrent neural network where the +state of each unit(neurons/nodes) depends on the units it is connected +to. The weights in the network represent thus the strength of the +interaction between various units/nodes. +

    + +
    + +

    +It turns into a Hopfield network if we choose deterministic rather +than stochastic units. In contrast to a Hopfield network, a BM is a +so-called generative model. It allows us to generate new samples from +the learned distribution. +

    +
    + + +
    +

    A standard BM setup

    + +

    +

    + +

    +A standard BM network is divided into a set of observable and visible units \( \hat{x} \) and a set of unknown hidden units/nodes \( \hat{h} \). +

    + +

    +

    + +

    +Additionally there can be bias nodes for the hidden and visible layers. These biases are normally set to \( 1 \). +

    + +

    +

    + +

    +BMs are stackable, meaning they cwe can train a BM which serves as input to another BM. We can construct deep networks for learning complex PDFs. The layers can be trained one after another, a feature which makes them popular in deep learning +

    + +

    +However, they are often hard to train. This leads to the introduction of so-called restricted BMs, or RBMS. +Here we take away all lateral connections between nodes in the visible layer as well as connections between nodes in the hidden layer. The network is illustrated in the figure below. +

    + + +
    +

    The structure of the RBM network





    @@ -1510,7 +1571,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some
    -

    The network

    +

    The network

    The network layers: @@ -1523,7 +1584,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some

    -

    Goals

    +

    Goals

    The goal of the hidden layer is to increase the model's expressive power. We encode complex interactions between visible variables by introducing additional, hidden variables that interact with visible degrees of freedom in a simple manner, yet still reproduce the complex correlations between visible degrees in the data once marginalized over (integrated out). @@ -1549,7 +1610,7 @@ Examples of this trick being employed in physics:

    -

    Joint distribution and the Energy function

    +

    Joint distribution

    The restricted Boltzmann machine is described by a Bolztmann distribution

     
    $$ @@ -1575,7 +1636,7 @@ It is common to ignore \( T_0 \) by setting it to one.

    -

    Network Elements

    +

    Network Elements, the energy function

    The function \( E(\mathbf{x},\mathbf{h}) \) gives the energy of a @@ -1584,11 +1645,28 @@ the energy of a configuration, the higher the probability of it. This function also depends on the parameters \( \mathbf{a} \), \( \mathbf{b} \) and \( W \). Thus, when we adjust them during the learning procedure, we are adjusting the energy function to best fit our problem. + +

    +An expression for the energy function is +

     
    +$$ +E(\hat{x},\hat{h}) = -\sum_{ia}^{NA}b_i^a \alpha_i^a(x_i)-\sum_{jd}^{MD}c_j^d \beta_j^d(h_j)-\sum_{ijad}^{NAMD}b_i^a \alpha_i^a(x_i)c_j^d \beta_j^d(h_j)w_{ij}^{ad}. +$$ +

     
    + +

    +Here \( \beta_j^d(h_j) \) and \( \alpha_i^a(x_j) \) are so-called transfer functions that map a given input value to a desired feature value. The labels \( a \) and \( d \) denote that there can be multiple transfer functions per variable. The first sum depends only on the visible units. The second on the hidden ones. Note that there is no connection between nodes in a layer. + +

    +The quantities \( b \) and \( c \) can be interpreted as the visible and hidden biases, respectively. + +

    +The connection between the nodes in the two layers is given by the weights \( w_{ij} \).

    -

    Defining different types of RBMs

    +

    Defining different types of RBMs

    There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function \( E(\mathbf{x},\mathbf{h}) \).

    @@ -1625,7 +1703,7 @@ $$

    -

    More about RBMs

    +

    More about RBMs

    1. Useful when we model continuous data (i.e., we wish \( \mathbf{x} \) to be continuous)
    2. @@ -1645,7 +1723,7 @@ Other types of units include:
      -

      Sampling: Metropolis sampling

      +

      Sampling: Metropolis sampling

      In order to sample from the RBM probability distribution it is common to use Markov Chain Monte Carlo (MCMC) algorithms such as Metropolis-Hastings or Gibbs sampling.

      @@ -1674,7 +1752,7 @@ $$

      -

      Sampling: Gibbs sampling

      +

      Sampling: Gibbs sampling

      In this method we sample from the joint probability \( P_{rbm} (\mathbf{x}, \mathbf{h}) \) by way of a two step sampling process. We alternately update the visible and hidden units. @@ -1698,7 +1776,7 @@ where we recognize the logistic sigmoid function \( \sigma (x) = 1/(1+exp(-x)) \

      -

      Gaussian RBM

      +

      Gaussian RBM

      For the Gaussian-Binary RBM the conditional probabilities are

       
      $$ @@ -1716,7 +1794,7 @@ while the visible units now follow a normal distribution, we see the hidden unit

      -

      Cost function

      +

      Cost function

      When working with a training dataset, the most common training approach is maximizing the log-likelihood of the training data. The log likelihood characterizes the log-probability of generating the observed data using our generative model. Using this method our cost function is chosen as the negative log-likelihood. The learning then consists of trying to find parameters that maximize the probability of the dataset, and is known as Maximum Likelihood Estimation (MLE). @@ -1738,7 +1816,9 @@ Our cost function is the negative log-likelihood, \( \mathcal{C}(\{ \theta_i \})

      -

      Optimization / Training

      +

      Optimization / Training

      + +

      The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation

       
      $$ @@ -1789,7 +1869,7 @@ $$

      -

      More on RBMs

      +

      More on RBMs

      The data-dependent term in the gradient is known as the positive phase of the gradient, while the model-dependent term is known as the negative phase of the gradient. The aim of the training is to lower the energy of configurations that are near observed data points (increasing their probability), and raising the energy of configurations that are far from observed data points (decreasing their probability). @@ -1815,7 +1895,7 @@ To get the expecation values with respect to the data, we set the visib

      -

      Which sampling to use

      +

      Which sampling to use

      To get the expectation values with respect to the model, we use Gibbs sampling. We can either initialize the \( \boldsymbol{x} \) randomly or with a training sample. While we ideally want a large number of Gibbs iterations \( n\rightarrow n \), one might decide to truncate it earlier for efficiency. Doing this while having intialized \( \boldsymbol{x} \) with a training data vector is referred to as contrastive divergence (CD), because one is then closer to approximating the gradient of this function than the negative log-likelihood. The contrastive divergence function is the difference between two Kullback-Leibler divergences (also called relative entropy), which measure how one probability distribution diverges from a second, expected probability distribution (in this case the estimated one from the ground truth one). @@ -1823,7 +1903,7 @@ To get the expectation values with respect to the model, we use Gibbs s

      -

      Recent examples: RBMs for the quantum many body problem

      +

      Recent examples: RBMs for the quantum many body problem

      The idea of applying RBMs to quantum many body problems was presented by G. Carleo and M. Troyer, working with ETH Zurich and Microsoft Research. @@ -1847,13 +1927,113 @@ Some of their motivation included

      -

      Choose the right RBM

      +

      Choose the right RBM

      Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice.

      +
      +

      Representing the wave function

      +The wavefunction should be a probability amplitude depending on \( \boldsymbol{x} \). The RBM model is given by the joint\ + distribution of \( \boldsymbol{x} \) and \( \boldsymbol{h} \) +

       
      +$$ +\begin{align} + F_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}. +\tag{27} +\end{align} +$$ +

       
      + +To find the marginal distribution of \( \boldsymbol{x} \) we set: +

       
      +$$ +\begin{align} + F_{rbm}(\mathbf{x}) &= \sum_\mathbf{h} F_{rbm}(\mathbf{x}, \mathbf{h}) +\tag{28}\\ + &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. +\tag{29} +\end{align} +$$ +

       
      + +

      +Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS) +

       
      +$$ +\begin{align} + \Psi (\mathbf{X}) &= F_{rbm}(\mathbf{x}) +\tag{30}\\ + &= \frac{1}{Z}\sum_{\boldsymbol{h}} e^{-E(\mathbf{x}, \mathbf{h})} +\tag{31}\\ + &= \frac{1}{Z} \sum_{\{h_j\}} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2} + \sum_j^N b_j h_j + \sum_\ +{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma^2}} +\tag{32}\\ + &= \frac{1}{Z} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2}} \prod_j^N (1 + e^{b_j + \sum_i^M \frac{x\ +_i w_{ij}}{\sigma^2}}). +\tag{33}\\ +\tag{34} +\end{align} +$$ +

       
      +

      + + +
      +

      Choose the cost function

      +Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is +

       
      +$$ +\begin{align} + G_i = \frac{\partial \langle E_L \rangle}{\partial \theta_i} + = 2(\langle E_L \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle - \langle E_L \rangle \langle \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle ), +\tag{35} +\end{align} +$$ +

       
      + +where the local energy is given by +

       
      +$$ +\begin{align} + E_L = \frac{1}{\Psi} \hat{\mathbf{H}} \Psi. +\tag{36} +\end{align} +$$ +

       
      +

      + + +
      +

      Running the codes

      +
      + +

      +You can find the codes for the simple two-electron case at the Github repository https://github.com/mhjensenseminars/MachineLearningTalk/tree/master/doc/Programs/MLcpp/src. Python codes to come, only c++ as of now. + +

      +The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor \( \exp{(r_{ij})} \) and the reduced Boltzmann machines. + +

      +The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used \( 14 \) hidden nodes in the calculations below. + + +

      +
      + + +
      +

      Energy as function of iterations, \( N=2 \) electrons

      +
      + +

      +



      +
      +
      + + diff --git a/doc/pub/BM/html/BM-solarized.html b/doc/pub/BM/html/BM-solarized.html index 836b5e915..75e2ebfda 100644 --- a/doc/pub/BM/html/BM-solarized.html +++ b/doc/pub/BM/html/BM-solarized.html @@ -208,28 +208,34 @@ div { text-align: justify; text-justify: inter-word; } 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -270,7 +276,7 @@ MathJax.Hub.Config({
      Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University and Department of Physics, University of Oslo, Norway

      -

      Nov 23, 2018

      +

      Nov 28, 2018












      @@ -323,7 +329,7 @@ Furthermore, they have been used to solve complicated quantum mechanical many-pa

      An intermediate step, the Hopfield network and links to the Ising and Potts models

      -More material on Hopfield networks will come here +More material on Hopfield networks will come here later.











      @@ -1581,7 +1587,72 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some











      -

      The structure of the RBM network

      +

      Boltzmann machines (BM)

      + +

      +

      + +

      +A BM is what we would call an undirected probabilistic graphical model +with stochastic continuous or discrete units. +

      + +
      + +

      +It is interpreted as a stochastic recurrent neural network where the +state of each unit(neurons/nodes) depends on the units it is connected +to. The weights in the network represent thus the strength of the +interaction between various units/nodes. +

      + +
      + +

      +It turns into a Hopfield network if we choose deterministic rather +than stochastic units. In contrast to a Hopfield network, a BM is a +so-called generative model. It allows us to generate new samples from +the learned distribution. +

      + + +

      +









      + +

      A standard BM setup

      + +

      +

      + +

      +A standard BM network is divided into a set of observable and visible units \( \hat{x} \) and a set of unknown hidden units/nodes \( \hat{h} \). +

      + + +

      +

      + +

      +Additionally there can be bias nodes for the hidden and visible layers. These biases are normally set to \( 1 \). +

      + + +

      +

      + +

      +BMs are stackable, meaning they cwe can train a BM which serves as input to another BM. We can construct deep networks for learning complex PDFs. The layers can be trained one after another, a feature which makes them popular in deep learning +

      + + +

      +However, they are often hard to train. This leads to the introduction of so-called restricted BMs, or RBMS. +Here we take away all lateral connections between nodes in the visible layer as well as connections between nodes in the hidden layer. The network is illustrated in the figure below. + +

      +









      + +

      The structure of the RBM network





      @@ -1589,7 +1660,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some











      -

      The network

      +

      The network

      The network layers: @@ -1601,7 +1672,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some









      -

      Goals

      +

      Goals

      The goal of the hidden layer is to increase the model's expressive power. We encode complex interactions between visible variables by introducing additional, hidden variables that interact with visible degrees of freedom in a simple manner, yet still reproduce the complex correlations between visible degrees in the data once marginalized over (integrated out). @@ -1625,7 +1696,7 @@ Examples of this trick being employed in physics:









      -

      Joint distribution and the Energy function

      +

      Joint distribution

      The restricted Boltzmann machine is described by a Bolztmann distribution $$ \begin{align} @@ -1647,7 +1718,7 @@ It is common to ignore \( T_0 \) by setting it to one.











      -

      Network Elements

      +

      Network Elements, the energy function

      The function \( E(\mathbf{x},\mathbf{h}) \) gives the energy of a @@ -1657,10 +1728,25 @@ function also depends on the parameters \( \mathbf{a} \), \( \mathbf{b} \) and \( W \). Thus, when we adjust them during the learning procedure, we are adjusting the energy function to best fit our problem. +

      +An expression for the energy function is +$$ +E(\hat{x},\hat{h}) = -\sum_{ia}^{NA}b_i^a \alpha_i^a(x_i)-\sum_{jd}^{MD}c_j^d \beta_j^d(h_j)-\sum_{ijad}^{NAMD}b_i^a \alpha_i^a(x_i)c_j^d \beta_j^d(h_j)w_{ij}^{ad}. +$$ + +

      +Here \( \beta_j^d(h_j) \) and \( \alpha_i^a(x_j) \) are so-called transfer functions that map a given input value to a desired feature value. The labels \( a \) and \( d \) denote that there can be multiple transfer functions per variable. The first sum depends only on the visible units. The second on the hidden ones. Note that there is no connection between nodes in a layer. + +

      +The quantities \( b \) and \( c \) can be interpreted as the visible and hidden biases, respectively. + +

      +The connection between the nodes in the two layers is given by the weights \( w_{ij} \). +











      -

      Defining different types of RBMs

      +

      Defining different types of RBMs

      There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function \( E(\mathbf{x},\mathbf{h}) \).

      @@ -1698,7 +1784,7 @@ $$











      -

      More about RBMs

      +

      More about RBMs

      1. Useful when we model continuous data (i.e., we wish \( \mathbf{x} \) to be continuous)
      2. @@ -1716,7 +1802,7 @@ Other types of units include:









        -

        Sampling: Metropolis sampling

        +

        Sampling: Metropolis sampling

        In order to sample from the RBM probability distribution it is common to use Markov Chain Monte Carlo (MCMC) algorithms such as Metropolis-Hastings or Gibbs sampling.

        @@ -1741,7 +1827,7 @@ $$











        -

        Sampling: Gibbs sampling

        +

        Sampling: Gibbs sampling

        In this method we sample from the joint probability \( P_{rbm} (\mathbf{x}, \mathbf{h}) \) by way of a two step sampling process. We alternately update the visible and hidden units. @@ -1763,7 +1849,7 @@ where we recognize the logistic sigmoid function \( \sigma (x) = 1/(1+exp(-x)) \











        -

        Gaussian RBM

        +

        Gaussian RBM

        For the Gaussian-Binary RBM the conditional probabilities are $$ \begin{align} @@ -1779,7 +1865,7 @@ while the visible units now follow a normal distribution, we see the hidden unit











        -

        Cost function

        +

        Cost function

        When working with a training dataset, the most common training approach is maximizing the log-likelihood of the training data. The log likelihood characterizes the log-probability of generating the observed data using our generative model. Using this method our cost function is chosen as the negative log-likelihood. The learning then consists of trying to find parameters that maximize the probability of the dataset, and is known as Maximum Likelihood Estimation (MLE). @@ -1799,7 +1885,9 @@ Our cost function is the negative log-likelihood, \( \mathcal{C}(\{ \theta_i \})











        -

        Optimization / Training

        +

        Optimization / Training

        + +

        The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation $$ \begin{align} @@ -1842,7 +1930,7 @@ $$

        -

        More on RBMs

        +

        More on RBMs

        The data-dependent term in the gradient is known as the positive phase of the gradient, while the model-dependent term is known as the negative phase of the gradient. The aim of the training is to lower the energy of configurations that are near observed data points (increasing their probability), and raising the energy of configurations that are far from observed data points (decreasing their probability). @@ -1866,7 +1954,7 @@ To get the expecation values with respect to the data, we set the visib











        -

        Which sampling to use

        +

        Which sampling to use

        To get the expectation values with respect to the model, we use Gibbs sampling. We can either initialize the \( \boldsymbol{x} \) randomly or with a training sample. While we ideally want a large number of Gibbs iterations \( n\rightarrow n \), one might decide to truncate it earlier for efficiency. Doing this while having intialized \( \boldsymbol{x} \) with a training data vector is referred to as contrastive divergence (CD), because one is then closer to approximating the gradient of this function than the negative log-likelihood. The contrastive divergence function is the difference between two Kullback-Leibler divergences (also called relative entropy), which measure how one probability distribution diverges from a second, expected probability distribution (in this case the estimated one from the ground truth one). @@ -1874,7 +1962,7 @@ To get the expectation values with respect to the model, we use Gibbs s











        -

        Recent examples: RBMs for the quantum many body problem

        +

        Recent examples: RBMs for the quantum many body problem

        The idea of applying RBMs to quantum many body problems was presented by G. Carleo and M. Troyer, working with ETH Zurich and Microsoft Research. @@ -1898,11 +1986,103 @@ Some of their motivation included









        -

        Choose the right RBM

        +

        Choose the right RBM

        Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice. +

        +









        + +

        Representing the wave function

        +The wavefunction should be a probability amplitude depending on \( \boldsymbol{x} \). The RBM model is given by the joint\ + distribution of \( \boldsymbol{x} \) and \( \boldsymbol{h} \) +$$ +\begin{align} + F_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}. +\label{_auto25} +\end{align} +$$ + +To find the marginal distribution of \( \boldsymbol{x} \) we set: +$$ +\begin{align} + F_{rbm}(\mathbf{x}) &= \sum_\mathbf{h} F_{rbm}(\mathbf{x}, \mathbf{h}) +\label{_auto26}\\ + &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. +\label{_auto27} +\end{align} +$$ + +

        +Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS) +$$ +\begin{align} + \Psi (\mathbf{X}) &= F_{rbm}(\mathbf{x}) +\label{_auto28}\\ + &= \frac{1}{Z}\sum_{\boldsymbol{h}} e^{-E(\mathbf{x}, \mathbf{h})} +\label{_auto29}\\ + &= \frac{1}{Z} \sum_{\{h_j\}} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2} + \sum_j^N b_j h_j + \sum_\ +{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma^2}} +\label{_auto30}\\ + &= \frac{1}{Z} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2}} \prod_j^N (1 + e^{b_j + \sum_i^M \frac{x\ +_i w_{ij}}{\sigma^2}}). +\label{_auto31}\\ +\label{_auto32} +\end{align} +$$ + +

        +









        + +

        Choose the cost function

        +Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is +$$ +\begin{align} + G_i = \frac{\partial \langle E_L \rangle}{\partial \theta_i} + = 2(\langle E_L \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle - \langle E_L \rangle \langle \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle ), +\label{_auto33} +\end{align} +$$ + +where the local energy is given by +$$ +\begin{align} + E_L = \frac{1}{\Psi} \hat{\mathbf{H}} \Psi. +\label{_auto34} +\end{align} +$$ + +

        +









        + +

        Running the codes

        +
        + +

        +You can find the codes for the simple two-electron case at the Github repository https://github.com/mhjensenseminars/MachineLearningTalk/tree/master/doc/Programs/MLcpp/src. Python codes to come, only c++ as of now. + +

        +The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor \( \exp{(r_{ij})} \) and the reduced Boltzmann machines. + +

        +The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used \( 14 \) hidden nodes in the calculations below. + + +

        + + +

        +









        + +

        Energy as function of iterations, \( N=2 \) electrons

        +
        + +

        +



        +
        + +

        diff --git a/doc/pub/BM/html/BM.html b/doc/pub/BM/html/BM.html index 2598a9fd6..00d6ff0cb 100644 --- a/doc/pub/BM/html/BM.html +++ b/doc/pub/BM/html/BM.html @@ -213,28 +213,34 @@ div { text-align: justify; text-justify: inter-word; } 2, None, '___sec46'), - ('The structure of the RBM network', 2, None, '___sec47'), - ('The network', 2, None, '___sec48'), - ('Goals', 2, None, '___sec49'), - ('Joint distribution and the Energy function', - 2, - None, - '___sec50'), - ('Network Elements', 2, None, '___sec51'), - ('Defining different types of RBMs', 2, None, '___sec52'), - ('More about RBMs', 2, None, '___sec53'), - ('Sampling: Metropolis sampling', 2, None, '___sec54'), - ('Sampling: Gibbs sampling', 2, None, '___sec55'), - ('Gaussian RBM', 2, None, '___sec56'), - ('Cost function', 2, None, '___sec57'), - ('Optimization / Training', 2, None, '___sec58'), - ('More on RBMs', 2, None, '___sec59'), - ('Which sampling to use', 2, None, '___sec60'), + ('Boltzmann machines (BM)', 2, None, '___sec47'), + ('A standard BM setup', 2, None, '___sec48'), + ('The structure of the RBM network', 2, None, '___sec49'), + ('The network', 2, None, '___sec50'), + ('Goals', 2, None, '___sec51'), + ('Joint distribution', 2, None, '___sec52'), + ('Network Elements, the energy function', 2, None, '___sec53'), + ('Defining different types of RBMs', 2, None, '___sec54'), + ('More about RBMs', 2, None, '___sec55'), + ('Sampling: Metropolis sampling', 2, None, '___sec56'), + ('Sampling: Gibbs sampling', 2, None, '___sec57'), + ('Gaussian RBM', 2, None, '___sec58'), + ('Cost function', 2, None, '___sec59'), + ('Optimization / Training', 2, None, '___sec60'), + ('More on RBMs', 2, None, '___sec61'), + ('Which sampling to use', 2, None, '___sec62'), ('Recent examples: RBMs for the quantum many body problem', 2, None, - '___sec61'), - ('Choose the right RBM', 2, None, '___sec62')]} + '___sec63'), + ('Choose the right RBM', 2, None, '___sec64'), + ('Representing the wave function', 2, None, '___sec65'), + ('Choose the cost function', 2, None, '___sec66'), + ('Running the codes', 2, None, '___sec67'), + ('Energy as function of iterations, $N=2$ electrons', + 2, + None, + '___sec68')]} end of tocinfo --> @@ -275,7 +281,7 @@ MathJax.Hub.Config({

        Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University and Department of Physics, University of Oslo, Norway

        -

        Nov 23, 2018

        +

        Nov 28, 2018












        @@ -328,7 +334,7 @@ Furthermore, they have been used to solve complicated quantum mechanical many-pa

        An intermediate step, the Hopfield network and links to the Ising and Potts models

        -More material on Hopfield networks will come here +More material on Hopfield networks will come here later.











        @@ -1586,7 +1592,72 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some











        -

        The structure of the RBM network

        +

        Boltzmann machines (BM)

        + +

        +

        + +

        +A BM is what we would call an undirected probabilistic graphical model +with stochastic continuous or discrete units. +

        + +
        + +

        +It is interpreted as a stochastic recurrent neural network where the +state of each unit(neurons/nodes) depends on the units it is connected +to. The weights in the network represent thus the strength of the +interaction between various units/nodes. +

        + +
        + +

        +It turns into a Hopfield network if we choose deterministic rather +than stochastic units. In contrast to a Hopfield network, a BM is a +so-called generative model. It allows us to generate new samples from +the learned distribution. +

        + + +

        +









        + +

        A standard BM setup

        + +

        +

        + +

        +A standard BM network is divided into a set of observable and visible units \( \hat{x} \) and a set of unknown hidden units/nodes \( \hat{h} \). +

        + + +

        +

        + +

        +Additionally there can be bias nodes for the hidden and visible layers. These biases are normally set to \( 1 \). +

        + + +

        +

        + +

        +BMs are stackable, meaning they cwe can train a BM which serves as input to another BM. We can construct deep networks for learning complex PDFs. The layers can be trained one after another, a feature which makes them popular in deep learning +

        + + +

        +However, they are often hard to train. This leads to the introduction of so-called restricted BMs, or RBMS. +Here we take away all lateral connections between nodes in the visible layer as well as connections between nodes in the hidden layer. The network is illustrated in the figure below. + +

        +









        + +

        The structure of the RBM network





        @@ -1594,7 +1665,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some











        -

        The network

        +

        The network

        The network layers: @@ -1606,7 +1677,7 @@ History: The RBM was developed by amongst others Geoffrey Hinton, called by some









        -

        Goals

        +

        Goals

        The goal of the hidden layer is to increase the model's expressive power. We encode complex interactions between visible variables by introducing additional, hidden variables that interact with visible degrees of freedom in a simple manner, yet still reproduce the complex correlations between visible degrees in the data once marginalized over (integrated out). @@ -1630,7 +1701,7 @@ Examples of this trick being employed in physics:









        -

        Joint distribution and the Energy function

        +

        Joint distribution

        The restricted Boltzmann machine is described by a Bolztmann distribution $$ \begin{align} @@ -1652,7 +1723,7 @@ It is common to ignore \( T_0 \) by setting it to one.











        -

        Network Elements

        +

        Network Elements, the energy function

        The function \( E(\mathbf{x},\mathbf{h}) \) gives the energy of a @@ -1662,10 +1733,25 @@ function also depends on the parameters \( \mathbf{a} \), \( \mathbf{b} \) and \( W \). Thus, when we adjust them during the learning procedure, we are adjusting the energy function to best fit our problem. +

        +An expression for the energy function is +$$ +E(\hat{x},\hat{h}) = -\sum_{ia}^{NA}b_i^a \alpha_i^a(x_i)-\sum_{jd}^{MD}c_j^d \beta_j^d(h_j)-\sum_{ijad}^{NAMD}b_i^a \alpha_i^a(x_i)c_j^d \beta_j^d(h_j)w_{ij}^{ad}. +$$ + +

        +Here \( \beta_j^d(h_j) \) and \( \alpha_i^a(x_j) \) are so-called transfer functions that map a given input value to a desired feature value. The labels \( a \) and \( d \) denote that there can be multiple transfer functions per variable. The first sum depends only on the visible units. The second on the hidden ones. Note that there is no connection between nodes in a layer. + +

        +The quantities \( b \) and \( c \) can be interpreted as the visible and hidden biases, respectively. + +

        +The connection between the nodes in the two layers is given by the weights \( w_{ij} \). +











        -

        Defining different types of RBMs

        +

        Defining different types of RBMs

        There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function \( E(\mathbf{x},\mathbf{h}) \).

        @@ -1703,7 +1789,7 @@ $$











        -

        More about RBMs

        +

        More about RBMs

        1. Useful when we model continuous data (i.e., we wish \( \mathbf{x} \) to be continuous)
        2. @@ -1721,7 +1807,7 @@ Other types of units include:









          -

          Sampling: Metropolis sampling

          +

          Sampling: Metropolis sampling

          In order to sample from the RBM probability distribution it is common to use Markov Chain Monte Carlo (MCMC) algorithms such as Metropolis-Hastings or Gibbs sampling.

          @@ -1746,7 +1832,7 @@ $$











          -

          Sampling: Gibbs sampling

          +

          Sampling: Gibbs sampling

          In this method we sample from the joint probability \( P_{rbm} (\mathbf{x}, \mathbf{h}) \) by way of a two step sampling process. We alternately update the visible and hidden units. @@ -1768,7 +1854,7 @@ where we recognize the logistic sigmoid function \( \sigma (x) = 1/(1+exp(-x)) \











          -

          Gaussian RBM

          +

          Gaussian RBM

          For the Gaussian-Binary RBM the conditional probabilities are $$ \begin{align} @@ -1784,7 +1870,7 @@ while the visible units now follow a normal distribution, we see the hidden unit











          -

          Cost function

          +

          Cost function

          When working with a training dataset, the most common training approach is maximizing the log-likelihood of the training data. The log likelihood characterizes the log-probability of generating the observed data using our generative model. Using this method our cost function is chosen as the negative log-likelihood. The learning then consists of trying to find parameters that maximize the probability of the dataset, and is known as Maximum Likelihood Estimation (MLE). @@ -1804,7 +1890,9 @@ Our cost function is the negative log-likelihood, \( \mathcal{C}(\{ \theta_i \})











          -

          Optimization / Training

          +

          Optimization / Training

          + +

          The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation $$ \begin{align} @@ -1847,7 +1935,7 @@ $$

          -

          More on RBMs

          +

          More on RBMs

          The data-dependent term in the gradient is known as the positive phase of the gradient, while the model-dependent term is known as the negative phase of the gradient. The aim of the training is to lower the energy of configurations that are near observed data points (increasing their probability), and raising the energy of configurations that are far from observed data points (decreasing their probability). @@ -1871,7 +1959,7 @@ To get the expecation values with respect to the data, we set the visib











          -

          Which sampling to use

          +

          Which sampling to use

          To get the expectation values with respect to the model, we use Gibbs sampling. We can either initialize the \( \boldsymbol{x} \) randomly or with a training sample. While we ideally want a large number of Gibbs iterations \( n\rightarrow n \), one might decide to truncate it earlier for efficiency. Doing this while having intialized \( \boldsymbol{x} \) with a training data vector is referred to as contrastive divergence (CD), because one is then closer to approximating the gradient of this function than the negative log-likelihood. The contrastive divergence function is the difference between two Kullback-Leibler divergences (also called relative entropy), which measure how one probability distribution diverges from a second, expected probability distribution (in this case the estimated one from the ground truth one). @@ -1879,7 +1967,7 @@ To get the expectation values with respect to the model, we use Gibbs s











          -

          Recent examples: RBMs for the quantum many body problem

          +

          Recent examples: RBMs for the quantum many body problem

          The idea of applying RBMs to quantum many body problems was presented by G. Carleo and M. Troyer, working with ETH Zurich and Microsoft Research. @@ -1903,11 +1991,103 @@ Some of their motivation included









          -

          Choose the right RBM

          +

          Choose the right RBM

          Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice. +

          +









          + +

          Representing the wave function

          +The wavefunction should be a probability amplitude depending on \( \boldsymbol{x} \). The RBM model is given by the joint\ + distribution of \( \boldsymbol{x} \) and \( \boldsymbol{h} \) +$$ +\begin{align} + F_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}. +\label{_auto25} +\end{align} +$$ + +To find the marginal distribution of \( \boldsymbol{x} \) we set: +$$ +\begin{align} + F_{rbm}(\mathbf{x}) &= \sum_\mathbf{h} F_{rbm}(\mathbf{x}, \mathbf{h}) +\label{_auto26}\\ + &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. +\label{_auto27} +\end{align} +$$ + +

          +Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS) +$$ +\begin{align} + \Psi (\mathbf{X}) &= F_{rbm}(\mathbf{x}) +\label{_auto28}\\ + &= \frac{1}{Z}\sum_{\boldsymbol{h}} e^{-E(\mathbf{x}, \mathbf{h})} +\label{_auto29}\\ + &= \frac{1}{Z} \sum_{\{h_j\}} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2} + \sum_j^N b_j h_j + \sum_\ +{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma^2}} +\label{_auto30}\\ + &= \frac{1}{Z} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2}} \prod_j^N (1 + e^{b_j + \sum_i^M \frac{x\ +_i w_{ij}}{\sigma^2}}). +\label{_auto31}\\ +\label{_auto32} +\end{align} +$$ + +

          +









          + +

          Choose the cost function

          +Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is +$$ +\begin{align} + G_i = \frac{\partial \langle E_L \rangle}{\partial \theta_i} + = 2(\langle E_L \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle - \langle E_L \rangle \langle \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle ), +\label{_auto33} +\end{align} +$$ + +where the local energy is given by +$$ +\begin{align} + E_L = \frac{1}{\Psi} \hat{\mathbf{H}} \Psi. +\label{_auto34} +\end{align} +$$ + +

          +









          + +

          Running the codes

          +
          + +

          +You can find the codes for the simple two-electron case at the Github repository https://github.com/mhjensenseminars/MachineLearningTalk/tree/master/doc/Programs/MLcpp/src. Python codes to come, only c++ as of now. + +

          +The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor \( \exp{(r_{ij})} \) and the reduced Boltzmann machines. + +

          +The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used \( 14 \) hidden nodes in the calculations below. + + +

          + + +

          +









          + +

          Energy as function of iterations, \( N=2 \) electrons

          +
          + +

          +



          +
          + +

          diff --git a/doc/pub/BM/ipynb/BM.ipynb b/doc/pub/BM/ipynb/BM.ipynb index b04e34ce3..905db8af6 100644 --- a/doc/pub/BM/ipynb/BM.ipynb +++ b/doc/pub/BM/ipynb/BM.ipynb @@ -10,7 +10,7 @@ " \n", "**Morten Hjorth-Jensen**, Department of Physics and Astronomy and National Superconducting Cyclotron Laboratory, Michigan State University and Department of Physics, University of Oslo, Norway\n", "\n", - "Date: **Nov 23, 2018**\n", + "Date: **Nov 28, 2018**\n", "\n", "Copyright 1999-2018, Morten Hjorth-Jensen. Released under CC Attribution-NonCommercial 4.0 license\n", "\n", @@ -54,7 +54,7 @@ "\n", "## An intermediate step, the Hopfield network and links to the Ising and Potts models\n", "\n", - "More material on Hopfield networks will come here\n", + "More material on Hopfield networks will come here later. \n", "\n", "## A brief review on Markov Chains, Metropolis and Gibbs sampling\n", "\n", @@ -1498,6 +1498,44 @@ "History: The RBM was developed by amongst others Geoffrey Hinton, called by some the \"Godfather of Deep Learning\", working with the University of Toronto and Google.\n", "\n", "\n", + "## Boltzmann machines (BM)\n", + "\n", + "A BM is what we would call an undirected probabilistic graphical model\n", + "with stochastic continuous or discrete units.\n", + "\n", + "\n", + "It is interpreted as a stochastic recurrent neural network where the\n", + "state of each unit(neurons/nodes) depends on the units it is connected\n", + "to. The weights in the network represent thus the strength of the\n", + "interaction between various units/nodes.\n", + "\n", + "\n", + "It turns into a Hopfield network if we choose deterministic rather\n", + "than stochastic units. In contrast to a Hopfield network, a BM is a\n", + "so-called generative model. It allows us to generate new samples from\n", + "the learned distribution.\n", + "\n", + "\n", + "\n", + "## A standard BM setup\n", + "\n", + "A standard BM network is divided into a set of observable and visible units $\\hat{x}$ and a set of unknown hidden units/nodes $\\hat{h}$.\n", + "\n", + "\n", + "\n", + "Additionally there can be bias nodes for the hidden and visible layers. These biases are normally set to $1$.\n", + "\n", + "\n", + "\n", + "BMs are stackable, meaning they cwe can train a BM which serves as input to another BM. We can construct deep networks for learning complex PDFs. The layers can be trained one after another, a feature which makes them popular in deep learning\n", + "\n", + "\n", + "\n", + "However, they are often hard to train. This leads to the introduction of so-called restricted BMs, or RBMS.\n", + "Here we take away all lateral connections between nodes in the visible layer as well as connections between nodes in the hidden layer. The network is illustrated in the figure below.\n", + "\n", + "\n", + "\n", "## The structure of the RBM network\n", "\n", "\n", @@ -1536,7 +1574,7 @@ "\n", " 3. $W$ represents the interaction weights, a matrix of size $M\\times N$.\n", "\n", - "## Joint distribution and the Energy function\n", + "## Joint distribution\n", "The restricted Boltzmann machine is described by a Bolztmann distribution" ] }, @@ -1583,7 +1621,10 @@ "source": [ "It is common to ignore $T_0$ by setting it to one. \n", "\n", - "## Network Elements\n", + "\n", + "\n", + "\n", + "## Network Elements, the energy function\n", "\n", "The function $E(\\mathbf{x},\\mathbf{h})$ gives the **energy** of a\n", "configuration (pair of vectors) $(\\mathbf{x}, \\mathbf{h})$. The lower\n", @@ -1592,6 +1633,28 @@ "$W$. Thus, when we adjust them during the learning procedure, we are\n", "adjusting the energy function to best fit our problem.\n", "\n", + "An expression for the energy function is" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$\n", + "E(\\hat{x},\\hat{h}) = -\\sum_{ia}^{NA}b_i^a \\alpha_i^a(x_i)-\\sum_{jd}^{MD}c_j^d \\beta_j^d(h_j)-\\sum_{ijad}^{NAMD}b_i^a \\alpha_i^a(x_i)c_j^d \\beta_j^d(h_j)w_{ij}^{ad}.\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here $\\beta_j^d(h_j)$ and $\\alpha_i^a(x_j)$ are so-called transfer functions that map a given input value to a desired feature value. The labels $a$ and $d$ denote that there can be multiple transfer functions per variable. The first sum depends only on the visible units. The second on the hidden ones. **Note** that there is no connection between nodes in a layer.\n", + "\n", + "The quantities $b$ and $c$ can be interpreted as the visible and hidden biases, respectively.\n", + "\n", + "The connection between the nodes in the two layers is given by the weights $w_{ij}$. \n", + "\n", "## Defining different types of RBMs\n", "There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function $E(\\mathbf{x},\\mathbf{h})$. \n", "\n", @@ -1854,6 +1917,7 @@ "Our cost function is the negative log-likelihood, $\\mathcal{C}(\\{ \\theta_i \\}) = - \\mathcal{L}(\\{ \\theta_i \\})$\n", "\n", "## Optimization / Training\n", + "\n", "The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation" ] }, @@ -2061,7 +2125,220 @@ "\n", "## Choose the right RBM\n", "\n", - "Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice." + "Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems of the Ising model and Heisenberg model, with encouraging results. Our goal is to test the method on systems of moving particles. For the spin lattice systems it was natural to use a binary-binary RBM, with the nodes taking values of 1 and -1. For moving particles, on the other hand, we want the visible nodes to be continuous, representing position coordinates. Thus, we start by choosing a Gaussian-binary RBM, where the visible nodes are continuous and hidden nodes take on values of 0 or 1. If eventually we would like the hidden nodes to be continuous as well the rectified linear units seem like the most relevant choice.\n", + "\n", + "\n", + "\n", + "## Representing the wave function\n", + "The wavefunction should be a probability amplitude depending on $\\boldsymbol{x}$. The RBM model is given by the joint\\\n", + " distribution of $\\boldsymbol{x}$ and $\\boldsymbol{h}$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "

          \n", + "\n", + "$$\n", + "\\begin{equation}\n", + " F_{rbm}(\\mathbf{x},\\mathbf{h}) = \\frac{1}{Z} e^{-\\frac{1}{T_0}E(\\mathbf{x},\\mathbf{h})}.\n", + "\\label{_auto25} \\tag{27}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "To find the marginal distribution of $\\boldsymbol{x}$ we set:" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation}\n", + " F_{rbm}(\\mathbf{x}) = \\sum_\\mathbf{h} F_{rbm}(\\mathbf{x}, \\mathbf{h}) \n", + "\\label{_auto26} \\tag{28}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation} \n", + " = \\frac{1}{Z}\\sum_\\mathbf{h} e^{-E(\\mathbf{x}, \\mathbf{h})}.\n", + "\\label{_auto27} \\tag{29}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation}\n", + " \\Psi (\\mathbf{X}) = F_{rbm}(\\mathbf{x}) \n", + "\\label{_auto28} \\tag{30}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation} \n", + " = \\frac{1}{Z}\\sum_{\\boldsymbol{h}} e^{-E(\\mathbf{x}, \\mathbf{h})} \n", + "\\label{_auto29} \\tag{31}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation} \n", + " = \\frac{1}{Z} \\sum_{\\{h_j\\}} e^{-\\sum_i^M \\frac{(x_i - a_i)^2}{2\\sigma^2} + \\sum_j^N b_j h_j + \\sum_\\\n", + "{i,j}^{M,N} \\frac{x_i w_{ij} h_j}{\\sigma^2}} \n", + "\\label{_auto30} \\tag{32}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation} \n", + " = \\frac{1}{Z} e^{-\\sum_i^M \\frac{(x_i - a_i)^2}{2\\sigma^2}} \\prod_j^N (1 + e^{b_j + \\sum_i^M \\frac{x\\\n", + "_i w_{ij}}{\\sigma^2}}). \n", + "\\label{_auto31} \\tag{33}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation} \n", + "\\label{_auto32} \\tag{34}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Choose the cost function\n", + "Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation}\n", + "\tG_i = \\frac{\\partial \\langle E_L \\rangle}{\\partial \\theta_i}\n", + "\t= 2(\\langle E_L \\frac{1}{\\Psi}\\frac{\\partial \\Psi}{\\partial \\theta_i} \\rangle - \\langle E_L \\rangle \\langle \\frac{1}{\\Psi}\\frac{\\partial \\Psi}{\\partial \\theta_i} \\rangle ),\n", + "\\label{_auto33} \\tag{35}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "where the local energy is given by" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n", + "
          \n", + "\n", + "$$\n", + "\\begin{equation}\n", + "\tE_L = \\frac{1}{\\Psi} \\hat{\\mathbf{H}} \\Psi.\n", + "\\label{_auto34} \\tag{36}\n", + "\\end{equation}\n", + "$$" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Running the codes\n", + "You can find the codes for the simple two-electron case at the Github repository . Python codes to come, only c++ as of now. \n", + "\n", + "The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor $\\exp{(r_{ij})}$ and the reduced Boltzmann machines. \n", + "\n", + "The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used $14$ hidden nodes in the calculations below.\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "## Energy as function of iterations, $N=2$ electrons\n", + "\n", + "\n", + "\n", + "

          \n", + "\n", + "\n", + "" ] } ], diff --git a/doc/pub/BM/ipynb/ipynb-BM-src.tar.gz b/doc/pub/BM/ipynb/ipynb-BM-src.tar.gz index 245e47f51..5cbca87a0 100644 Binary files a/doc/pub/BM/ipynb/ipynb-BM-src.tar.gz and b/doc/pub/BM/ipynb/ipynb-BM-src.tar.gz differ diff --git a/doc/pub/BM/pdf/BM-minted.pdf b/doc/pub/BM/pdf/BM-minted.pdf index 6187f8a5a..1c3180f86 100644 Binary files a/doc/pub/BM/pdf/BM-minted.pdf and b/doc/pub/BM/pdf/BM-minted.pdf differ diff --git a/doc/src/BoltzmannMachines/BM.do.txt b/doc/src/BoltzmannMachines/BM.do.txt index 0c4750e82..6b8590c7e 100644 --- a/doc/src/BoltzmannMachines/BM.do.txt +++ b/doc/src/BoltzmannMachines/BM.do.txt @@ -43,7 +43,7 @@ Furthermore, they have been used to solve complicated quantum mechanical many-pa !split ===== An intermediate step, the Hopfield network and links to the Ising and Potts models ===== -More material on Hopfield networks will come here +More material on Hopfield networks will come here later. !split ===== A brief review on Markov Chains, Metropolis and Gibbs sampling ===== @@ -983,6 +983,46 @@ Why use a generative model rather than the more well known discriminative deep n History: The RBM was developed by amongst others Geoffrey Hinton, called by some the "Godfather of Deep Learning", working with the University of Toronto and Google. +!split +===== Boltzmann machines (BM) ===== + +!bblock +A BM is what we would call an undirected probabilistic graphical model +with stochastic continuous or discrete units. +!eblock +!bblock +It is interpreted as a stochastic recurrent neural network where the +state of each unit(neurons/nodes) depends on the units it is connected +to. The weights in the network represent thus the strength of the +interaction between various units/nodes. +!eblock +!bblock +It turns into a Hopfield network if we choose deterministic rather +than stochastic units. In contrast to a Hopfield network, a BM is a +so-called generative model. It allows us to generate new samples from +the learned distribution. +!eblock + +!split +===== A standard BM setup ===== + +!bblock +A standard BM network is divided into a set of observable and visible units $\hat{x}$ and a set of unknown hidden units/nodes $\hat{h}$. +!eblock + +!bblock +Additionally there can be bias nodes for the hidden and visible layers. These biases are normally set to $1$. +!eblock + +!bblock +BMs are stackable, meaning they cwe can train a BM which serves as input to another BM. We can construct deep networks for learning complex PDFs. The layers can be trained one after another, a feature which makes them popular in deep learning +!eblock + +However, they are often hard to train. This leads to the introduction of so-called restricted BMs, or RBMS. +Here we take away all lateral connections between nodes in the visible layer as well as connections between nodes in the hidden layer. The network is illustrated in the figure below. + + + !split ===== The structure of the RBM network ===== @@ -1011,8 +1051,11 @@ _The network parameters, to be optimized/learned_: o $\mathbf{b}$ represents the hidden bias, a vector of same lenght as $\mathbf{h}$. o $W$ represents the interaction weights, a matrix of size $M\times N$. + + + !split -===== Joint distribution and the Energy function ===== +===== Joint distribution ===== The restricted Boltzmann machine is described by a Bolztmann distribution !bt \begin{align} @@ -1027,8 +1070,11 @@ where $Z$ is the normalization constant or partition function, defined as !et It is common to ignore $T_0$ by setting it to one. + + + !split -===== Network Elements ===== +===== Network Elements, the energy function ===== The function $E(\mathbf{x},\mathbf{h})$ gives the _energy_ of a configuration (pair of vectors) $(\mathbf{x}, \mathbf{h})$. The lower @@ -1037,6 +1083,19 @@ function also depends on the parameters $\mathbf{a}$, $\mathbf{b}$ and $W$. Thus, when we adjust them during the learning procedure, we are adjusting the energy function to best fit our problem. +An expression for the energy function is +!bt +\[ +E(\hat{x},\hat{h}) = -\sum_{ia}^{NA}b_i^a \alpha_i^a(x_i)-\sum_{jd}^{MD}c_j^d \beta_j^d(h_j)-\sum_{ijad}^{NAMD}b_i^a \alpha_i^a(x_i)c_j^d \beta_j^d(h_j)w_{ij}^{ad}. +\] +!et + +Here $\beta_j^d(h_j)$ and $\alpha_i^a(x_j)$ are so-called transfer functions that map a given input value to a desired feature value. The labels $a$ and $d$ denote that there can be multiple transfer functions per variable. The first sum depends only on the visible units. The second on the hidden ones. _Note_ that there is no connection between nodes in a layer. + +The quantities $b$ and $c$ can be interpreted as the visible and hidden biases, respectively. + +The connection between the nodes in the two layers is given by the weights $w_{ij}$. + !split ===== Defining different types of RBMs ===== There are different variants of RBMs, and the differences lie in the types of visible and hidden units we choose as well as in the implementation of the energy function $E(\mathbf{x},\mathbf{h})$. @@ -1135,6 +1194,7 @@ Our cost function is the negative log-likelihood, $\mathcal{C}(\{ \theta_i \}) = !split ===== Optimization / Training ===== + The training procedure of choice often is Stochastic Gradient Descent (SGD). It consists of a series of iterations where we update the parameters according to the equation !bt \begin{align} @@ -1207,3 +1267,71 @@ Carleo and Troyer applied the RBM to the quantum mechanical spin lattice systems +!split +===== Representing the wave function ===== +The wavefunction should be a probability amplitude depending on $\bm{x}$. The RBM model is given by the joint\ + distribution of $\bm{x}$ and $\bm{h}$ +!bt +\begin{align} + F_{rbm}(\mathbf{x},\mathbf{h}) = \frac{1}{Z} e^{-\frac{1}{T_0}E(\mathbf{x},\mathbf{h})}. +\end{align} +!et +To find the marginal distribution of $\bm{x}$ we set: +!bt +\begin{align} + F_{rbm}(\mathbf{x}) &= \sum_\mathbf{h} F_{rbm}(\mathbf{x}, \mathbf{h}) \\ + &= \frac{1}{Z}\sum_\mathbf{h} e^{-E(\mathbf{x}, \mathbf{h})}. +\end{align} +!et + +Now this is what we use to represent the wave function, calling it a neural-network quantum state (NQS) +!bt +\begin{align} + \Psi (\mathbf{X}) &= F_{rbm}(\mathbf{x}) \\ + &= \frac{1}{Z}\sum_{\bm{h}} e^{-E(\mathbf{x}, \mathbf{h})} \\ + &= \frac{1}{Z} \sum_{\{h_j\}} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2} + \sum_j^N b_j h_j + \sum_\ +{i,j}^{M,N} \frac{x_i w_{ij} h_j}{\sigma^2}} \\ + &= \frac{1}{Z} e^{-\sum_i^M \frac{(x_i - a_i)^2}{2\sigma^2}} \prod_j^N (1 + e^{b_j + \sum_i^M \frac{x\ +_i w_{ij}}{\sigma^2}}). \\ +\end{align} +!et + + +!split +===== Choose the cost function ===== +Now we don't necessarily have training data (unless we generate it by using some other method). However, what we do have is the variational principle which allows us to obtain the ground state wave function by minimizing the expectation value of the energy of a trial wavefunction (corresponding to the untrained NQS). Similarly to the traditional variational Monte Carlo method then, it is the local energy we wish to minimize. The gradient to use for the stochastic gradient descent procedure is +!bt +\begin{align} + G_i = \frac{\partial \langle E_L \rangle}{\partial \theta_i} + = 2(\langle E_L \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle - \langle E_L \rangle \langle \frac{1}{\Psi}\frac{\partial \Psi}{\partial \theta_i} \rangle ), +\end{align} +!et +where the local energy is given by +!bt +\begin{align} + E_L = \frac{1}{\Psi} \hat{\mathbf{H}} \Psi. +\end{align} +!et + + +!split +===== Running the codes ===== +!bblock +You can find the codes for the simple two-electron case at the Github repository URL:"https://github.com/mhjensenseminars/MachineLearningTalk/tree/master/doc/Programs/MLcpp/src". Python codes to come, only c++ as of now. + +The trial wave function is based on the product of a Slater determinant with Gaussian orbitals, a simple Jastrow factor $\exp{(r_{ij})}$ and the reduced Boltzmann machines. + +The Broyden-Fletcher-Goldfarb-Shanno algorithm was used to perform the minimization. We used $14$ hidden nodes in the calculations below. + +!eblock + + + + +!split +===== Energy as function of iterations, $N=2$ electrons ===== +!bblock +FIGURE: [figures/figN2.pdf, width=700 frac=0.9] +!eblock + +