An in-depth explanation of Gradient Descent and how to avoid the problems of local minima and saddle points.