add autoencoder implementation