In plain words: Training updates can be split into quick, jittery changes that just memorize the data and slow, steady ones that help with new data. Boosting the slow ones made models suddenly generalize more than 50 times sooner on image, language, and graph tasks.
Abstract
One puzzling artifact in machine learning dubbed grokking is where delayed generalization is achieved tenfolds of iterations after near perfect overfitting to the training data. Focusing on the long delay itself on behalf of machine learning practitioners, our goal is to accelerate generalization of a model under grokking phenomenon. By regarding a series of gradients of a parameter over training iterations as a random signal over time, we can spectrally decompose the parameter trajectories under gradient descent into two components: the fast-varying, overfitting-yielding component and the slow-varying, generalization-inducing component. This analysis allows us to accelerate the grokking phenomenon more than $\times 50$ with only a few lines of code that amplifies the slow-varying components of gradients. The experiments show that our algorithm applies to diverse tasks involving images, languages, and graphs, enabling practical availability of this peculiar artifact of sudden generalization. Our code is available at https://github.com/ironjr/grokfast.
Jaerin Lee, Bong Gyun Kang, Kihoon Kim, Kyoung Mu Lee
arXiv:2405.20233 · cs.LG, cs.AI · submitted May 30, 2024 · updated Jun 5, 2024
abstract · pdf · html · 17 pages, 13 figures. Typo fixed. Project page: https://jaerinlee.com/research/grokfast
I remember seeing grokking demonstrated for MNIST (are there any other non synthetic datasets for which it has been shown?), but the authors of that paper had to make the training data smaller and got a test error far below state of the art.
I'm very interested in this research, just curious about how practically relevant it is (yet).