Autoencoders can be classified as a method of unsupervised learning, and unsupervised learning often comes with a problem where it's hard to tell if the model is working properly.

However, some unsupervised learning methods can still be classified by humans as functional or not by looking at the output of the model, such as K-Means.

Thus, since autoencoders do not have this "feature" that K-Means has, I was wondering if there currently are any methods to clarify if the model is working. I'm guessing that if the autoencoder can regenerate the input data pretty accurately we can assume that our model is working, but is this a valid means of verification?


1 Answer 1


Autoencoders take as input some data, say image, then encode it into some representation and decode it into same form as input. This is illustrated on the figure coming from this great tutorial on Keras blog.

enter image description here

We are usually aiming at finding such representation that (a) leads to compression of original input (smaller dimensionality) and (b) returns outputs that are as close as possible to inputs. Those are also the two properties of "good" encodings.

Autoencoders are trained by minimizing some kind of loss that measures how much does the reconstruction differs from the original image (e.g. mean squared error, logistic loss). The measure of disparency between the true and reconstructed data gives you direct measure of quality of the results.

If you are working with images, you should always look at the predicted representations as a sanity check.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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