Code for "Learning From Multiple Experts: Self-paced Knowledge Distillation for Long-tailed Classification", ECCV 2020 Spotlight

Related tags

Deep Learning LFME
Overview

Learning From Multiple Experts: Self-paced Knowledge Distillation for Long-tailed Classification

Implementation of
"Learning From Multiple Experts: Self-paced Knowledge Distillation for Long-tailed Classification"
Liuyu Xiang, Guiguang Ding, Jungong Han;

in European Conference on Computer Vision (ECCV), 2020, Spotlight

Requirements

Data Preparation

Follow OLTR for data preparation.

Getting Started (Training & Testing)

  • Step 1: Train Expert models, or use the pre-trained model in ./logs/ImageNet_LT/
CUDA_VISIBLE_DEVICES=0 python main.py --config=./config/many_shot.py
CUDA_VISIBLE_DEVICES=0 python main.py --config=./config/median_shot.py
CUDA_VISIBLE_DEVICES=0 python main.py --config=./config/low_shot.py
  • Step 2: Train a single model using the LFME
CUDA_VISIBLE_DEVICES=0 python main_LFME.py --config=./config/ImageNet_LT/LFME.py
  • Evaluate LFME:
CUDA_VISIBLE_DEVICES=0 python main_LFME.py --config=./config/ImageNet_LT/LFME.py --test

Citation

If you find our work useful for your research, please consider citing the following paper:

@inproceedings{xiang2020learning,
  title={Learning from multiple experts: Self-paced knowledge distillation for long-tailed classification},
  author={Xiang, Liuyu and Ding, Guiguang and Han, Jungong},
  booktitle={European Conference on Computer Vision},
  pages={247--263},
  year={2020},
  organization={Springer}
}

Contact

If you have any questions, please feel free to contact [email protected].

Acknowledgement

The code is partly based on OLTR.

You might also like...
dataset for ECCV 2020 "Motion Capture from Internet Videos"

Motion Capture from Internet Videos Motion Capture from Internet Videos Junting Dong*, Qing Shuai*, Yuanqing Zhang, Xian Liu, Xiaowei Zhou, Hujun Bao

《Unsupervised 3D Human Pose Representation with Viewpoint and Pose Disentanglement》(ECCV 2020) GitHub: [fig9]
《Unsupervised 3D Human Pose Representation with Viewpoint and Pose Disentanglement》(ECCV 2020) GitHub: [fig9]

Unsupervised 3D Human Pose Representation [Paper] The implementation of our paper Unsupervised 3D Human Pose Representation with Viewpoint and Pose Di

SNE-RoadSeg in PyTorch, ECCV 2020
SNE-RoadSeg in PyTorch, ECCV 2020

SNE-RoadSeg Introduction This is the official PyTorch implementation of SNE-RoadSeg: Incorporating Surface Normal Information into Semantic Segmentati

[ECCV 2020] Gradient-Induced Co-Saliency Detection
[ECCV 2020] Gradient-Induced Co-Saliency Detection

Gradient-Induced Co-Saliency Detection Zhao Zhang*, Wenda Jin*, Jun Xu, Ming-Ming Cheng ⭐ Project Home » The official repo of the ECCV 2020 paper Grad

PyTorch implementation of ECCV 2020 paper "Foley Music: Learning to Generate Music from Videos "

Foley Music: Learning to Generate Music from Videos This repo holds the code for the framework presented on ECCV 2020. Foley Music: Learning to Genera

Sign Language Translation with Transformers (COLING'2020, ECCV'20 SLRTP Workshop)

transformer-slt This repository gathers data and code supporting the experiments in the paper Better Sign Language Translation with STMC-Transformer.

IAST: Instance Adaptive Self-training for Unsupervised Domain Adaptation (ECCV 2020)
IAST: Instance Adaptive Self-training for Unsupervised Domain Adaptation (ECCV 2020)

This repo is the official implementation of our paper "Instance Adaptive Self-training for Unsupervised Domain Adaptation". The purpose of this repo is to better communicate with you and respond to your questions. This repo is almost the same with Another-Version, and you can also refer to that version.

Boundary-preserving Mask R-CNN (ECCV 2020)
Boundary-preserving Mask R-CNN (ECCV 2020)

BMaskR-CNN This code is developed on Detectron2 Boundary-preserving Mask R-CNN ECCV 2020 Tianheng Cheng, Xinggang Wang, Lichao Huang, Wenyu Liu Video

Self-Supervised Monocular 3D Face Reconstruction by Occlusion-Aware Multi-view Geometry Consistency[ECCV 2020]
Self-Supervised Monocular 3D Face Reconstruction by Occlusion-Aware Multi-view Geometry Consistency[ECCV 2020]

Self-Supervised Monocular 3D Face Reconstruction by Occlusion-Aware Multi-view Geometry Consistency(ECCV 2020) This is an official python implementati

