Autoencoders and unsupervised learning
Autoencoders are artificial neural networks capable of learning efficient representations of the input data without any supervision (that is, the training set is unlabeled). This coding, typically, has a much lower dimensionality than the input data, making autoencoders useful for dimensionality reduction. More importantly, autoencoders act as powerful feature detectors, and they can be used for unsupervised pre-training of deep neural networks.
Working principles of an autoencoder
An autoencoder is a network with three or more layers, where the input layer and the output layer have the same number of neurons, and the intermediate (hidden) layers have a lower number of neurons. The network is trained to simply reproduce in output, for each input data, the same pattern of activity in the input. The remarkable aspect of the problem is that, due to the lower number of neurons in the hidden layer, if the network can learn from examples, and generalize to...