Training EfficientNets at Supercomputer Scale: 83% ImageNet Top-1 Accuracy in One Hour
This work addresses the need for faster training of state-of-the-art image classification models, though it is incremental as it applies existing methods to new hardware scales.
The paper tackled the problem of slow training times for EfficientNet models, achieving 83% ImageNet top-1 accuracy in just over one hour by scaling training to 1024 TPU-v3 cores with a batch size of 65536.
EfficientNets are a family of state-of-the-art image classification models based on efficiently scaled convolutional neural networks. Currently, EfficientNets can take on the order of days to train; for example, training an EfficientNet-B0 model takes 23 hours on a Cloud TPU v2-8 node. In this paper, we explore techniques to scale up the training of EfficientNets on TPU-v3 Pods with 2048 cores, motivated by speedups that can be achieved when training at such scales. We discuss optimizations required to scale training to a batch size of 65536 on 1024 TPU-v3 cores, such as selecting large batch optimizers and learning rate schedules as well as utilizing distributed evaluation and batch normalization techniques. Additionally, we present timing and performance benchmarks for EfficientNet models trained on the ImageNet dataset in order to analyze the behavior of EfficientNets at scale. With our optimizations, we are able to train EfficientNet on ImageNet to an accuracy of 83% in 1 hour and 4 minutes.