Our code is based on MisLAS and RIDE models.
- numpy==1.22.0
- python==3.9
- pytorch==1.10.1
- torchvision==0.11.2
- tqdm==4.62.3
- pillow==8.4.0
For ImageNet-LT and iNaturalist2018, please prepare data in the data directory:
datasets
├── data_txt
├── iNaturalist18_train.txt
├── iNaturalist18_val.txt
├── ImageNet_LT_train.txt
└── ImageNet_LT_test.txt
getting the txt files from data_txt file Link
For CRI+PPL, change the data_path
in config/.../.yaml
;
For CRI+PPW+RIDE, change the data_loader:{data_dir} in
./config/...json`.
one GPU for Imbalance cifar10 & cifar100, two GPUs for ImageNet-LT, and eight GPUs iNaturalist2018.
Backbone network can be resnet32 for Imbalance cifar10 & cifar100, resnet10 for ImageNet-LT, and resnet50 for iNaturalist2018.
python train.py --cfg ./config/cifar10/cifar10_CRI.yaml
python train.py --cfg ./config/cifar100/cifar100_CRI.yaml
python train.py --cfg ./config/imagenet/imagenet_CRI.yaml
python train.py --cfg ./config/ina2018/ina2018_CRI.yaml
python train.py --cfg ./config/cifar10.json
python train.py --cfg ./config/cifar100.json
python train.py --cfg ./config/imagenet.json
python train.py --cfg ./config/ina2018.json
python eval.py --cfg ./config/....yaml resume /path/ckps/...pth.tar
python eval.py --cfg ./config/....json --resume /path/...pth