https://medium.com/@monocosmo77/how-adagrad-behaves-in-ml-pipelines-part2-machine-learning-9d75b552f079