Denoising autoencoder (DAE)
We're now going to build an autoencoder with a practical application. Firstly, let's paint a picture and imagine that the MNIST digits images were corrupted by noise, thus making it harder for humans to read. We're able to build a Denoising Autoencoder (DAE) to remove the noise from these images. Figure 3.3.1 shows us three sets of MNIST digits. The top rows of each set (for example, MNIST digits 7, 2, 1, 9, 0, 6, 3, 4, 9) are the original images. The middle rows show the inputs to DAE, which are the original images corrupted by noise. The last rows show the outputs of DAE:
![](https://static.packt-cdn.com/products/9781788629416/graphics/B08956_03_09.jpg)
Figure 3.3.1: Original MNIST digits (top rows), corrupted original images (middle rows) and denoised images (last rows)
![](https://static.packt-cdn.com/products/9781788629416/graphics/B08956_03_10.jpg)
Figure 3.3.2: The input to the denoising autoencoder is the corrupted image. The output is the clean or denoised image. The latent vector is assumed to be 16-dim.
As shown in Figure 3.3.2, the denoising autoencoder has practically the same structure as the autoencoder for MNIST...