auto encoder using sgd