Autoencoder
Definition
For two natural numbers , the function is called an encoder. The function is called a decoder. If satisfies , it is called an autoencoder.
Explanation
Since the encoder’s output dimension is smaller than the input dimension, it can be considered as performing data compression and encryption. On the other hand, the decoder serves to restore the compressed/encrypted data. If a satisfying can be found, then successfully compresses into a smaller dimension, and successfully restores the compressed data back to its original dimension. When autoencoders were first introduced, they were mainly used from the perspective of data compression, similar to Dimensionality Reduction, but recently, they have been widely utilized in generative models as well. 1
For an autoencoder to be useful from a data compression perspective, needs to be sufficiently smaller than . In such cases, it is impossible to find a that precisely satisfies , and the goal becomes finding a that satisfies as closely as possible. (Of course, even mathematically is not sufficient to find a that satisfies )
U-net is a structure that adds skip connections to an autoencoder for images.
Ian Goodfellow, Deep Learning, p557-558 ↩︎