"BNN - BN = ?": Training Binary Neural Networks without Batch Normalization
arXiv:2104.08215
Abstract
Batch normalization (BN) is a key facilitator and considered essential for state-of-the-art binary neural networks (BNN). However, the BN layer is costly to calculate and is typically implemented with non-binary parameters, leaving a hurdle for the efficient implementation of BNN training. It also introduces undesirable dependence between samples within each batch. Inspired by the latest advance on Batch Normalization Free (BN-Free) training, we extend their framework to training BNNs, and for the first time demonstrate that BNs can be completed removed from BNN training and inference regimes. By plugging in and customizing techniques including adaptive gradient clipping, scale weight standardization, and specialized bottleneck block, a BN-free BNN is capable of maintaining competitive accuracy compared to its BN-based counterpart. Extensive experiments validate the effectiveness of our proposal across diverse BNN backbones and datasets. For example, after removing BNs from the state-of-the-art ReActNets, it can still be trained with our proposed methodology to achieve 92.08%, 68.34%, and 68.0% accuracy on CIFAR-10, CIFAR-100, and ImageNet respectively, with marginal performance drop (0.23%~0.44% on CIFAR and 1.40% on ImageNet). Codes and pre-trained models are available at: https://github.com/VITA-Group/BNN_NoBN.
References in corpus (39)
- Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
- Distilling the Knowledge in a Neural Network
- MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications
- Rethinking Atrous Convolution for Semantic Image Segmentation
- On the difficulty of training Recurrent Neural Networks
- Accurate, Large Minibatch SGD: Training ImageNet in 1 Hour
- Binarized Neural Networks: Training Deep Neural Networks with Weights and Activations Constrained to +1 or -1
- Estimating or Propagating Gradients Through Stochastic Neurons for Conditional Computation
- BinaryConnect: Training Deep Neural Networks with binary weights during propagations
- DoReFa-Net: Training Low Bitwidth Convolutional Neural Networks with Low Bitwidth Gradients
- Scaling Up Visual and Vision-Language Representation Learning With Noisy Text Supervision
- A Survey of Model Compression and Acceleration for Deep Neural Networks
- Binary Neural Networks: A Survey
- Incremental Network Quantization: Towards Lossless CNNs with Low-Precision Weights
- Regularizing and Optimizing LSTM Language Models
- Train longer, generalize better: closing the generalization gap in large batch training of neural networks
- High-Performance Large-Scale Image Recognition Without Normalization
- Model compression via distillation and quantization
- How Does Batch Normalization Help Optimization?
- Scalable Methods for 8-bit Training of Neural Networks
- Bitwise Neural Networks
- Apprentice: Using Knowledge Distillation Techniques To Improve Low-Precision Network Accuracy
- ReZero is All You Need: Fast Convergence at Large Depth
- Shallow and Deep Convolutional Networks for Saliency Prediction
- Micro-Batch Training with Batch-Channel Normalization and Weight Standardization
- XNOR-Net++: Improved Binary Neural Networks
- Fixup Initialization: Residual Learning Without Normalization
- The Shattered Gradients Problem: If resnets are the answer, then what is the question?
- Training Binary Neural Networks with Real-to-Binary Convolutions
- Latent Weights Do Not Exist: Rethinking Binarized Neural Network Optimization
- Comparison of Batch Normalization and Weight Normalization Algorithms for the Large-scale Image Classification
- A Mean Field Theory of Batch Normalization
- How to Start Training: The Effect of Initialization and Architecture
- Four Things Everyone Should Know to Improve Batch Normalization
- ShiftAddNet: A Hardware-Inspired Deep Network
- Accurate and Compact Convolutional Neural Networks with Trained Binarization
- FracTrain: Fractionally Squeezing Bit Savings Both Temporally and Spatially for Efficient DNN Training
- Characterizing signal propagation to close the performance gap in unnormalized ResNets
- Learning Frequency Domain Approximation for Binary Neural Networks