Uses and limitations of autoencoders