3.3.1 AdaGrad