update sgd function