Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Restricted Boltzmann Machine for real-valued data - gaussian linear units (glu) -

I want my Restricted Boltzmann Machine to learn a new representation of real-valued data (see: Hinton - 2010 - A Practical Guide to Training RBMs). I'm struggling with an implementation of Gaussian linear units.

With Gaussian linear units in the visible layer the energy changes to E(v,h)= ∑ (v-a)²/2σ - ∑ bh - ∑v/σ h w. Now I don't know how to change the Contrastive Divergence Learning Algorithm. The visible units won't be sampled any more as they are linear. I use the expectation (mean-fied activation) p(v_i=1|h)= a +∑hw + N(0,1) as their state. The associations are left unchangend ( pos: data*p(h=1|v)' neg: p(v=1|h)*p(h=1|v)' ). But this only leads to random noise when I want to reconstruct the data. The error rate will stop improving around 50%.

Finally I want to use Gaussian linear units in both layers. How will I get the states of the hidden units then? I suggest by using the mean-field activation p(h_i=1|v)= b +∑vw + N(0,1) but I'm not sure.

like image 824
theo Avatar asked Jul 07 '13 09:07

theo


People also ask

What are restricted Boltzmann machines used for?

Invented by Geoffrey Hinton, a Restricted Boltzmann machine is an algorithm useful for dimensionality reduction, classification, regression, collaborative filtering, feature learning and topic modeling.

Are RBM still used?

Currently, RBMs are not commonly used; instead, deep feed-forward networks with layers like convolutional layers, fully connected layers, and throwing in some kind of regularization layers, like dropout, as well as recent batch-normalization with activation layers in between, typically ReLU, but sigmoid and tanh are ...

How many layers does an RBM restricted Boltzmann machine have?

It is a network of neurons in which all the neurons are connected to each other. In this machine, there are two layers named visible layer or input layer and hidden layer. The visible layer is denoted as v and the hidden layer is denoted as the h. In Boltzmann machine, there is no output layer.

Is Restricted Boltzmann machine can be used for dimensionality reduction?

A new method, restricted Boltzmann machine (RBM), is introduced in spectral processing. RBM is a particular type of Markov random field with two-layer architecture, and use Gibbs sampling method to train the algorithm. It can be used in spectral denoising, dimensionality reduction and spectral repairing.


1 Answers

You could take a look at the gaussian RBM that Hinton himself has provided Please find it here. http://www.cs.toronto.edu/~hinton/code/rbmhidlinear.m

like image 174
kunjans1 Avatar answered Jan 30 '23 12:01

kunjans1