Adjust Decision Boundary for Class Imbalanced Learning

Overview

Adjusting Decision Boundary for Class Imbalanced Learning

This repository is the official PyTorch implementation of WVN-RS, introduced in Adjusting Decision Boundary for Class Imbalanced Learning.

Requirements

  1. NVIDIA docker : Docker image will be pulled from cloud.
  2. CIFAR dataset : The "dataset_path" in run_cifar.sh should be
cifar10/
    data_batch_N
    test_batch
cifar100/
    train
    test

CIFAR datasets are available here.

How to use

Run the shell script.

bash run_cifar.sh

To use Weight Vector Normalization (WVN), use --WVN flag. (It is already in the script.)

Results

  1. Validation error on Long-Tailed CIFAR10
Imbalance 200 100 50 20 10 1
Baseline 35.67 29.71 22.91 16.04 13.26 6.83
Over-sample 32.19 28.27 21.40 15.23 12.24 6.61
Focal 34.71 29.62 23.28 16.77 13.19 6.60
CB 31.11 25.43 20.73 15.64 12.51 6.36
LDAM-DRW 28.09 22.97 17.83 14.53 11.84 6.32
Baseline+RS 27.02 21.36 17.16 13.46 11.86 6.32
WVN+RS 27.23 20.17 16.80 12.76 10.71 6.29
  1. Validation error on Long-Tailed CIFAR100
Imbalance 200 100 50 20 10 1
Baseline 64.21 60.38 55.09 48.93 43.52 29.69
Over-sample 66.39 61.53 56.65 49.03 43.38 29.41
Focal 64.38 61.31 55.68 48.05 44.22 28.52
CB 63.77 60.40 54.68 47.41 42.01 28.39
LDAM-DRW 61.73 57.96 52.54 47.14 41.29 28.85
Baseline+RS 59.59 55.65 51.91 45.09 41.45 29.80
WVN+RS 59.48 55.50 51.80 46.12 41.02 29.22

Notes

This codes use docker image "feidfoe/pytorch:v.2" with pytorch version, '0.4.0a0+0640816'. The image only provides basic libraries such as NumPy or PIL.

WVN is implemented on ResNet architecture only.

Baseline repository

This repository is forked and modified from original repo.

Contact

Byungju Kim ([email protected])

BibTeX for Citation

@ARTICLE{9081988,
  author={B. {Kim} and J. {Kim}},
  journal={IEEE Access}, 
  title={Adjusting Decision Boundary for Class Imbalanced Learning}, 
  year={2020},
  volume={8},
  number={},
  pages={81674-81685},}
Owner
Peyton Byungju Kim
Peyton Byungju Kim
AMTML-KD: Adaptive Multi-teacher Multi-level Knowledge Distillation

AMTML-KD: Adaptive Multi-teacher Multi-level Knowledge Distillation

Frank Liu 26 Oct 13, 2022
Static Features Classifier - A static features classifier for Point-Could clusters using an Attention-RNN model

Static Features Classifier This is a static features classifier for Point-Could

ABDALKARIM MOHTASIB 1 Jan 25, 2022
The project was to detect traffic signs, based on the Megengine framework.

