stochastic vs deterministic optimization methods