STORM (Stochastic Recursive Momentum) for Single-Loop Adaptive Variance-Reduced Non-Convex SGD
Algorithms AIMech:StormStochasticRecursiveMomentumForNonconvexOptimization DRAFT
Aliases: STORM, STOchastic Recursive Momentum, Cutkosky-Orabona Momentum-Based Variance Reduction
STOchastic Recursive Momentum (STORM) is a single-loop, checkpoint-free, adaptive variance-reduced stochastic gradient descent algorithm for non-convex optimization min_{x in R^d} F(x) = E_{xi ~ D}[f(x, xi)], introduced by Cutkosky and Orabona (2019). At each iteration t >= 1, STORM updates the iterate via x_t = x_{t-1} - eta_{t-1} * d_{t-1}, draws a single sample (or mini-batch) xi_t ~ D, and updates its gradient estimator via the convex-combination recursive momentum rule d_t = nabla f(x_t, xi_t) + (1 - a_t) * (d_{t-1} - nabla f(x_{t-1}, xi_t)) (Eq. 2), equivalently written as corrected Heavy-Ball momentum d_t = a_t * nabla f(x_t, xi_t) + (1 - a_t) * d_{t-1} + (1 - a_t) * (nabla f(x_t, xi_t) - nabla f(x_{t-1}, xi_t)) (Eq. 1), with adaptive AdaGrad-style step size eta_t = k / (w + sum_{i=1}^t G_i^2)^{1/3} and momentum decay weight a_t = c * eta_{t-1}^2 where G_t = ||nabla f(x_t, xi_t)|| (Algorithm 1).
Identity Notes & Concept Scope
Distinct from SPIDER (Round 345, Fang et al. 2018) and SARAH (Round 344, Nguyen et al. 2017), which use an unweighted recursive estimator v_t = nabla f(x_t, xi_t) - nabla f(x_{t-1}, xi_t) + v_{t-1} (corresponding to a_t = 0) whose accumulated martingale variance grows linearly with t and requires periodic double-loop restarts with O(sigma^2/varepsilon^2) or O(n) checkpoint mega-batches, whereas STORM multiplies the previous error by (1 - a_t) < 1 with a_t = c * eta_{t-1}^2 to damp accumulated error in a single loop without any mega-batch checkpoints.
Claims & Grounded Evidence
3 Claims
Mechanism
#r371-claim-one-step-error-contraction-and-lyapunov-potential
Writing the estimation error as epsilon_t = d_t - nabla F(x_t) for L-smooth individuated objectives f(x, xi), the STORM update d_t = nabla f(x_t, xi_t) + (1 - a_t)*(d_{t-1} - nabla f(x_{t-1}, xi_t)) satisfies the one-step variance contraction E[||epsilon_t||^2 / eta_{t-1}] <= E[(1 - a_t)^2 * ||epsilon_{t-1}||^2 / eta_{t-1} + 2*(1 - a_t)^2 * L^2 * eta_{t-1} * ||d_{t-1}||^2 + 2 * a_t^2 * eta_{t-1}^{-1} * ||nabla f(x_t, xi_t) - nabla F(x_t)||^2] (Lemma 2, Lemma 5); combining this with the descent bound F(x_{t+1}) - F(x_t) <= (-eta_t/2 + L*eta_t^2)*||nabla F(x_t)||^2 + (-eta_t/4 + L*eta_t^2)*||d_t||^2 + eta_t * ||epsilon_t||^2 (Lemma 1) in the Lyapunov potential Phi_t = F(x_t) + (1 / (32 * L^2)) * (||epsilon_t||^2 / eta_{t-1}) with a_{t+1} = c * eta_t^2 eliminates the positive L^2 * eta_t * ||d_t||^2 error growth against the negative (-eta_t/4)*||d_t||^2 descent term without requiring checkpoints.
Mechanism
#r371-claim-adaptive-smoothness-and-noise-interpolating-convergence-rate
With w = max((4*L*k)^3, 2*G^2, (c*k / (4*L))^{3/2}) and c = 100*L^2 + G^2/(7*k^3) where ||nabla f(x, xi)|| <= G, STORM guarantees for x_hat chosen uniformly from x_1, ..., x_T that E[||nabla F(x_hat)||] <= sqrt(E[(1/T)*sum_{t=1}^T ||nabla F(x_t)||^2]) <= O((w^{1/6}*sqrt(M)/T^{1/2} + M^{3/4}/T^{1/2}) + sigma^{1/3} * ln(T)^{2/3} / T^{1/3}) where M = O(F(x_1) - F^* + k^2*c^2*ln(T)) (Theorem 1), automatically interpolating between the deterministic gradient descent rate O(1/sqrt(T)) when noise sigma = 0 and the optimal non-convex stochastic rate O(sigma^{1/3} * ln(T)^{2/3} / T^{1/3}) = O_tilde(1/T^{1/3}) (equivalently O_tilde(sigma/varepsilon^3 + 1/varepsilon^2) oracle queries to reach E[||nabla F(x_hat)||] <= varepsilon) without prior knowledge of sigma (Section 4, Corollary of Theorem 1).
Scope
#r371-claim-non-adaptive-unbounded-gradient-and-convex-convergence
When the noise variance sigma^2 is known, removing the bounded-gradient assumption ||nabla f(x, xi)|| <= G by setting G_t = sigma, w = k^3*(2*L + sigma)^3, and c = 28*L^2 + sigma^2/(7*k^3) yields the non-adaptive bound E[||nabla F(x_hat)||] <= O((k*L + (F(x_1) - F^*)/(k*L))/T^{1/2} + ((F(x_1) - F^*)*sigma/(k*L) + k^2*sigma^2*ln(T + 2))^{1/2} / T^{1/3}) (Theorem 2); furthermore, when F is convex with ||x_1 - x^*|| <= D and a_{t+1} <= 1/2, the same algorithm achieves E[F(x_bar_T) - F(x^*)] = O(1/T^{1/3}) for the iterate average x_bar_T = (1/T)*sum_{t=1}^T x_t (Theorem 3, Appendix C).
⚠️ Curated Limitations & Negative Results
- Requires evaluating two stochastic gradients per iteration at the same sample xi_t (both nabla f(x_t, xi_t) and nabla f(x_{t-1}, xi_t)), which is incompatible with non-repeatable state-dependent perturbations such as standard independent dropout unless the dropout mask is shared across x_t and x_{t-1}; also requires the adaptive version (Theorem 1) to assume L-Lipschitzness of individual stochastic losses and a bound G on stochastic gradient norms (Section 2, p. 3; Section 5, p. 8).
Artificial Intelligence Ontology (AIO) Grounding
Mapped AIO Classes
| AIO Target Class | Mapping Relation | Mapping Rationale |
|---|---|---|
AIO:LogisticRegression
Logistic Regression
|
related_match | Applicable to stochastic first-order optimization of empirical risk and neural network classification models. |
Evidence Sources & Primary Literature
3 Sources| Source ID | Publication / Document | Type / Access | Reference & Checksum |
|---|---|---|---|
r371-primary-pdf
|
Ashok Cutkosky, Francesco Orabona
|
primary paper
full_text
|
ID: https://dblp.org/rec/conf/nips/CutkoskyO19.xml
sha256:4f692a954faf…
|
r371-arxiv-abs
|
Ashok Cutkosky, Francesco Orabona
|
primary paper
abstract_only
|
ID: https://arxiv.org/abs/1905.10018
sha256:da332ba46190…
|
r371-metadata-cr
|
Ashok Cutkosky, Francesco Orabona
|
primary paper
abstract_only
|
ID: https://dblp.org/rec/conf/nips/CutkoskyO19.xml
sha256:c709ba898f07…
|
Ontology & Grounding Topology
Open in interactive network graph →Curation Provenance
Curator: Antigravity
Method: ai_assisted
Model: Gemini
Created: 2026-10-19T07:34:00Z
Updated: 2026-10-19T07:34:00Z
Source File:
data/curated/StormStochasticRecursiveMomentumForNonconvexOptimization.yaml
· Schema:
curated_concept.yaml
Explore across X-Mech
Related computational & biological Mechs:
Embedding Map
Network Graph
ProteinTraitsMech (ESM-2 pLM)
DUFMech (Domain pLM)
TraitMech
CultureMech
All 14 X-Mech Repositories