A curated list of awesome deep long-tailed learning resources.

Overview

Awesome Long-Tailed Learning

A curated list of awesome deep long-tailed learning resources. We recently released Deep Long-Tailed Learning: A Survey to the community. In this survey, we reviewed recent advances in long-tailed learning based on deep neural networks.

Specifically, existing long-tailed learning studies can be grouped into three main categories (i.e., class re-balancing, information augmentation and module improvement), which can be further classified into nine sub-categories (as shown in the below figure). We also empirically analyzed several state-of-the-art methods by evaluating to what extent they address the issue of class imbalance. We concluded the survey by highlighting important applications of deep long-tailed learning and identifying several promising directions for future research. After completing this survey, we decided to release the collected long-tailed learning resources, hoping to push the development of the community. If you have any questions or suggestions, please feel free to contact us.

1. Type of Long-tailed Learning

Symbol Sampling CSL LA TL Aug
Type Re-sampling Cost-sensitive Learning Logit Adjustment Transfer Learning Data Augmentation
Symbol RL CD DT Ensemble other
Type Representation Learning Classifier Design Decoupled Training Ensemble Learning Other Types

2. Top-tier Conference Papers

2021

Title Venue Year Type Code
Improving contrastive learning on imbalanced seed data via open-world sampling NeurIPS 2021 Sampling,TL, DC Official
Semi-supervised semantic segmentation via adaptive equalization learning NeurIPS 2021 Sampling,CSL,TL, Aug Official
On model calibration for long-tailed object detection and instance segmentation NeurIPS 2021 LA Official
Label-imbalanced and group-sensitive classification under overparameterization NeurIPS 2021 LA
Towards calibrated model for long-tailed visual recognition from prior perspective NeurIPS 2021 Aug, RL Official
Supercharging imbalanced data learning with energy-based contrastive representation transfer NeurIPS 2021 Aug, TL, RL Official
VideoLT: Large-scale long-tailed video recognition ICCV 2021 Sampling Official
Exploring classification equilibrium in long-tailed object detection ICCV 2021 Sampling,CSL Official
GistNet: a geometric structure transfer network for long-tailed recognition ICCV 2021 Sampling,TL, DC
FASA: Feature augmentation and sampling adaptation for long-tailed instance segmentation ICCV 2021 Sampling,CSL
ACE: Ally complementary experts for solving long-tailed recognition in one-shot ICCV 2021 Sampling,Ensemble Official
Influence-Balanced Loss for Imbalanced Visual Classification ICCV 2021 CSL Official
Re-distributing biased pseudo labels for semi-supervised semantic segmentation: A baseline investigation ICCV 2021 TL Official
Self supervision to distillation for long-tailed visual recognition ICCV 2021 TL Official
Distilling virtual examples for long-tailed recognition ICCV 2021 TL
MosaicOS: A simple and effective use of object-centric images for long-tailed object detection ICCV 2021 TL Official
Parametric contrastive learning ICCV 2021 RL Official
Distributional robustness loss for long-tail learning ICCV 2021 RL Official
Learning of visual relations: The devil is in the tails ICCV 2021 DT
Image-Level or Object-Level? A Tale of Two Resampling Strategies for Long-Tailed Detection ICML 2021 Sampling Official
Delving into deep imbalanced regression ICML 2021 Other Official
Long-tailed multi-label visual recognition by collaborative training on uniform and re-balanced samplings CVPR 2021 Sampling,Ensemble
Equalization loss v2: A new gradient balance approach for long-tailed object detection CVPR 2021 CSL Official
Seesaw loss for long-tailed instance segmentation CVPR 2021 CSL Official
Adaptive class suppression loss for long-tail object detection CVPR 2021 CSL Official
PML: Progressive margin loss for long-tailed age classification CVPR 2021 CSL
Disentangling label distribution for long-tailed visual recognition CVPR 2021 CSL,LA Official
Adversarial robustness under long-tailed distribution CVPR 2021 CSL,LA,CD Official
Distribution alignment: A unified framework for long-tail visual recognition CVPR 2021 CSL,LA,DT Official
Improving calibration for long-tailed recognition CVPR 2021 CSL,Aug,DT Official
CReST: A classrebalancing self-training framework for imbalanced semi-supervised learning CVPR 2021 TL Official
Conceptual 12M: Pushing web-scale image-text pre-training to recognize long-tail visual concepts CVPR 2021 TL Official
RSG: A simple but effective module for learning imbalanced datasets CVPR 2021 TL,Aug Official
MetaSAug: Meta semantic augmentation for long-tailed visual recognition CVPR 2021 Aug Official
Contrastive learning based hybrid networks for long-tailed image classification CVPR 2021 RL
Unsupervised discovery of the long-tail in instance segmentation using hierarchical self-supervision CVPR 2021 RL
Long-tail learning via logit adjustment ICLR 2021 LA Official
Long-tailed recognition by routing diverse distribution-aware experts ICLR 2021 TL,Ensemble Official
Exploring balanced feature spaces for representation learning ICLR 2021 RL,DT

