https://medium.com/@monocosmo77/how-the-extragradient-method-works-part2-machine-learning-optimization-648fc9a913c5