Comments
  • Discrepancy of performance loss implementation

    Discrepancy of performance loss implementation

    Thanks for the work! 在研究代码的过程中发现关于CE loss的计算,似乎原文公式与代码有些差别: 1)原文中对样本求取CEloss之后,再根据每个样本的vi进行加权求和; image 2)代码中直接用logits乘以vi,再求取CEloss。 image 二者在数学上并不等价,请问是否我理解错误?该如何解释?

    opened by milliema 1
  • Questions about the equation in the paper

    Questions about the equation in the paper

    Thanks for your great work and contribution. I have some questions about the equation in the paper.

    1. As section 4.3 described (the line behind the equation f(v_i^k)=... ), v_i^{(1)}=pi (Nsl / Nsmin). I'm wondering if the authors made some mistakes. It should be v_i^{(1)}=pi (Nsmin / Nsl)?

    2. As described in section 4.3, Since the whole dataset is long-tailed, while we select samples from easy to hard, we also wish to select as uniform as possible across all subsets at the beginning of the training, and gradually add more hard samples as the epoch increases. In other words, at the first epoch we wish to select all the samples in the subset with lowest shots Smin (i.e. classes in Smin have the smallest number of samples) and same amount of samples in other subsets, and gradually add more samples until all the samples in all subsets are selected in the last epoch. From the equation f(v_i^k)=..., I don't understand how the hard samples and the easy samples in the same subset can be weighted in different ways in the previous and later epoch. In other words, at the 1st epoch, the easy samples have larger weights than the hard samples in the same subset. However, at the E_th epoch, the easy samples also have larger weights than the hard samples. So, I'm confused about how to implement the idea of "gradually add more hard samples as the epoch increases" as described in the paper.

    opened by JixiangGao 1
  • RuntimeError: Found dtype Double but expected Float

    RuntimeError: Found dtype Double but expected Float

    I want to use pretrained model, but when I train, it occurs problem, I can't find where the type is Double and change them, please give me some advice, thank you!

    opened by madoka109 1
Owner
null
Code for the paper "Improving Vision-and-Language Navigation with Image-Text Pairs from the Web" (ECCV 2020)

Improving Vision-and-Language Navigation with Image-Text Pairs from the Web Arjun Majumdar, Ayush Shrivastava, Stefan Lee, Peter Anderson, Devi Parikh

Arjun Majumdar 44 Dec 14, 2022
Code for ECCV 2020 paper "Contacts and Human Dynamics from Monocular Video".

Contact and Human Dynamics from Monocular Video This is the official implementation for the ECCV 2020 spotlight paper by Davis Rempe, Leonidas J. Guib

Davis Rempe 207 Jan 5, 2023
Code for Towards Streaming Perception (ECCV 2020) :car:

sAP — Code for Towards Streaming Perception ECCV Best Paper Honorable Mention Award Feb 2021: Announcing the Streaming Perception Challenge (CVPR 2021

Martin Li 85 Dec 22, 2022
Code for paper ECCV 2020 paper: Who Left the Dogs Out? 3D Animal Reconstruction with Expectation Maximization in the Loop.

Who Left the Dogs Out? Evaluation and demo code for our ECCV 2020 paper: Who Left the Dogs Out? 3D Animal Reconstruction with Expectation Maximization

Benjamin Biggs 29 Dec 28, 2022
PyTorch code for our ECCV 2020 paper "Single Image Super-Resolution via a Holistic Attention Network"

HAN PyTorch code for our ECCV 2020 paper "Single Image Super-Resolution via a Holistic Attention Network" This repository is for HAN introduced in the

五维空间 140 Nov 23, 2022
Source code for "Progressive Transformers for End-to-End Sign Language Production" (ECCV 2020)

Progressive Transformers for End-to-End Sign Language Production Source code for "Progressive Transformers for End-to-End Sign Language Production" (B

null 58 Dec 21, 2022
[ECCV 2020] Reimplementation of 3DDFAv2, including face mesh, head pose, landmarks, and more.

Stable Head Pose Estimation and Landmark Regression via 3D Dense Face Reconstruction Reimplementation of (ECCV 2020) Towards Fast, Accurate and Stable

Remilia Scarlet 221 Dec 30, 2022
1st Place Solution to ECCV-TAO-2020: Detect and Represent Any Object for Tracking

Instead, two models for appearance modeling are included, together with the open-source BAGS model and the full set of code for inference. With this code, you can achieve around mAP@23 with TAO test set (based on our estimation).

null 79 Oct 8, 2022
Repository for Traffic Accident Benchmark for Causality Recognition (ECCV 2020)

Causality In Traffic Accident (Under Construction) Repository for Traffic Accident Benchmark for Causality Recognition (ECCV 2020) Overview Data Prepa

Tackgeun 21 Nov 20, 2022
git《Learning Pairwise Inter-Plane Relations for Piecewise Planar Reconstruction》(ECCV 2020) GitHub:

Learning Pairwise Inter-Plane Relations for Piecewise Planar Reconstruction Code for the ECCV 2020 paper by Yiming Qian and Yasutaka Furukawa Getting

null 37 Dec 4, 2022