Coder Social home page Coder Social logo

jiequancui / reslt Goto Github PK

View Code? Open in Web Editor NEW
56.0 4.0 5.0 13.17 MB

ResLT: Residual Learning for Long-tailed Recognition (TPAMI 2022)

Home Page: https://arxiv.org/pdf/2101.10633.pdf

License: MIT License

Python 93.91% Shell 6.09%
long-tailed-recognition imbalanced-data imbalanced-learning imbalance-classification long-tail class-imbalance

reslt's Introduction

ResLT: Residual Learning for Long-tailed Recognition (TPAMI 2022)

This repository contains the implementation code for paper:
Residual Learning for Long-tailed Recognition https://arxiv.org/abs/2101.10633

Updates

We further verifty the proposed ResLT is complementary to ensemble-based methods. Equipped with RIDEResNeXt, our model achieves better results. All experiments are conducted without knowledge distillation for fair comparison. For RIDE, we use their public code and train 180 epochs.

ImageNet-LT

Model Top-1 Acc Download log
RIDEResNeXt(3 experts) 55.1 - log
RIDEResNeXt-ResLT(3 experts) 57.6 model log

Inaturalist 2018

Model Top-1 Acc Download log
RIDEResNeXt(3 experts) 70.8 - log
RIDEResNeXt-ResLT(3 experts) 72.9 model log

Overview

In this paper, we proposed a residual learning method to address long-tailed recognition, which contains a Residual Fusion Module and a Parameter Specialization Mechanism. With extensive ablation studies, we demonstrate the effectiveness of our method.

image

Get Started

ResLT Training

For CIFAR, due to the small data size, different experimental environment can have a big difference. To achieve the reported results, you may need to slightly tune the $\alpha$.

bash sh/CIFAR100/CIFAR100LT_imf0.01_resnet32sx1_beta0.9950.sh

For ImageNet-LT,

bash sh/X50.sh

For iNaturalist 2018,

bash sh/R50.sh

Results and Models

ImageNet-LT

Model Download log
ResNet-10 model log
ResNeXt-50 model log
ResNeXt-101 model log

iNatualist 2018

Model Download log
ResNet-50 model log

Places-LT

Model Download log
ResNet-152 - -

Acknowledgements

This code is partly based on the open-source implementations from offical PyTorch examples and LDAM-DRW.

Contact

If you have any questions, feel free to contact us through email ([email protected]) or Github issues. Enjoy!

BibTex

If you find this code or idea useful, please consider citing our works:

@ARTICLE{9774921,
  author={Cui, Jiequan and Liu, Shu and Tian, Zhuotao and Zhong, Zhisheng and Jia, Jiaya},
  journal={IEEE Transactions on Pattern Analysis and Machine Intelligence}, 
  title={ResLT: Residual Learning for Long-Tailed Recognition}, 
  year={2023},
  volume={45},
  number={3},
  pages={3695-3706},
  doi={10.1109/TPAMI.2022.3174892}}

@ARTICLE{10130611,
  author={Cui, Jiequan and Zhong, Zhisheng and Tian, Zhuotao and Liu, Shu and Yu, Bei and Jia, Jiaya},
  journal={IEEE Transactions on Pattern Analysis and Machine Intelligence}, 
  title={Generalized Parametric Contrastive Learning}, 
  year={2023},
  volume={},
  number={},
  pages={1-12},
  doi={10.1109/TPAMI.2023.3278694}}


@inproceedings{cui2021parametric,
  title={Parametric contrastive learning},
  author={Cui, Jiequan and Zhong, Zhisheng and Liu, Shu and Yu, Bei and Jia, Jiaya},
  booktitle={Proceedings of the IEEE/CVF international conference on computer vision},
  pages={715--724},
  year={2021}
}
  
@article{cui2022region,
  title={Region Rebalance for Long-Tailed Semantic Segmentation},
  author={Cui, Jiequan and Yuan, Yuhui and Zhong, Zhisheng and Tian, Zhuotao and Hu, Han and Lin, Stephen and Jia, Jiaya},
  journal={arXiv preprint arXiv:2204.01969},
  year={2022}
  }
  
@article{zhong2023understanding,
  title={Understanding Imbalanced Semantic Segmentation Through Neural Collapse},
  author={Zhong, Zhisheng and Cui, Jiequan and Yang, Yibo and Wu, Xiaoyang and Qi, Xiaojuan and Zhang, Xiangyu and Jia, Jiaya},
  journal={arXiv preprint arXiv:2301.01100},
  year={2023}
}

reslt's People

Contributors

jiequancui avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

reslt's Issues

Why 1x1 Conv can be replaced with BN layer?

Greetings
Really nice work, but I have a small question.
You mentioned in the code comments that # 1x1 conv can be replaced with more light-weight bn layer, I wonder why they are equivalent? Actually I think conv and bn are totally different.

Gamma

Thanks for your great work.

I'm confused about the gamma hyperparameter. Could you explain the function of gamma for me? Why do you just set it on the ImageNet-lt and iNaturalist datasets, not Cifar?

Variables are not defined in the code

Sorry to bother you that

Code is incomplete, train_sampler is not defined in ImageNetTrain, And Can you explain root_path,dataset,data_path to me

Looking forward to your reply

About the classifiers

Thanks for proposing such interesting method. I am wondering three branches have diffierent classifiers or same?
Furthermore, do you compare with mulit-experts methods as [1]?
[1] LONG-TAILED RECOGNITION BY ROUTING DIVERSE DISTRIBUTION-AWARE EXPERTS, 2021 ICLR.

1x1conv Block

Thanks for your great work.

I'm confused about the site of the 1x1conv Block. Could you explain why the 1x1conv block before the avgpool during training and behind the avgpool during testing?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.