Official implementation of our paper "Learning to Bootstrap for Combating Label Noise"

Related tags

Deep LearningL2B
Overview

Learning to Bootstrap for Combating Label Noise

This repo is the official implementation of our paper "Learning to Bootstrap for Combating Label Noise".

Citation

If you use this code for your research, please cite our paper "Learning to Bootstrap for Combating Label Noise".

@misc{zhou2022learning,
      title={Learning to Bootstrap for Combating Label Noise}, 
      author={Yuyin Zhou and Xianhang Li and Fengze Liu and Xuxi Chen and Lequan Yu and Cihang Xie and Matthew P. Lungren and Lei Xing},
      year={2022},
      eprint={2202.04291},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Requirements

Python >= 3.6.4
Pytorch >= 1.6.0
Higher = 0.2.1
Tensorboardx = 2.4.1

Training

First, please create a folder to store checkpoints by using the following command.

mkdir checkpoint

CIFAR-10

To reproduce the results on CIFAR dataset from our paper, please follow the command and our hyper-parameters.

First, you can adjust the corruption_prob and corruption_type to obtain different noise rates and noise type.

Second, the reweight_label indicates you are using the our L2B method. You can change it to baseline or mixup.

python  main.py  --arch res18 --dataset cifar10 --num_classes 10 --exp L2B --train_batch_size  512 \
 --corruption_prob 0.2 --reweight_label  --lr 0.15  -clipping_norm 0.25  --num_epochs 300  --scheduler cos \
 --corruption_type unif  --warm_up 10  --seed 0  

CIFAR-100

Most of settings are the same as CIFAR-10. To reproduce the results, please follow the command.

python  main.py  --arch res18 --dataset cifar100 --num_classes 100 --exp L2B --train_batch_size  256  \
--corruption_prob 0.2 --reweight_label  --lr 0.15  --clipping_norm 0.80  --num_epochs 300  --scheduler cos \
--corruption_type unif  --warm_up 10  --seed 0 \ 

ISIC2019

On the ISIC dataset, first you should download the dataset by following command.

Download ISIC dataset as follows:
wget https://isic-challenge-data.s3.amazonaws.com/2019/ISIC_2019_Training_Input.zip
wget https://isic-challenge-data.s3.amazonaws.com/2019/ISIC_2019_Training_GroundTruth.csv \

Then you can reproduce the results by following the command.

python main.py  --arch res50  --dataset ISIC --data_path isic_data/ISIC_2019_Training_Input --num_classes 8 
--exp L2B  --train_batch_size 64  --corruption_prob 0.2 --lr 0.01 --clipping_norm 0.80 --num_epochs 30 
--temperature 10.0  --wd 5e-4  --scheduler cos --reweight_label --norm_type softmax --warm_up 1 

Clothing-1M

First, the num_batch and train_batch_size indicates how many training images you want to use (we sample a balanced training data for each epoch).

Second, you can adjust the num_meta to sample different numbers of validation images to form the metaset. We use the whole validation set as metaset by default.

The data_path is where you store the data and key-label lists. And also change the data_path in the line 20 of main.py. If you have issue for downloading the dataset, please feel free to contact us.

Then you can reproduce the results by following the command.

python main.py --arch res18_224 --num_batch 250 --dataset clothing1m \
--exp L2B_clothing1m_one_stage_multi_runs  --train_batch_size 256  --lr 0.005  \
--num_epochs 300  --reweight_label  --wd 5e-4 --scheduler cos   --warm_up 0 \
--data_path /data1/data/clothing1m/clothing1M  --norm_type org  --num_classes 14 \ 
--multi_runs 3 --num_meta 14313

Contact

Yuyin Zhou

Xianhang Li

If you have any question about the code and data, please contact us directly.

YOLO5Face: Why Reinventing a Face Detector (https://arxiv.org/abs/2105.12931)

Introduction Yolov5-face is a real-time,high accuracy face detection. Performance Single Scale Inference on VGA resolution(max side is equal to 640 an

DeepCam Shenzhen 1.4k Jan 07, 2023
Unsupervised Representation Learning via Neural Activation Coding

Neural Activation Coding This repository contains the code for the paper "Unsupervised Representation Learning via Neural Activation Coding" published

yookoon park 5 May 26, 2022
Improving Deep Network Debuggability via Sparse Decision Layers

Improving Deep Network Debuggability via Sparse Decision Layers This repository contains the code for our paper: Leveraging Sparse Linear Layers for D

Madry Lab 35 Nov 14, 2022
Sequence modeling benchmarks and temporal convolutional networks

Sequence Modeling Benchmarks and Temporal Convolutional Networks (TCN) This repository contains the experiments done in the work An Empirical Evaluati

CMU Locus Lab 3.5k Jan 01, 2023
Semi-supervised Video Deraining with Dynamical Rain Generator (CVPR, 2021, Pytorch)

S2VD Semi-supervised Video Deraining with Dynamical Rain Generator (CVPR, 2021) Requirements and Dependencies Ubuntu 16.04, cuda 10.0 Python 3.6.10, P

Zongsheng Yue 53 Nov 23, 2022
The implementation of CVPR2021 paper Temporal Query Networks for Fine-grained Video Understanding, by Chuhan Zhang, Ankush Gupta and Andrew Zisserman.

Temporal Query Networks for Fine-grained Video Understanding 📋 This repository contains the implementation of CVPR2021 paper Temporal_Query_Networks

55 Dec 21, 2022
PyTorch implementation for our paper "Deep Facial Synthesis: A New Challenge"

FSGAN Here is the official PyTorch implementation for our paper "Deep Facial Synthesis: A New Challenge". This project achieve the translation between

Deng-Ping Fan 32 Oct 10, 2022
K-Nearest Neighbor in Pytorch

Pytorch KNN CUDA 2019/11/02 This repository will no longer be maintained as pytorch supports sort() and kthvalue on tensors. git clone https://github.

Chris Choy 65 Dec 01, 2022
Class activation maps for your PyTorch models (CAM, Grad-CAM, Grad-CAM++, Smooth Grad-CAM++, Score-CAM, SS-CAM, IS-CAM, XGrad-CAM, Layer-CAM)

TorchCAM: class activation explorer Simple way to leverage the class-specific activation of convolutional layers in PyTorch. Quick Tour Setting your C

F-G Fernandez 1.2k Dec 29, 2022
B-cos Networks: Attention is All we Need for Interpretability

Convolutional Dynamic Alignment Networks for Interpretable Classifications M. Böhle, M. Fritz, B. Schiele. B-cos Networks: Alignment is All we Need fo

58 Dec 23, 2022
a minimal terminal with python 😎😉

Meterm a terminal with python 😎 How to use Clone Project: $ git clone https://github.com/motahharm/meterm.git Run: in Terminal: meterm.exe Or pip ins

Motahhar.Mokfi 5 Jan 28, 2022
FAVD: Featherweight Assisted Vulnerability Discovery

FAVD: Featherweight Assisted Vulnerability Discovery This repository contains the replication package for the paper "Featherweight Assisted Vulnerabil

secureIT 4 Sep 16, 2022
Tensorflow implementation of ID-Unet: Iterative Soft and Hard Deformation for View Synthesis.

ID-Unet: Iterative-view-synthesis(CVPR2021 Oral) Tensorflow implementation of ID-Unet: Iterative Soft and Hard Deformation for View Synthesis. Overvie

17 Aug 23, 2022
Pytorch implementation of TailCalibX : Feature Generation for Long-tail Classification

TailCalibX : Feature Generation for Long-tail Classification by Rahul Vigneswaran, Marc T. Law, Vineeth N. Balasubramanian, Makarand Tapaswi [arXiv] [

Rahul Vigneswaran 34 Jan 02, 2023
"Exploring Vision Transformers for Fine-grained Classification" at CVPRW FGVC8

FGVC8 Exploring Vision Transformers for Fine-grained Classification paper presented at the CVPR 2021, The Eight Workshop on Fine-Grained Visual Catego

Marcos V. Conde 19 Dec 06, 2022
A tensorflow/keras implementation of StyleGAN to generate images of new Pokemon.

PokeGAN A tensorflow/keras implementation of StyleGAN to generate images of new Pokemon. Dataset The model has been trained on dataset that includes 8

19 Jul 26, 2022
Code used to generate the results appearing in "Train longer, generalize better: closing the generalization gap in large batch training of neural networks"

Train longer, generalize better - Big batch training This is a code repository used to generate the results appearing in "Train longer, generalize bet

Elad Hoffer 145 Sep 16, 2022
MGFN: Multi-Graph Fusion Networks for Urban Region Embedding was accepted by IJCAI-2022.

Multi-Graph Fusion Networks for Urban Region Embedding (IJCAI-22) This is the implementation of Multi-Graph Fusion Networks for Urban Region Embedding

202 Nov 18, 2022
A memory-efficient implementation of DenseNets

efficient_densenet_pytorch A PyTorch =1.0 implementation of DenseNets, optimized to save GPU memory. Recent updates Now works on PyTorch 1.0! It uses

Geoff Pleiss 1.4k Dec 25, 2022
Open & Efficient for Framework for Aspect-based Sentiment Analysis

PyABSA - Open & Efficient for Framework for Aspect-based Sentiment Analysis Fast & Low Memory requirement & Enhanced implementation of Local Context F

YangHeng 567 Jan 07, 2023