Consider a stacked autoencoder setup where I have

Autoencoder1: noisy input > encoder > bottleneck1 > decoder
Autoencoder2: bottleneck1 output > encoder > bottleneck2 > decoder

When training the first autoencoder I'm using as input a noisy version of the original input, but what should I do with the second autoencoder? What I'm doing now is getting the output of bottleneck1 (with noisy input - the same input used for the initial training), applying noise again and using this to train the second autoencoder.

Is this correct or in the second autoencoder I should apply the noise to the output of bottleneck1 using the non-noisy input?

Hope this makes sense, thanks.


The way in which you are creating this structure is not what is understood as a stacked autoencoder.

Autoencoders with multiple hidden layers are called stacked autoencoders or deep autoencoders.*

*See Hands-On Machine Learning with Scikit-Learn and Tensorflow by Aurélien Géron for a good overview of the different types of autoencoders. He actually has an example of a stacked denoising autoencoder in there.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.