Hi,
I have a question about the use of the MaxUnpool with Pytorch.
I Made an Autoencoder (AE) symetric with 5/5 layers:
Encoder: [ConvLayer+MaxPool]*5
Decoder: [ConvLayer+MaxUnpool]*5
At the end of the encoder I achieved a reduction of 3%. Astonishingly my AE is performing perfectly. I almost have an overlap of inputs/ouputs.
It seems like the Maxunpool is a way of cheating in the learning. Keeping the indexes sounds too powerful. I believe that the Network is not learning enough and expect that the MaxUnpools are enough to reconstruct the data backward.
The final goal of my project is to perform transfer learning using the Encoder that should learn and understand the “main features” of my dataset.
Do you think that the MaxUnpool are too powerful and are not a good solution for what I am aiming?