Skip to content

YooshinCho/pytorch_ConvUnitOptimization

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Improving generalization of Batch Whitening by Convolutional Unit Optimization

Yooshin Cho, Hanbyel Cho, Youngsoo Kim, and Junmo Kim | Paper

This is the official repository of "Improving generalization of Batch Whitening by Convolutional Unit Optimization", ICCV 2021.

Abstract

Batch Whitening is a technique that accelerates and stabilizes training by transforming input features to have a zero mean (Centering) and a unit variance (Scaling), and by removing linear correlation between channels (Decorrelation). In commonly used structures, which are empirically optimized with Batch Normalization, the normalization layer appears between convolution and activation function. Following Batch Whitening studies have employed the same structure without further analysis; even Batch Whitening was analyzed on the premise that the input of a linear layer is whitened. To bridge the gap, we propose a new Convolutional Unit that is in line with the theory, and our method generally improves the performance of Batch Whitening. Moreover, we show the inefficacy of the original Convolutional Unit by investigating rank and correlation of features. As our method is employable off-the-shelf whitening modules, we use Iterative Normalization (IterNorm), the state-of-the-art whitening module, and obtain significantly improved performance on five image classification datasets: CIFAR-10, CIFAR-100, CUB-200-2011, Stanford Dogs, and ImageNet. Notably, we verify that our method improves stability and performance of whitening when using large learning rate, group size, and iteration number.

Dependencies

Make sure you have the following dependencies installed before proceeding:

  • Python 3+ distribution
  • PyTorch == 0.4.0

License

This project is distributed under MIT license. If you use our code/models in your research, please cite our paper:

@inproceedings{cho2021improving,
    title={Improving Generalization of Batch Whitening by Convolutional Unit Optimization},
    author={Cho, Yooshin and Cho, Hanbyel and Kim, Youngsoo and Kim, Junmo},
    booktitle={Proceedings of the IEEE/CVF International Conference on Computer Vision},
    pages={5321--5329},
    year={2021}
}

Acknowledgement

Part of our code is borrowed from shiftresnet-cifar and IterNorm-pytorch. Please refer to their project page for further information.

About

This is the official repository of "Improving generalization of Batch Whitening by Convolutional Unit Optimization", ICCV 2021.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published