1. Introduction and contributions
Adam (Kingma and Ba, 2015) and RMSProp (Tieleman and Hinton, 2012) are the default optimizers for deep learning. Their convergence theory, however, is almost always stated for a vanishing step size: under L-smoothness, bounded stochastic gradients and a schedule eta_t = Theta(1/sqrt(T)), bias-corrected Adam drives the time-averaged squared gradient to zero at the optimal O(1/sqrt(T)) rate (Defossez et al., 2022, and many others). Reddi et al. (2018) gave a complementary negative result: with a particular decaying schedule and adversarially chosen gradients, Adam can fail to converge even on a convex problem.
Practitioners do neither. They run Adam with fixed hyperparameters (eta, beta1, beta2, eps) held constant for the whole run, on fixed (non-adversarial) objectives with ordinary stochastic-gradient noise. This paper asks what the theory says in exactly that setting and gives a sharp, elementary answer.
Contributions.
- (Non-convergence, Thm 3.) For f(x) = x^2/2 in one dimension with bounded, unbiased, i.i.d. gradient noise of scale s, constant-step RMSProp (Adam with beta1 = 0) with ANY fixed eta>0, beta2 in (0,1), eps>=0 has a strictly positive stationarity floor: liminf_T (1/T) sum_{t=1}^T E[(grad f(x_t))^2] >= eta^2 s^2 / (32 (G+eps)^2) > 0, where G is the explicit almost-sure gradient bound of Lemma 2. Constant-step RMSProp therefore never reaches a stationary point.
- (Exact SGD floor, Thm 4.) Constant-step SGD on the same problem has the exact floor lim_T (1/T) sum_t E[(grad f(x_t))^2] = eta s^2 / (2 - eta).
- (Separation, Thm 5 and Sec 6.) The two floors scale differently in the noise: SGD's is proportional to the noise VARIANCE s^2, while RMSProp's is proportional to the noise STANDARD DEVIATION s. SGD's floor is therefore smaller by a factor of order 1/s, which diverges as the noise shrinks: in the low-noise regime, on this function class, plain SGD provably reaches a smaller stationarity gap than RMSProp. We give a fully rigorous separation in a stated regime and confirm the broader scaling numerically.
- (Mechanism.) The cause is the defining feature of adaptive methods. Dividing by the running root-mean-square sqrt(vhat_t) ~ s turns additive noise of size s near the optimum into a step of size ~ eta regardless of how small the true gradient is. The preconditioner that helps far from the optimum is exactly what stops the step from vanishing near it.
We make no empirical claim beyond a reproducible toy simulation whose code is included; every analytical statement is a theorem in the stated model. We prove the main results for RMSProp (beta1=0) and show numerically that full Adam (beta1=0.9) and a non-convex objective exhibit the same floor and separation.
2. Setting
Objective. f(x) = x^2/2 on R. It is 1-smooth (L=1), 1-strongly convex, bounded below by f* = 0, with the unique stationary point x = 0 and grad f(x) = x. A non-convergence result on this, the most benign nontrivial objective, is a fortiori a non-convergence result on the smooth non-convex class that contains it.
Stochastic oracle. At each step the oracle returns g_t = x_t + xi_t, where the xi_t are i.i.d., independent of the history (x_1,...,x_t), with xi_t = +s or -s each with probability 1/2 (s>0). Then E[g_t | x_t] = x_t = grad f(x_t) (unbiased), Var(g_t | x_t) = s^2, and |xi_t| = s (bounded noise). This is a standard bounded-variance, bounded-noise oracle.
RMSProp (Algorithm 1; the beta1 = 0 case of Adam). Fix eta>0, beta2 in (0,1), eps>=0. Initialise v_0 = 0. For t = 1, 2, ...: g_t = x_t + xi_t v_t = beta2 v_{t-1} + (1 - beta2) g_t^2 vhat_t = v_t / (1 - beta2^t) x_{t+1} = x_t - eta * g_t / (sqrt(vhat_t) + eps).
SGD (Algorithm 2). x_{t+1} = x_t - eta * g_t.
Throughout, "floor" means the liminf (or the limit, when it exists) of the Cesaro average (1/T) sum_{t=1}^T E[(grad f(x_t))^2] = (1/T) sum_t E[x_t^2].
3. Two elementary facts about the RMSProp step
Lemma 1 (The normalized step is bounded). For every t, |x_{t+1} - x_t| <= eta / sqrt(1 - beta2) =: D.
Proof. v_t = (1-beta2) sum_{r=1}^t beta2^{t-r} g_r^2 >= (1-beta2) g_t^2 (keep only the r=t term). Since 1 - beta2^t <= 1, vhat_t = v_t/(1-beta2^t) >= v_t >= (1-beta2) g_t^2, so sqrt(vhat_t) >= sqrt(1-beta2) |g_t|. Hence, when g_t != 0, |x_{t+1}-x_t| = eta |g_t| / (sqrt(vhat_t)+eps) <= eta |g_t| / (sqrt(1-beta2) |g_t|) = eta/sqrt(1-beta2); and the displacement is 0 when g_t = 0. QED.
This is the adaptive method's signature: the step magnitude is capped independently of the gradient magnitude.
Lemma 2 (Iterates and gradients are a.s. bounded). For all t, |x_t| <= M := max(|x_1|, s + D), and |g_t| <= G := M + s.
Proof. Induction on t. Base: |x_1| <= M. Step: assume |x_t| <= M.
- If |x_t| <= s: |x_{t+1}| <= |x_t| + D <= s + D <= M (Lemma 1).
- If |x_t| > s: then |xi_t| = s < |x_t|, so g_t = x_t + xi_t has the same sign as x_t, and the update subtracts delta := eta g_t/(sqrt(vhat_t)+eps), a quantity of the same sign as x_t with |delta| <= D (Lemma 1). If |delta| <= |x_t|, then |x_{t+1}| = |x_t| - |delta| <= |x_t| <= M. If |delta| > |x_t|, then |x_{t+1}| = |delta| - |x_t| <= |delta| <= D <= M.
Either way |x_{t+1}| <= M. Finally |g_t| <= |x_t| + |xi_t| <= M + s = G. QED.
Denominator upper bound (corollary). vhat_t = v_t/(1-beta2^t) and v_t = (1-beta2) sum_r beta2^{t-r} g_r^2 <= (max_{r<=t} g_r^2)(1-beta2^t), so vhat_t <= max_{r<=t} g_r^2 <= G^2, giving sqrt(vhat_t) + eps <= G + eps.
4. Constant-step RMSProp does not reach stationarity
Lemma 3 (Kick near the optimum). If |x_t| <= s/2 then |x_{t+1} - x_t| >= eta s / (2 (G + eps)) =: kappa.
Proof. |g_t| = |x_t + xi_t| >= |xi_t| - |x_t| = s - |x_t| >= s/2. By the denominator bound, sqrt(vhat_t)+eps <= G+eps. Hence |x_{t+1}-x_t| = eta |g_t|/(sqrt(vhat_t)+eps) >= eta (s/2)/(G+eps) = kappa. QED.
Theorem 3 (Positive stationarity floor). With r := kappa/2 = eta s / (4(G+eps)), liminf_T (1/T) sum_{t=1}^T E[x_t^2] >= r^2 / 2 = eta^2 s^2 / (32 (G+eps)^2) > 0. In particular constant-step RMSProp does not converge to the stationary point x = 0 for any fixed eta>0, beta2 in (0,1), eps>=0.
Proof. First, r <= s/2. Indeed G >= D = eta/sqrt(1-beta2) >= eta (since sqrt(1-beta2) <= 1), so 2(G+eps) >= 2G >= 2 eta > eta, i.e. eta <= 2(G+eps), which is exactly r = eta s/(4(G+eps)) <= s/2.
Now fix any t and split into two cases. (a) If |x_t| >= r, then x_t^2 >= r^2. (b) If |x_t| < r, then (since r <= s/2) |x_t| <= s/2, so Lemma 3 gives |x_{t+1}-x_t| >= kappa = 2r; hence |x_{t+1}| >= |x_{t+1}-x_t| - |x_t| >= 2r - r = r, so x_{t+1}^2 >= r^2.
Thus, on every sample path and for every t, max(x_t^2, x_{t+1}^2) >= r^2, so x_t^2 + x_{t+1}^2 >= r^2. Summing t = 1..T: sum_{t=1}^T (x_t^2 + x_{t+1}^2) >= T r^2. The left side is at most 2 sum_{t=1}^{T+1} x_t^2, so sum_{t=1}^{T+1} x_t^2 >= T r^2 / 2. Taking expectations and dividing by T+1, (1/(T+1)) sum_{t=1}^{T+1} E[x_t^2] >= (T/(T+1)) (r^2/2) -> r^2/2. Since E[(grad f(x_t))^2] = E[x_t^2], the claim follows. QED.
Remark (no contradiction with decaying-step theorems). The positive results that send the floor to zero require eta_t -> 0 (typically Theta(1/sqrt(T))). The floor in Theorem 3 is proportional to eta^2 (via r^2) and so vanishes precisely as eta -> 0; with eta held fixed it cannot. The two statements are consistent and jointly delimit the role of the step schedule.
5. The exact floor for constant-step SGD
Theorem 4. For constant-step SGD with eta in (0,1) on the same problem, lim_T (1/T) sum_{t=1}^T E[x_t^2] = eta s^2 / (2 - eta).
Proof. x_{t+1} = x_t - eta(x_t + xi_t) = (1-eta) x_t - eta xi_t. With xi_t independent of x_t, E[xi_t]=0, E[xi_t^2]=s^2, the cross term vanishes and E[x_{t+1}^2] = (1-eta)^2 E[x_t^2] + eta^2 s^2. This linear recursion has the fixed point V* = eta^2 s^2 / (1 - (1-eta)^2) = eta^2 s^2 / (eta (2-eta)) = eta s^2/(2-eta), and E[x_t^2] -> V* geometrically (contraction factor (1-eta)^2 < 1). The Cesaro average converges to the same limit. QED.
6. The separation: noise variance versus noise standard deviation
Theorem 5 (Provable separation in a stated regime). Suppose the run starts near the optimum, |x_1| <= s + D, that eps <= s, and that eta <= 2 s sqrt(1-beta2) (equivalently D <= 2s). Then M <= 3s and G <= 4s, so Theorem 3 gives floor_RMSProp >= eta^2 s^2 / (32 (4s+eps)^2) >= eta^2 s^2/(32 (5s)^2) = eta^2/800. With Theorem 4, floor_SGD = eta s^2/(2-eta) <= eta s^2. Hence whenever s^2 < eta/800, floor_SGD <= eta s^2 < eta^2/800 <= floor_RMSProp, so on this function class constant-step SGD reaches a strictly smaller stationarity floor than constant-step RMSProp. (The regime is non-empty: it holds for any s < sqrt(1-beta2)/400 with eta chosen in (800 s^2, 2 s sqrt(1-beta2)).)
This rigorous statement is deliberately conservative because the lower bound of Theorem 3 is loose. The true scaling is sharper.
Sharper scaling (AR(1) linearization; validated in Sec 7). Near the optimum, in the regime eta < s with eps << s, we have |x_t| << s, so g_t = x_t + xi_t and vhat_t (the EMA of g^2) are dominated by the noise term s^2, giving sqrt(vhat_t) ~ s. The update linearizes to x_{t+1} ~ (1 - eta/s) x_t - (eta/s) xi_t, an AR(1) with coefficient 1 - eta/s and innovation scale (eta/s) s = eta, hence stationary variance ~ eta^2 / (1 - (1 - eta/s)^2) ~ eta^2 / (2 eta/s) = eta s / 2. Therefore floor_RMSProp ~ eta s / 2 versus floor_SGD ~ eta s^2 / 2, and the ratio floor_RMSProp / floor_SGD ~ 1/s diverges as s -> 0. The mechanism is explicit: SGD's floor inherits the noise variance s^2 because its step is eta xi_t; RMSProp divides by sqrt(vhat_t) ~ s, so its near-optimum step is ~ eta sign(g_t), whose accumulated variance scales with s rather than s^2. Adaptivity converts a variance-limited floor into a standard-deviation-limited one. (When eta > s the same linearization gives sqrt(vhat_t) ~ |x_t| ~ eta and floor_RMSProp ~ eta^2; in all cases floor_RMSProp ~ eta * max(eta, s), which exceeds floor_SGD for all small s.)
7. Reproducible numerical validation
We simulated both optimizers on f(x) = x^2/2 with Rademacher noise xi_t = +-s, using eta = 0.01, beta2 = 0.999, eps = 1e-8, T = 6e5 steps, averaging x_t^2 over the last 75% of steps. The runs are deterministic given the seed and reproduce from the code below.
import numpy as np def run(opt, eta, s, beta1=0.0, beta2=0.999, eps=1e-8, T=600000, x1=0.5, seed=1): rng = np.random.default_rng(seed); x=x1; m=0.0; v=0.0; acc=0.0; cnt=0; burn=T//4 for t in range(1, T+1): xi = s*(1 if rng.random()<0.5 else -1) g = x + xi # grad of x^2/2 is x; unbiased noise if opt=='sgd': x = x - eta*g else: m = beta1*m + (1-beta1)g v = beta2v + (1-beta2)gg mhat = m/(1-beta1t) if beta1>0 else g vhat = v/(1-beta2t) x = x - eta*mhat/(np.sqrt(vhat)+eps) if t>burn: acc += x*x; cnt += 1 return acc/cnt
Results (time-averaged E[(grad f)^2]): s = 1e-1: SGD 5.14e-5 (theory eta s^2/(2-eta) = 5.03e-5); RMSProp 5.09e-4; Adam(beta1=0.9) 4.85e-4; Adam/SGD ~ 9 s = 1e-2: SGD 5.14e-7; RMSProp 6.39e-5; Adam 4.27e-5; Adam/SGD ~ 83 s = 1e-3: SGD 5.14e-9; RMSProp 2.59e-5; Adam 2.92e-6; Adam/SGD ~ 568
The SGD floor matches Theorem 4 to two significant figures and falls as s^2; the RMSProp and Adam floors fall far more slowly, and the ratio grows as the noise shrinks, as Section 6 predicts. The same qualitative pattern holds for full Adam (beta1 = 0.9) and for the non-convex objective f(x) = log cosh x, whose curvature vanishes in the tails: at s = 1e-2 we obtained SGD 5.14e-7 versus RMSProp 6.39e-5 and Adam 4.27e-5.
8. Relation to prior work
Decaying-step positive results. Defossez et al. (2022) and related analyses prove O(1/sqrt(T)) stationarity for Adam/Adagrad under L-smoothness and bounded gradients with a decreasing (or T-dependent, vanishing) step. Theorem 3 is consistent: its floor is O(eta^2) and vanishes only as eta -> 0. The contribution here is to isolate constant step size as a sufficient cause of non-convergence, with an explicit constant, on a strongly convex problem where neither non-convexity nor adversarial gradients can be blamed.
Reddi et al. (2018). Their counterexample uses adversarially designed, time-varying gradients and a particular schedule to defeat Adam on a convex problem; the proposed fix (AMSGrad) enforces a non-decreasing denominator. Our setting is the opposite: a fixed objective, i.i.d. noise, default-style constant hyperparameters, and the obstruction is not the denominator decreasing but the step not vanishing.
SGD neighborhood. That constant-step SGD converges to a noise-dependent neighborhood is classical (Bottou, Curtis and Nocedal, 2018); Theorem 4 is the exact one-dimensional instance. The contribution is the comparison: the adaptive method's neighborhood scales with the noise standard deviation, not its variance, which is what produces the separation. This gives a precise, if narrow, analytic mechanism behind the empirical observation that adaptive methods can underperform well-tuned SGD (Wilson et al., 2017).
9. Limitations and scope
(i) The theorems are proved for one dimension, a quadratic objective, RMSProp (beta1 = 0), and bounded Rademacher noise. The quadratic is the cleanest carrier of the mechanism, not a cherry-pick: it is the easiest case, so non-convergence here is the strongest possible negative statement, but the explicit constants are specific to it. (ii) Full Adam (beta1 > 0) is supported only numerically. A proof needs a momentum version of Lemma 1; the required bounds (|mhat_t| <= max_r |g_r| and sqrt(vhat_t) >= sqrt(1-beta2)|g_t|) hold but with messier constants. The simulation indicates the floor and the separation survive momentum. (iii) The rigorous separation (Thm 5) is stated in a small-eta, small-s regime because the bound of Theorem 3 is loose; the AR(1) analysis and the simulation indicate the 1/s separation holds far more broadly. A tight two-sided floor for RMSProp at general (eta, s) is left open. (iv) "Non-convergence" means the time-averaged squared gradient does not go to zero at fixed hyperparameters; the iterate does not diverge - it converges in distribution to a non-degenerate neighborhood of the optimum. (v) The practical reading is modest and known in spirit: to actually reach a stationary point one must decay the step (or schedule eps). What is new is the exact rate and the variance-versus-standard-deviation separation.
10. Conclusion
At fixed hyperparameters - the way Adam is actually used - constant-step RMSProp provably fails to reach a stationary point even on x^2/2, with an explicit floor proportional to eta^2 s^2/(G+eps)^2; constant-step SGD has the exact floor eta s^2/(2-eta); and because the adaptive preconditioner normalizes additive noise by its root-mean-square, the adaptive floor scales with the noise standard deviation while SGD's scales with its variance, producing a separation that grows as 1/s in the low-noise regime. The open direction is a tight floor for full Adam at general hyperparameters and its multivariate, ill-conditioned form, where the same normalization mechanism should make the separation depend on the geometry of the gradient noise.