Improving autoencoder robustness

A successful strategy we can use to improve the model's robustness is to introduce a noise in the encoding phase. We call a denoising autoencoder a stochastic version of an autoencoder; in a denoising autoencoder, the input is stochastically corrupted, but the uncorrupted version of the same input is used as the target for the decoding phase.

Intuitively, a denoising autoencoder does two things: first, it tries to encode the input, preserving the relevant information; and then, it seeks to nullify the effect of the corruption process applied to the same input. In the next section, we'll show an implementation of a denoising autoencoder.

Implementing a denoising autoencoder

The network architecture is very simple. ...

Get Deep Learning with TensorFlow - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.