Dynamic Memory Based Adaptive Optimization
Balázs Szegedy, Domonkos Czifra, Péter Kőrösi-Szabó
TL;DR
This work addresses the limitation of fixed-memory optimizers by introducing Retrospective Learning Law Correction (RLLC), a framework that uses a learnable learning-law vector L ∈ R^k updated as L ← L + c2 M^+ g to produce adaptive parameter updates θ ← θ − c1 M L. By combining linear memory updates with RLLC, the authors derive LM-RLLC optimizers whose memory units can be organized into Jordan-block propagators, including real, complex, and multi-block structures, enabling a flexible interpolation between SGD, momentum SGD, and NAG. The paper provides theoretical results such as basis invariance and a real Jordan normal form for the memory updates, and demonstrates in experiments on MNIST, Fashion-MNIST, and CIFAR-10 that RLLC-based optimizers often outperform standard baselines across several architectures. The findings suggest that adding memory and adapting it via retrospective corrections can yield significant performance gains, with potential implications for broader optimization strategies and future work on adaptive memory rules and larger-scale tasks.
Abstract
Define an optimizer as having memory $k$ if it stores $k$ dynamically changing vectors in the parameter space. Classical SGD has memory $0$, momentum SGD optimizer has $1$ and Adam optimizer has $2$. We address the following questions: How can optimizers make use of more memory units? What information should be stored in them? How to use them for the learning steps? As an approach to the last question, we introduce a general method called "Retrospective Learning Law Correction" or shortly RLLC. This method is designed to calculate a dynamically varying linear combination (called learning law) of memory units, which themselves may evolve arbitrarily. We demonstrate RLLC on optimizers whose memory units have linear update rules and small memory ($\leq 4$ memory units). Our experiments show that in a variety of standard problems, these optimizers outperform the above mentioned three classical optimizers. We conclude that RLLC is a promising framework for boosting the performance of known optimizers by adding more memory units and by making them more adaptive.
