Share your thoughts, 1 month free Claude Pro on usSee more
WorkDL logo mark

In-Place Activated BatchNorm for Memory-Optimized Training of DNNs

About

In this work we present In-Place Activated Batch Normalization (InPlace-ABN) - a novel approach to drastically reduce the training memory footprint of modern deep neural networks in a computationally efficient way. Our solution substitutes the conventionally used succession of BatchNorm + Activation layers with a single plugin layer, hence avoiding invasive framework surgery while providing straightforward applicability for existing deep learning frameworks. We obtain memory savings of up to 50% by dropping intermediate results and by recovering required information during the backward pass through the inversion of stored forward results, with only minor increase (0.8-2%) in computation time. Also, we demonstrate how frequently used checkpointing approaches can be made computationally as efficient as InPlace-ABN. In our experiments on image classification, we demonstrate on-par results on ImageNet-1k with state-of-the-art approaches. On the memory-demanding task of semantic segmentation, we report results for COCO-Stuff, Cityscapes and Mapillary Vistas, obtaining new state-of-the-art results on the latter without additional training data but in a single-scale and -model scenario. Code can be found at https://github.com/mapillary/inplace_abn .

Samuel Rota Bul\`o, Lorenzo Porzi, Peter Kontschieder• 2017

Related benchmarks

TaskDatasetResultRank
Semantic segmentationCityscapes (test)
mIoU82.03
1252
ClassificationImageNet-1K 1.0 (val)
Top-1 Accuracy (%)81.03
1171
Semantic segmentationCityscapes (val)
mIoU79.4
572
Semantic segmentationMapillary Vistas (val)
mIoU53.12
84
Semantic segmentationCityscapes 19 semantic class labels (val)
mIoU78.31
36
Semantic segmentationCityscapes w/o coarse
mIoU82
29
Semantic segmentationWildDash bench (test)
mIoU Meta Avg (cla)38.9
19
Semantic segmentationKITTI (test)
mIoU86.52
16
Semantic segmentationCityscapes (val)
mIoU78.3
11
Showing 9 of 9 rows

Other info

Code

Follow for update