trafficsign 赛题 旷视AI智慧交通开源赛道,初赛1/177,复赛1/12。 本赛题为复杂场景的交通标志检测,对五种交通标志进行识别。 框架 megengine 算法方案 网络框架 atss + resnext101_32x8d 训练阶段 图片尺寸 最终提交版本输入图片尺寸为(1500,2

20 Dec 02, 2022
Rede Neural Convolucional feita durante o processo seletivo do Laboratório de Inteligência Artificial da FACOM (UFMS)

Primeira_Rede_Neural_Convolucional Rede Neural Convolucional feita durante o processo seletivo do Laboratório de Inteligência Artificial da FACOM (UFM

Roney_Felipe 1 Jan 13, 2022
OpenMMLab Detection Toolbox and Benchmark

MMDetection is an open source object detection toolbox based on PyTorch. It is a part of the OpenMMLab project.

OpenMMLab 22.5k Jan 05, 2023
TCPNet - Temporal-attentive-Covariance-Pooling-Networks-for-Video-Recognition

Temporal-attentive-Covariance-Pooling-Networks-for-Video-Recognition This is an implementation of TCPNet. Introduction For video recognition task, a g

Zilin Gao 21 Dec 08, 2022
Immortal tracker

Immortal_tracker Prerequisite Our code is tested for Python 3.6. To install required liabraries: pip install -r requirements.txt Waymo Open Dataset P

74 Dec 03, 2022
A Weakly Supervised Amodal Segmenter with Boundary Uncertainty Estimation

Paper Khoi Nguyen, Sinisa Todorovic "A Weakly Supervised Amodal Segmenter with Boundary Uncertainty Estimation", accepted to ICCV 2021 Our code is mai

Khoi Nguyen 5 Aug 14, 2022
MultiSiam: Self-supervised Multi-instance Siamese Representation Learning for Autonomous Driving

MultiSiam: Self-supervised Multi-instance Siamese Representation Learning for Autonomous Driving Code will be available soon. Motivation Architecture

Kai Chen 24 Apr 19, 2022
A standard framework for modelling Deep Learning Models for tabular data

PyTorch Tabular aims to make Deep Learning with Tabular data easy and accessible to real-world cases and research alike.

801 Jan 08, 2023
Implementation for On Provable Benefits of Depth in Training Graph Convolutional Networks

Implementation for On Provable Benefits of Depth in Training Graph Convolutional Networks Setup This implementation is based on PyTorch = 1.0.0. Smal

Weilin Cong 8 Oct 28, 2022
YOLTv4 builds upon YOLT and SIMRDWN, and updates these frameworks to use the most performant version of YOLO, YOLOv4

YOLTv4 builds upon YOLT and SIMRDWN, and updates these frameworks to use the most performant version of YOLO, YOLOv4. YOLTv4 is designed to detect objects in aerial or satellite imagery in arbitraril

Adam Van Etten 161 Jan 06, 2023
This is a demo app to be used in the video streaming applications

MoViDNN: A Mobile Platform for Evaluating Video Quality Enhancement with Deep Neural Networks MoViDNN is an Android application that can be used to ev

ATHENA Christian Doppler (CD) Laboratory 7 Jul 21, 2022
Callable PyTrees and filtered JIT/grad transformations => neural networks in JAX.

Equinox Callable PyTrees and filtered JIT/grad transformations = neural networks in JAX Equinox brings more power to your model building in JAX. Repr

Patrick Kidger 909 Dec 30, 2022
PyTorch implementation of our Adam-NSCL algorithm from our CVPR2021 (oral) paper "Training Networks in Null Space for Continual Learning"

Adam-NSCL This is a PyTorch implementation of Adam-NSCL algorithm for continual learning from our CVPR2021 (oral) paper: Title: Training Networks in N

Shipeng Wang 34 Dec 21, 2022
(ICCV 2021) Official code of "Dressing in Order: Recurrent Person Image Generation for Pose Transfer, Virtual Try-on and Outfit Editing."

Dressing in Order (DiOr) 👚 [Paper] 👖 [Webpage] 👗 [Running this code] The official implementation of "Dressing in Order: Recurrent Person Image Gene

Aiyu Cui 277 Dec 28, 2022
Implementation of ToeplitzLDA for spatiotemporal stationary time series data.

Code for the ToeplitzLDA classifier proposed in here. The classifier conforms sklearn and can be used as a drop-in replacement for other LDA classifiers. For in-depth usage refer to the learning from

Jan Sosulski 5 Nov 07, 2022
Regularized Frank-Wolfe for Dense CRFs: Generalizing Mean Field and Beyond

CRF - Conditional Random Fields A library for dense conditional random fields (CRFs). This is the official accompanying code for the paper Regularized

Đ.Khuê Lê-Huu 21 Nov 26, 2022
Official NumPy Implementation of Deep Networks from the Principle of Rate Reduction (2021)

Deep Networks from the Principle of Rate Reduction This repository is the official NumPy implementation of the paper Deep Networks from the Principle

Ryan Chan 49 Dec 16, 2022
The aim of this project is to build an AI bot that can play the Wordle game, or more generally Squabble

Wordle RL The aim of this project is to build an AI bot that can play the Wordle game, or more generally Squabble I know there are more deterministic

Aditya Arora 3 Feb 22, 2022