2020

Title Venue Year Type Code
Balanced meta-softmax for long-taield visual recognition NeurIPS 2020 Sampling,CSL Official
Posterior recalibration for imbalanced datasets NeurIPS 2020 LA Official
Long-tailed classification by keeping the good and removing the bad momentum causal effect NeurIPS 2020 LA,CD Official
Rethinking the value of labels for improving classimbalanced learning NeurIPS 2020 TL,RA Official
The devil is in classification: A simple framework for long-tail instance segmentation ECCV 2020 Sampling,DT,Ensemble Official
Imbalanced continual learning with partitioning reservoir sampling ECCV 2020 Sampling Official
Distribution-balanced loss for multi-label classification in long-tailed datasets ECCV 2020 CSL Official
Feature space augmentation for long-tailed data ECCV 2020 TL,Aug,DT
Learning from multiple experts: Self-paced knowledge distillation for long-tailed classification ECCV 2020 TL,Ensemble Official
Solving long-tailed recognition with deep realistic taxonomic classifier ECCV 2020 CD Official
Learning to segment the tail CVPR 2020 Sampling,TL Official
BBN: Bilateral-branch network with cumulative learning for long-tailed visual recognition CVPR 2020 Sampling,Ensemble Official
Overcoming classifier imbalance for long-tail object detection with balanced group softmax CVPR 2020 Sampling,Ensemble Official
Rethinking class-balanced methods for long-tailed visual recognition from a domain adaptation perspective CVPR 2020 CSL Official
Equalization loss for long-tailed object recognition CVPR 2020 CSL Official
Domain balancing: Face recognition on long-tailed domains CVPR 2020 CSL
M2m: Imbalanced classification via majorto-minor translation CVPR 2020 TL,Aug Official
Deep representation learning on long-tailed data: A learnable embedding augmentation perspective CVPR 2020 TL,Aug,RL
Inflated episodic memory with region self-attention for long-tailed visual recognition CVPR 2020 RL
Decoupling representation and classifier for long-tailed recognition ICLR 2020 Sampling,CSL,RL,CD,DT Official

2019

Title Venue Year Type Code
Meta-weight-net: Learning an explicit mapping for sample weighting NeurIPS 2019 CSL Official
Learning imbalanced datasets with label-distribution-aware margin loss NeurIPS 2019 CSL Official
Dynamic curriculum learning for imbalanced data classification ICCV 2019 Sampling
Class-balanced loss based on effective number of samples CVPR 2019 CSL Official
Striking the right balance with uncertainty CVPR 2019 CSL
Feature transfer learning for face recognition with under-represented data CVPR 2019 TL,Aug
Unequal-training for deep face recognition with long-tailed noisy data CVPR 2019 RL Official
Large-scale long-tailed recognition in an open world CVPR 2019 RL Official

2018

Title Venue Year Type Code
Large scale fine-grained categorization and domain-specific transfer learning CVPR 2018 TL Official

2017

Title Venue Year Type Code
Learning to model the tail NeurIPS 2017 CSL
Focal loss for dense object detection ICCV 2017 CSL
Range loss for deep face recognition with long-tailed training data ICCV 2017 RL
Class rectification hard mining for imbalanced deep learning ICCV 2017 RL

