Improving Generalization Performance by Switching from Adam to SGD
Nitish Shirish Keskar, Richard Socher
TL;DR
This work tackles the generalization disparity between adaptive optimizers like Adam and SGD by introducing SWATS, a hybrid method that starts with Adam and automatically switches to SGD based on a gradient-subspace projection criterion. The switch employs a closed-form SGD learning rate derived from projecting the Adam step onto the gradient and stabilizes this estimate via an exponential average. Across diverse benchmarks (CIFAR-10/100, Tiny-ImageNet, PTB, WT2), SWATS often matches or surpasses the best of SGD or Adam without adding hyperparameters, effectively closing the generalization gap in many tasks. The findings highlight the potential of hybrid optimization strategies to balance rapid initial progress with robust generalization in deep learning.
Abstract
Despite superior training outcomes, adaptive optimization methods such as Adam, Adagrad or RMSprop have been found to generalize poorly compared to Stochastic gradient descent (SGD). These methods tend to perform well in the initial portion of training but are outperformed by SGD at later stages of training. We investigate a hybrid strategy that begins training with an adaptive method and switches to SGD when appropriate. Concretely, we propose SWATS, a simple strategy which switches from Adam to SGD when a triggering condition is satisfied. The condition we propose relates to the projection of Adam steps on the gradient subspace. By design, the monitoring process for this condition adds very little overhead and does not increase the number of hyperparameters in the optimizer. We report experiments on several standard benchmarks such as: ResNet, SENet, DenseNet and PyramidNet for the CIFAR-10 and CIFAR-100 data sets, ResNet on the tiny-ImageNet data set and language modeling with recurrent networks on the PTB and WT2 data sets. The results show that our strategy is capable of closing the generalization gap between SGD and Adam on a majority of the tasks.
