This repository contains the code for mini-batch shuffling strategies for multi-class imbalanced classification. The code provides the following functions:
- random shuffling strategy code
- different strategies for multi-class imbalanced classification
The basic requirement for using the files is a Python 3.8.19 environment with PyTorch 2.3.0
Here is a brief description of the files and folder content:
- random_shuffling.py: random shuffling for multi-class imbalanced classification
- class_with_imbalance.py: proposed strategy for multi-class imbalanced classification
To generate the dataset, run all .py files to implement different strategies for multi-class imbalanced classification.
The code was developed by Yuwei Mao from the CUCIS group at the Electrical and Computer Engineering Department at Northwestern University.
- Mao, Yuwei, Vishu Gupta, Kewei Wang, Wei-keng Liao, Alok Choudhary, and Ankit Agrawal. "To Shuffle or Not To Shuffle: Mini-Batch Shuffling Strategies for Multi-class Imbalanced Classification." In 2022 International Conference on Computational Science and Computational Intelligence (CSCI), pp. 298-301. IEEE, 2022. PDF
The research code shared in this repository is shared without any support or guarantee on its quality. However, please do raise an issue if you find anything wrong and I will try my best to address it.
email: [email protected]
Copyright (C) 2023, Northwestern University.
See COPYRIGHT notice in top-level directory.
This work is supported in part by the following grants: NIST award 70NANB19H005; DOE awards DE-SC0019358, DE-SC0021399; NSF award CMMI-2053929.