2016

Title Venue Year Type Code
Learning deep representation for imbalanced classification CVPR 2016 Sampling,RL
Factors in finetuning deep model for object detection with long-tail distribution CVPR 2016 CSL,RL

3. Benchmark Datasets

Dataset Long-tailed Task # Class # Training data # Test data
ImageNet-LT Classification 1,000 115,846 50,000
CIFAR100-LT Classification 100 50,000 10,000
Places-LT Classification 365 62,500 36,500
iNaturalist 2018 Classification 8,142 437,513 24,426
LVIS v0.5 Detection and Segmentation 1,230 57,000 20,000
LVIS v1 Detection and Segmentation 1,203 100,000 19,800
VOC-LT Multi-label Classification 20 1,142 4,952
COCO-LT Multi-label Classification 80 1,909 5,000
VideoLT Video Classification 1,004 179,352 25,622

4. Empirical Studies

(1) Long-tailed benchmarking performance

  • We evaluate several state-of-the-art methods on ImageNet-LT to see to what extent they handle class imbalance via new evaluation metrics, i.e., UA (upper bound accuracy) and RA (relative accuracy). We categorize these methods based on class re-balancing (CR), information augmentation (IA) and module improvement (MI).

  • Almost all long-tailed methods perform better than the Softmax baseline in terms of accuracy, which demonstrates the effectiveness of long-tailed learning.
  • Training with 200 epochs leads to better performance for most long-tailed methods, since sufficient training enables deep models to fit data better and learn better image representations.
  • In addition to accuracy, we also evaluate long-tailed methods based on UA and RA. For the methods that have higher UA, the performance gain comes not only from the alleviation of class imbalance, but also from other factors, like data augmentation or better network architectures. Therefore, simply using accuracy for evaluation is not accurate enough, while our proposed RA metric provides a good complement, since it alleviates the influences of factors apart from class imbalance.
  • For example, MiSLAS, based on data mixup, has higher accuracy than Balanced Sofmtax under 90 training epochs, but it also has higher UA. As a result, the relative accuracy of MiSLAS is lower than Balanced Sofmtax, which means that Balanced Sofmtax alleviates class imbalance better than MiSLAS under 90 training epochs.
  • Although some recent high-accuracy methods have lower RA, the overall development trend of long-tailed learning is still positive, as shown in the below figure.

  • The current state-of-the-art long-tailed method in terms of both accuracy and RA is TADE (ensemble-based method).

(2) More discussions on cost-sensitive losses

  • We further evaluate the performance of different cost-sensitive learning losses based on the decoupled training scheme.
  • Decoupled training, compared to joint training, can further improve the overall performance of most cost-sensitive learning methods apart from balanced softmax (BS).
  • Although BS outperofmrs other cost-sensitive losses under one-stage training, they perform comparably under decoupled training. This implies that although these cost-sensitive losses perform differently under joint training, they essentially learn similar quality of feature representations.

5. Citation

If this repository is helpful to you, please cite our survey.

@article{zhang2021deep,
  title={Deep long-tailed learning: A survey},
  author={Zhang, Yifan and Kang, Bingyi and Hooi, Bryan and Yan, Shuicheng and Feng, Jiashi},
  journal={arXiv preprint arXiv:2110.04596},
  year={2021}
}

5. Other Resources

Owner
vanint
vanint
An example of Scatterbrain implementation (combining local attention and Performer)

An example of Scatterbrain implementation (combining local attention and Performer)

HazyResearch 97 Jan 02, 2023
Implementation for paper: Self-Regulation for Semantic Segmentation

Self-Regulation for Semantic Segmentation This is the PyTorch implementation for paper Self-Regulation for Semantic Segmentation, ICCV 2021. Citing SR

Dong ZHANG 30 Nov 21, 2022
Code for "Diversity can be Transferred: Output Diversification for White- and Black-box Attacks"

Output Diversified Sampling (ODS) This is the github repository for the NeurIPS 2020 paper "Diversity can be Transferred: Output Diversification for W

50 Dec 11, 2022
Certis - Certis, A High-Quality Backtesting Engine

