BxD Primer Series: Restricted Boltzmann Machine Neural Networks
Hey there ??
Welcome to BxD Primer Series where we are covering topics such as Machine learning models, Neural Nets, GPT, Ensemble models, Hyper-automation in ‘one-post-one-topic’ format. Today’s post is on?Restricted?Boltzmann Machine Neural Networks. Let’s get started:
The What:
Restricted Boltzmann Machine (RBM) is a type of energy-based unsupervised learning model which addresses some of the limitations of?Boltzmann Machines. It consists of two layers of nodes: visible layer and hidden layer. The visible layer represents input data, while hidden layer learns to represent underlying patterns in data. After network training, the visible layer acts as output layer.
In an RBM, there are no connections between?nodes within same layer. Connections between visible and hidden layers are undirected, which means that information can flow in both directions. Weights between the nodes in visible and hidden layers are learned during training, using a technique called contrastive divergence.
It is a type of generative model used to generate new data that is similar to training data. They are also used for anomaly detection, dimensionality reduction, and collaborative filtering.
Main difference between Boltzmann Machines and RBMs are:
Note: Unlike some other neural network architectures, such as feedforward neural networks, RBMs do not use back-propagation to update weights. Instead, RBMs are typically trained using a technique called contrastive divergence, which involves updating weights in the direction that maximizes difference between probabilities of input data and reconstructed data.
Two layers in a RBM:
The visible layer is composed of a set of input nodes, which represent the features or attributes of input data. Each input node is connected to every node in hidden layer. The connections between input and hidden layers are weighted and the strength of connection determines influence of input on hidden layer.
The hidden layer is composed of a set of hidden nodes, which are not directly connected to each other. There are no connections between nodes within hidden layer. Instead, each hidden node is connected to every input node in visible layer.
During training, RBM learns to adjust the weights of connections between visible and hidden layers in order to maximize the likelihood of training data. By doing so, RBM learns to capture underlying patterns and relationships in input data.
The How:
Training process of a RBM is same as that of BM, which we already covered in a previous edition, please check?here.
Here are the general steps:
Binary RBM v/s Gaussian RBM:
RBMs can be divided into two main types: Binary RBMs and Gaussian RBMs. Main difference between the two is the type of units used in visible layer of the network.
领英推荐
In a Binary RBM, visible units are binary and can only take on values of 0 or 1. They are useful for collaborative filtering (used to recommend items to users based on their preferences) type tasks, where input data is composed of presence/absence records.
In a Gaussian RBM, visible units are continuous and can take on any real value. It allows the network to model continuous data, such as audio signals or sensor data. They are useful in speech recognition and natural language processing type applications.
The hidden units in both types of RBMs are typically binary, although it is possible to use continuous hidden units as well.
Difference between the two is also reflected in the way probabilities are calculated.
The Why:
Reasons for using RBMs:
The Why Not:
Reasons for not using RBMs:
Time for you to support:
In next edition, we will cover Deep Belief Neural Networks.
Let us know your feedback!
Until then,
Have a great time! ??