Stochastic Gradient Descent For Modern Machine Learning: Theory, Algorithms And Applications