Certis - Backtesting For y'all Certis is a powerful, lightweight, simple backtes

Yeachan-Heo 46 Oct 30, 2022
《DeepViT: Towards Deeper Vision Transformer》(2021)

DeepViT This repo is the official implementation of "DeepViT: Towards Deeper Vision Transformer". The repo is based on the timm library (https://githu

109 Dec 02, 2022
Pytorch cuda extension of grid_sample1d

Grid Sample 1d pytorch cuda extension of grid sample 1d. Since pytorch only supports grid sample 2d/3d, I extend the 1d version for efficiency. The fo

lyricpoem 24 Dec 03, 2022
JudeasRx - graphical app for doing personalized causal medicine using the methods invented by Judea Pearl et al.

JudeasRX Instructions Read the references given in the Theory and Notation section below Fire up the Jupyter Notebook judeas-rx.ipynb The notebook dra

Robert R. Tucci 19 Nov 07, 2022
Efficient Training of Audio Transformers with Patchout

PaSST: Efficient Training of Audio Transformers with Patchout This is the implementation for Efficient Training of Audio Transformers with Patchout Pa

165 Dec 26, 2022
Code for paper: Group-CAM: Group Score-Weighted Visual Explanations for Deep Convolutional Networks

Group-CAM By Zhang, Qinglong and Rao, Lu and Yang, Yubin [State Key Laboratory for Novel Software Technology at Nanjing University] This repo is the o

zhql 98 Nov 16, 2022
Retrieval.pytorch - The code we used in [2020 DIGIX]

Retrieval.pytorch - The code we used in [2020 DIGIX]

Guo-Hua Wang 2 Feb 07, 2022
A lightweight library to compare different PyTorch implementations of the same network architecture.

TorchBug is a lightweight library designed to compare two PyTorch implementations of the same network architecture. It allows you to count, and compar

Arjun Krishnakumar 5 Jan 02, 2023
Learning with Noisy Labels via Sparse Regularization, ICCV2021

Learning with Noisy Labels via Sparse Regularization This repository is the official implementation of [Learning with Noisy Labels via Sparse Regulari

Xiong Zhou 38 Oct 20, 2022
A synthetic texture-invariant dataset for object detection of UAVs

A synthetic dataset for object detection of UAVs This repository contains a synthetic datasets accompanying the paper Sim2Air - Synthetic aerial datas

LARICS Lab 10 Aug 13, 2022
A system used to detect whether a person is wearing a medical mask or not.

Mask_Detection_System A system used to detect whether a person is wearing a medical mask or not. To open the program, please follow these steps: Make

Mohamed Emad 0 Nov 17, 2022
A Broad Study on the Transferability of Visual Representations with Contrastive Learning

A Broad Study on the Transferability of Visual Representations with Contrastive Learning This repository contains code for the paper: A Broad Study on

Ashraful Islam 29 Nov 09, 2022
In the case of your data having only 1 channel while want to use timm models

timm_custom Description In the case of your data having only 1 channel while want to use timm models (with or without pretrained weights), run the fol

2 Nov 26, 2021
A graph neural network (GNN) model to predict protein-protein interactions (PPI) with no sample features

A graph neural network (GNN) model to predict protein-protein interactions (PPI) with no sample features

2 Jul 25, 2022
IDA file loader for UF2, created for the DEFCON 29 hardware badge

UF2 Loader for IDA The DEFCON 29 badge uses the UF2 bootloader, which conveniently allows you to dump and flash the firmware over USB as a mass storag

Kevin Colley 6 Feb 08, 2022
Solve a Rubiks Cube using Python Opencv and Kociemba module

Rubiks_Cube_Solver Solve a Rubiks Cube using Python Opencv and Kociemba module Main Steps Get the countours of the cube check whether there are tota

Adarsh Badagala 176 Jan 01, 2023
TensorFlow implementation of AlexNet and its training and testing on ImageNet ILSVRC 2012 dataset

AlexNet training on ImageNet LSVRC 2012 This repository contains an implementation of AlexNet convolutional neural network and its training and testin

Matteo Dunnhofer 161 Nov 25, 2022