Parallel Training of Deep Networks with Local Updates
This work tackles the problem of improving computational efficiency for training large deep learning models, which is a critical bottleneck for researchers and practitioners working with state-of-the-art architectures.
This paper addresses the challenge of scaling deep network training efficiently beyond the diminishing returns of data and model parallelism for large batch sizes. It proposes local parallelism, which replaces global backpropagation with truncated layer-wise backpropagation, enabling asynchronous layer-wise parallelism with low memory and communication overhead. The method is shown to be effective in high-compute regimes across vision and language domains.
Deep learning models trained on large data sets have been widely successful in both vision and language domains. As state-of-the-art deep learning architectures have continued to grow in parameter count so have the compute budgets and times required to train them, increasing the need for compute-efficient methods that parallelize training. Two common approaches to parallelize the training of deep networks have been data and model parallelism. While useful, data and model parallelism suffer from diminishing returns in terms of compute efficiency for large batch sizes. In this paper, we investigate how to continue scaling compute efficiently beyond the point of diminishing returns for large batches through local parallelism, a framework which parallelizes training of individual layers in deep networks by replacing global backpropagation with truncated layer-wise backpropagation. Local parallelism enables fully asynchronous layer-wise parallelism with a low memory footprint, and requires little communication overhead compared with model parallelism. We show results in both vision and language domains across a diverse set of architectures, and find that local parallelism is particularly effective in the high-compute regime.