Neural networks aim to find a non-linear relationship between input X with output y, as y=f(x). An autoencoder is a form of unsupervised neural network which tries to find a relationship between features in space such that h=f(x), which helps us learn the relationship between input space and can be used for data compression, dimensionality reduction, and feature learning.
An autoencoder consists of an encoder and decoder. The encoder helps encode the input x in a latent representation y, whereas a decoder converts back the y to x. Both the encoder and decoder possess a similar representation of form.
Here is a representation of a one layer autoencoder:
The coder encodes input X to h under a hidden layer contain, whereas the decoder helps to attain the original data from encoded output h. The matrices We and Wd represent the weights of the encoder and decoder...