Once-for-All: Train One Network and Specialize it for Efficient Deployment
Han Cai, Chuang Gan, Tianzhe Wang, Zhekai Zhang, Song Han

TL;DR
This paper introduces a versatile neural network training approach called Once-for-All (OFA) that enables rapid customization for diverse hardware and latency needs, significantly reducing training costs and environmental impact.
Contribution
The paper presents a novel OFA training method and progressive shrinking algorithm that produce a large set of sub-networks, improving efficiency and performance over traditional NAS methods.
Findings
Outperforms state-of-the-art NAS methods on edge devices.
Achieves 80.0% ImageNet top-1 accuracy with low computational cost.
Reduces GPU hours and CO2 emissions compared to traditional training.
Abstract
We address the challenging problem of efficient inference across many devices and resource constraints, especially on edge devices. Conventional approaches either manually design or use neural architecture search (NAS) to find a specialized neural network and train it from scratch for each case, which is computationally prohibitive (causing emission as much as 5 cars' lifetime) thus unscalable. In this work, we propose to train a once-for-all (OFA) network that supports diverse architectural settings by decoupling training and search, to reduce the cost. We can quickly get a specialized sub-network by selecting from the OFA network without additional training. To efficiently train OFA networks, we also propose a novel progressive shrinking algorithm, a generalized pruning method that reduces the model size across many more dimensions than pruning (depth, width, kernel size, and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
Hands-on Tutorial of Once-for-All Network· youtube
[CVPR 2020 Tutorial] AutoML for TinyML with Once-for-All Network· youtube
[ICLR 2020] Once for All: Train One Network and Specialize it for Efficient Deployment· youtube
Taxonomy
TopicsAdvanced Neural Network Applications · Adversarial Robustness in Machine Learning · Domain Adaptation and Few-Shot Learning
MethodsPruning
