Reproduction of "Pure Noise to the Rescue of Insufficient Data: Improving Imbalanced Classification by Training on Random Noise Images"
Use the provided requirements.txt
to install required packages.
pip install -r requirements.txt
To reproduce the tables in our paper, check the bash_scripts/
directory and run the appropriate script.
datasets_and_ir_ratios.sh
for Table 3, 10darbn_ablation.sh
for Table 4augmentation.sh
for Table 5balanced_cifar10.sh
for Table 6resnet.sh
for Table 7, 8compare_dataset.sh
for Table 10search_inputnorm.sh
for Table 14batch_size.sh
for Table 15delta.sh
for Table 16
You can also run individual experiments by directly calling train.py
.
python train.py
By default, it uses the config values saved in default_cifar10lt.yaml
. You can specify different default config files.
python train.py config_filepath=default_cifar10.yaml
You can also change individual config values through the command line.
python train.py batch_size=64
To generate figures for analysis, refer to the notebooks in the root directory.
analysis_tsne.ipynb
for Figure 2, 8analysis_confusion_matrix.ipynb
for Figure 3dataset_comparison.ipynb
for Figure 4analysis_group_accuracy.ipynb
for Figure 6analysis_histogram.ipynb
for Figure 9, 10
Each notebook downloads a model from Google Drive using a link specified in storage.py
unless it already exists in local filepath.