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
pq is a jq-like Pickle file viewer

pq PQ is a jq-like viewer/processing tool for pickle files. howto # pq '' file.pkl {'other': 456, 'test': 123} # pq 'table' file.pkl |other|test| | 45

3 Mar 15, 2022
This is a TensorFlow implementation for C2-Rec

This is a TensorFlow implementation for C2-Rec We refer to the repo SASRec. Requirements requirement.txt Datasets This repo includes Amazon Beauty dat

7 Nov 14, 2022
CVPR 2021 - Official code repository for the paper: On Self-Contact and Human Pose.

selfcontact This repo is part of our project: On Self-Contact and Human Pose. [Project Page] [Paper] [MPI Project Page] It includes the main function

Lea Müller 68 Dec 06, 2022
Codes for realizing theories learned from Data Mining, Machine Learning, Deep Learning without using the present Python packages.

Codes-for-Algorithms Codes for realizing theories learned from Data Mining, Machine Learning, Deep Learning without using the present Python packages.

Tracy (Shengmin) Tao 1 Apr 12, 2022
Zero-Shot Text-to-Image Generation VQGAN+CLIP Dockerized

VQGAN-CLIP-Docker About Zero-Shot Text-to-Image Generation VQGAN+CLIP Dockerized This is a stripped and minimal dependency repository for running loca

Kevin Costa 73 Sep 11, 2022
League of Legends Reinforcement Learning Environment (LoLRLE) multiple training scenarios using PPO.

League of Legends Reinforcement Learning Environment (LoLRLE) About This repo contains code to train an agent to play league of legends in a distribut

2 Aug 19, 2022
More than a hundred strange attractors

dysts Analyze more than a hundred chaotic systems. Basic Usage Import a model and run a simulation with default initial conditions and parameter value

William Gilpin 185 Dec 23, 2022
This is the implementation of our work Deep Extreme Cut (DEXTR), for object segmentation from extreme points.

This is the implementation of our work Deep Extreme Cut (DEXTR), for object segmentation from extreme points.

Sergi Caelles 828 Jan 05, 2023
Black box hyperparameter optimization made easy.

BBopt BBopt aims to provide the easiest hyperparameter optimization you'll ever do. Think of BBopt like Keras (back when Theano was still a thing) for

Evan Hubinger 70 Nov 03, 2022
optimization routines for hyperparameter tuning

Hyperopt: Distributed Hyperparameter Optimization Hyperopt is a Python library for serial and parallel optimization over awkward search spaces, which

Marc Claesen 398 Nov 09, 2022
Change Detection in SAR Images Based on Multiscale Capsule Network

SAR_CD_MS_CapsNet Code for the paper "Change Detection in SAR Images Based on Multiscale Capsule Network" , IEEE Geoscience and Remote Sensing Letters

Feng Gao 21 Nov 29, 2022
FlexConv: Continuous Kernel Convolutions with Differentiable Kernel Sizes

FlexConv: Continuous Kernel Convolutions with Differentiable Kernel Sizes This repository contains the source code accompanying the paper: FlexConv: C

Robert-Jan Bruintjes 96 Dec 12, 2022
Official code for "End-to-End Optimization of Scene Layout" -- including VAE, Diff Render, SPADE for colorization (CVPR 2020 Oral)

End-to-End Optimization of Scene Layout Code release for: End-to-End Optimization of Scene Layout CVPR 2020 (Oral) Project site, Bibtex For help conta

Andrew Luo 41 Dec 09, 2022
a Lightweight library for sequential learning agents, including reinforcement learning

SaLinA: SaLinA - A Flexible and Simple Library for Learning Sequential Agents (including Reinforcement Learning) TL;DR salina is a lightweight library

Facebook Research 405 Dec 17, 2022
MAU: A Motion-Aware Unit for Video Prediction and Beyond, NeurIPS2021

MAU (NeurIPS2021) Zheng Chang, Xinfeng Zhang, Shanshe Wang, Siwei Ma, Yan Ye, Xinguang Xiang, Wen GAo. Official PyTorch Code for "MAU: A Motion-Aware

ZhengChang 20 Nov 25, 2022
Demo code for paper "Learning optical flow from still images", CVPR 2021.

Depthstillation Demo code for "Learning optical flow from still images", CVPR 2021. [Project page] - [Paper] - [Supplementary] This code is provided t

130 Dec 25, 2022
[CVPR 2022 Oral] EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monocular Object Pose Estimation

EPro-PnP EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monocular Object Pose Estimation In CVPR 2022 (Oral). [paper] Hanshen

同济大学智能汽车研究所综合感知研究组 ( Comprehensive Perception Research Group under Institute of Intelligent Vehicles, School of Automotive Studies, Tongji University) 842 Jan 04, 2023
How to Predict Stock Prices Easily Demo

How-to-Predict-Stock-Prices-Easily-Demo How to Predict Stock Prices Easily - Intro to Deep Learning #7 by Siraj Raval on Youtube ##Overview This is th

Siraj Raval 752 Nov 16, 2022
This is the official implementation for "Do Transformers Really Perform Bad for Graph Representation?".

Graphormer By Chengxuan Ying, Tianle Cai, Shengjie Luo, Shuxin Zheng*, Guolin Ke, Di He*, Yanming Shen and Tie-Yan Liu. This repo is the official impl

Microsoft 1.3k Dec 29, 2022
Fuwa-http - The http client implementation for the fuwa eco-system

Fuwa HTTP The HTTP client implementation for the fuwa eco-system Example import

Fuwa 2 Feb 16, 2022