 Autoencoders are effectively used for solving many applied problems, from face recognition to acquiring the semantic meaning of words.An "autoencoder" is a neural network that learns to copy its input to its output.It has an internal ("hidden") layer that describes a "code" used to represent the input, and it is constituted by two main parts