updated sparse auto encoder