Batch Normalization Preconditioning for Neural Network Training
arXiv:2108.01110
Abstract
Batch normalization (BN) is a popular and ubiquitous method in deep learning that has been shown to decrease training time and improve generalization performance of neural networks. Despite its success, BN is not theoretically well understood. It is not suitable for use with very small mini-batch sizes or online learning. In this paper, we propose a new method called Batch Normalization Preconditioning (BNP). Instead of applying normalization explicitly through a batch normalization layer as is done in BN, BNP applies normalization by conditioning the parameter gradients directly during training. This is designed to improve the Hessian matrix of the loss function and hence convergence during training. One benefit is that BNP is not constrained on the mini-batch size and works in the online learning setting. Furthermore, its connection to BN provides theoretical insights on how BN improves training and how BN is applied to special architectures such as convolutional neural networks. For a theoretical foundation, we also present a novel Hessian condition number based convergence theory for a locally convex but not strong-convex loss, which is applicable to networks with a scale-invariant property.
References in corpus (9)
- Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift
- Batch Renormalization: Towards Reducing Minibatch Dependence in Batch-Normalized Models
- L2 Regularization versus Batch and Weight Normalization
- Understanding and Improving Layer Normalization
- Path-SGD: Path-Normalized Optimization in Deep Neural Networks
- Training BatchNorm and Only BatchNorm: On the Expressive Power of Random Features in CNNs
- Batch Normalization is a Cause of Adversarial Vulnerability
- A Mean Field Theory of Batch Normalization
- Block-diagonal Hessian-free Optimization for Training Neural Networks