separate data preparation from train in network
implement adaptive learning rate