Please check our refactorized code at iVMCL-Release.
This project provides source code for AOGNets: Compositional Grammatical Architectures for Deep Learning (CVPR 2019) and Attentive Normalization.
Create a conda environment, and install all dependencies.
conda create -n aognet-v2 python=3.7
conda activate aognet-v2
git clone https://github.com/iVMCL/AOGNet-v2
cd AOGNet-v2
pip install -r requirements.txt
Install PyTorch 1.0+, follows https://pytorch.org/
Install apex, follows https://github.com/NVIDIA/apex
Download the ImageNet dataset to YOUR_IMAGENET_PATH and move validation images to labeled subfolders
Create a datasets subfolder under your cloned AOGNet-v2 and a symbolic link to the ImageNet dataset
$ cd AOGNet-v2
$ mkdir datasets
$ ln -s PATH_TO_YOUR_IMAGENET ./datasets/
$ cd AOGNet-v2
mkdir pretrained_models
Download pretrained models from the links provided in the tables below, unzip it and place into the pretrained_models directory.
$ ./scripts/test_fp16.sh <pretrained model directory path>
Method | #Params | FLOPS | top-1 error (%) | top-5 error (%) | Link |
---|---|---|---|---|---|
ResNet-50-BN | 25.56M | 4.09G | 23.01 | 6.68 | Google Drive |
ResNet-50-GN* | 25.56M | 4.09G | 23.52 | 6.85 | - |
ResNet-50-SN* | 25.56M | - | 22.43 | 6.35 | - |
ResNet-50-SE* | 28.09M | - | 22.37 | 6.36 | - |
ResNet-50-AN (w/ BN) | 25.76M | 4.09G | 21.59 | 5.88 | Google Drive |
ResNet-101-BN | 44.57M | 8.12G | 21.33 | 5.85 | Google Drive |
ResNet-101-AN (w/ BN) | 45.00M | 8.12G | 20.61 | 5.41 | Google Drive |
MobileNet-v2-BN | 3.50M | 0.34G | 28.69 | 9.33 | [Google Drive]() |
MobileNet-v2-AN (w/ BN) | 3.56M | 0.34G | 26.67 | 8.56 | Google Drive |
AOGNet-12M-BN | 12.26M | 2.19G | 22.22 | 6.06 | Google Drive |
AOGNet-12M-AN (w/ BN) | 12.37M | 2.19G | 21.28 | 5.76 | Google Drive |
AOGNet-40M-BN | 40.15M | 7.51G | 19.84 | 4.94 | Google Drive |
AOGNet-40M-AN (w/ BN) | 40.39M | 7.51G | 19.33 | 4.72 | Google Drive |
* From original paper
Method | #Params | FLOPS | top-1 error (%) | top-5 error (%) | Link |
---|---|---|---|---|---|
ResNet-50-BN | 25.56M | 4.09G | 21.08 | 5.56 | Google Drive |
ResNet-50-AN (w/ BN) | 25.76M | 4.09G | 19.92 | 5.04 | Google Drive |
ResNet-101-BN | 44.57M | 8.12G | 19.71 | 4.89 | Google Drive |
ResNet-101-AN (w/ BN) | 45.00M | 8.12G | 18.85 | 4.63 | Google Drive |
AOGNet-12M-BN | 12.26M | 2.19G | 21.63 | 5.60 | Google Drive |
AOGNet-12M-AN (w/ BN) | 12.37M | 2.19G | 20.57 | 5.38 | Google Drive |
AOGNet-40M-BN | 40.15M | 7.51G | 18.70 | 4.47 | Google Drive |
AOGNet-40M-AN (w/ BN) | 40.39M | 7.51G | 18.13 | 4.26 | Google Drive |
$ cd AOGNet-v2
$ ./scripts/train_fp16.sh <config_fie>
e.g. For training AOGNet-12M with AN
$ ./scripts/train_fp16.sh configs/aognet-12m-an-imagenet.yaml
See more configuration files in configs. Change the GPU settings in scripts/train_fp16.sh
We performed object detection and instance segmentation task on COCO with our models pretrained on ImageNet. We implement it based on the mmdetection framework. The code is released in https://github.com/iVMCL/AttentiveNorm_Detection/tree/master/configs/attn_norm.
Please consider citing the AOGNets or Attentive Normalization papers in your publications if it helps your research.
@inproceedings{li2019aognets,
title={AOGNets: Compositional Grammatical Architectures for Deep Learning},
author={Li, Xilai and Song, Xi and Wu, Tianfu},
booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
pages={6220--6230},
year={2019}
}
@article{li2019attentive,
title={Attentive Normalization},
author={Li, Xilai and Sun, Wei and Wu, Tianfu},
journal={arXiv preprint arXiv:1908.01259},
year={2019}
}
Please feel free to report issues and any related problems to Xilai Li (xli47 at ncsu dot edu), and Tianfu Wu (twu19 at ncsu dot edu).
AOGNets related codes are under RESEARCH ONLY LICENSE.