When Gradient Descent Converges: Smoothness, Convexity, and Step Size
"Gradient descent works" and "gradient descent is guaranteed to converge" sound like the same sentence. They are not. One is a hope backed by experience.…

Key topics
"Gradient descent works" and "gradient descent is guaranteed to converge" sound like the same sentence. They are not. One is a hope backed by experience. The other is a contract with named clauses, and if you cannot name the clauses, you cannot know when the contract is void.
You already know the update rule: . You have watched loss curves fall and learning rates misbehave. What you have not been told is which assumptions turn that update rule into a theorem. That is what we are going to build here: a bounded convergence result you can state yourself, a step size ceiling you can derive, and a clear boundary where the guarantee stops describing your actual model.
What a Convergence Guarantee Actually Claims
A guarantee has a specific shape. It says: given assumptions A, after steps the gap is at most some function of . No assumptions, no theorem. The assumptions are the price of admission.
Three claims get blurred together in casual conversation, and they are not the same result:
- Loss decreases monotonically. Each step is no worse than the last.
- The gradient norm goes to zero. The iterates approach a stationary point.
- The iterates approach a minimizer. The parameters actually converge to .
These need different assumptions and give different conclusions. Monotone decrease is the weakest and cheapest. Approaching a minimizer is the strongest and most expensive.
The three assumptions that do the work here are L-smoothness, convexity, and a step size bound. The rest of this article earns each one, then shows what they buy together.
Notation and the Two Assumptions That Do the Work
Fix the setting. We minimize . Write for the gradient, for the step size, for the iterate after steps, for a minimizer, and for the optimal value.
L-smoothness says the gradient is -Lipschitz:
In plain causal language: the gradient cannot change faster than per unit of movement. If you take a step, the gradient you land on is still roughly the gradient you left. That is what makes a usable descent direction for a while instead of a direction that goes stale mid-step.
For twice-differentiable functions there is an equivalent view that is easier to check: the Hessian eigenvalues are bounded by in magnitude, so . If you can bound the curvature of your objective, you have bounded .
Convexity says the tangent line is a global lower bound:
No misleading local valleys. Every gradient points toward a direction that genuinely improves the global objective.
Note: Smoothness is a bound on how fast curvature can change, not a promise that the function is nice in any practical sense. A function can be perfectly smooth and still have a huge , which forces a tiny step size and slow progress.
Knowledge check
Check your understanding
Answer this question before you continue.
The Descent Lemma: Why the Step Size Has a Ceiling
Here is where the step size bound comes from. It is not taste. It is algebra.
L-smoothness implies a quadratic upper bound on the function around any point:
This says: near , the function sits below a parabola whose curvature is set by . Substitute the gradient step :
Read the bracket. It is positive only when . When , the bracket is at least , so each step reduces the loss by at least .
Two failure modes fall straight out of the inequality:
- too large. The bracket goes negative, the bound becomes useless, and the step can increase the loss. This is the overshoot you have seen as a diverging loss curve.
- very small. The bracket stays positive and safe, but each step's improvement shrinks with . Safe and slow.
The safe ceiling scales with . A badly scaled problem with a large forces a small step size and slow progress. That is the mechanism behind the feature-scaling advice you have already met: scaling features reduces the effective and raises the safe step size.
Knowledge check
Check your understanding
Answer this question before you continue.
From Descent to a Convergence Rate
The per-step inequality bounds how much each step improves. To get a bound on the gap , we need a different potential: the squared distance from the current iterate to a minimizer.
Start by expanding that distance after one step:
Convexity gives us the bridge we need. The tangent-line inequality, rearranged, says . Substitute that in and drop the nonnegative term:
Rearrange to isolate the gap:
Now sum both sides from to . The right side telescopes — every intermediate distance cancels, leaving only the first and last:
The average gap over steps is at most . Since the average is bounded, the best iterate is too:
Read the terms. A better starting point (smaller ) helps. A larger safe step size helps. The gap shrinks like — sublinear. Halving the gap costs roughly twice the iterations. That is the price of weak convexity.
If you add strong convexity — a curvature floor as well as a ceiling — the same machinery gives a linear rate, . The gap shrinks by a constant factor each step. The rate is a consequence of weak convexity, not a universal speed limit.
Common mistake: Treating this bound as a prediction. It is a worst-case guarantee over all functions satisfying the assumptions. Real problems often converge faster. The bound says nothing about problems that violate the assumptions.
A Worked Example You Can Check by Hand
Take . The second derivative is , so and the safe step size is .
Start at . The gradient is . One step:
The iterate lands exactly on the minimizer. The bound is tight here, not loose.
Now predict before computing. With , the bracket is positive, so the loss decreases every step — but slowly. With , the bracket is negative, so the descent lemma no longer guarantees anything. That is a statement about the inequality, not yet about the loss.
To see what actually happens at , run the update. The gradient is , so:
The distance from the minimizer transforms as . Each step doubles the distance and flips its sign. Starting at , the iterates are — oscillating with growing amplitude. The loss ratio per step is , so the loss grows by a factor of four each iteration. The negative bracket told you the guarantee was gone; the update rule told you the loss diverges.
This is the smallest possible laboratory: one function, three step sizes, three visibly different behaviors. You can reproduce it in a few lines of NumPy, but the point is the prediction, not the plot.
Warning: A quadratic is the friendliest possible case. Its behavior should not be generalized to a neural network loss, where is unknown, varies across the parameter space, and convexity does not hold.
Knowledge check
Check your understanding
Answer this question before you continue.
Where the Guarantee Stops Applying
The theorem is clean. Your model probably is not. Here is where the clauses break.
Non-convex losses break the convexity clause. Gradient descent can still reach a stationary point, but a stationary point is not a minimum. Worst-case guarantees for locating good minima of arbitrary non-convex functions are genuinely limited.
Stochastic gradients break the deterministic step. With minibatch noise, the loss is not guaranteed to decrease every iteration, and convergence statements become statements in expectation. This is why monitoring a validation score is often more useful than watching the training loss.
Unknown or varying breaks the fixed step size. If curvature changes across the parameter space, a single that is safe in one region can be too large in another. This is the motivation for adaptive and decaying step sizes.
Regularized and constrained objectives change the geometry. Adding an L2 penalty keeps convexity for many linear models but shifts the minimizer. Adding a non-convex penalty does not.
Before trusting any convergence claim, name the objective, name the assumptions it satisfies, and check whether the step size respects the bound those assumptions imply.
Knowledge check
Check your understanding
Answer this question before you continue.
What to Take Into Practice
Treat the step size as a quantity with a ceiling, not a free hyperparameter. When training diverges, your first hypothesis should be that exceeded the local curvature, not that the model is wrong.
Scale your features before blaming the optimizer. Scaling reduces the effective and therefore raises the safe step size.
Use the assumptions as a diagnostic checklist. Smooth, convex, bounded step size — three questions to ask whenever a convergence claim sounds too strong.
Pick one objective you already use. Estimate or bound its curvature, then check whether your current step size respects . If it does not, you now know why the loss curve looks the way it does — and you know exactly which knob to turn.
Knowledge check
Final check
Finish the article by checking the ideas you just learned.
References
Build stronger machine learning foundations
Use structured resources to connect theory, scikit-learn workflows, and evaluation practice.


