PyTorch implementation of FourierAugment: Frequency-Based Image Encoding for Few-Shot Class-Incremental Learning
Few-shot class-incremental learning (FSCIL) with a more practical problem setting is recently drawing increased attention; FSCIL sequentially learns a set of novel classes with a small number of training data samples while not forgetting the previously-learned classes. Conventional approaches for FSCIL have increased the model complexity or adopted additional memories to deal with catastrophic forgetting of previous classes and overfitting to novel classes. In contrast to conventional approaches, we propose a rather straightforward approach for FSCIL in this study: data augmentation. Specifically, we propose a frequency-based image encoding method, namely FourierAugment, which allows FSCIL models to learn richer features without complicating model architectures or computational structures---helping to maintain discriminative power over both previous and novel classes. Comprehensive experiment results attest the effectiveness of the proposed FourierAugment method and we achieve new state-of-the-art performance.
Please refer to our paper for detailed values.
Except for FeSSSS, models can be run as sh files. Please refer to the repos provided by the authors of FeSSSS.
- run_CEC_CIFAR100.sh: training and evaluation for CIFAR100 with CEC.
- run_CEC_CUB200.sh: training and evaluation for CUB200 with CEC.
- run_CEC_miniImageNet.sh: training and evaluation for miniImageNet with CEC.
- run_FACT_CIFAR100.sh: training and evaluation for CIFAR100 with FACT.
- run_FACT_CUB200.sh: training and evaluation for CUB200 with FACT.
- run_FACT_miniImageNet.sh: training and evaluation for miniImageNet with FACT.
- run_C_FSCIL_CIFAR100.sh: training and evaluation for CIFAR100 with Constrained-FSCIL.
- run_C_FSCIL_miniImageNet.sh: training and evaluation for miniImageNet with Constrained-FSCIL.
- run_ALICE_CIFAR100.sh: training and evaluation for CIFAR100 with ALICE.
- run_ALICE_CUB200.sh: training and evaluation for CUB200 with ALICE.
- run_ALICE_miniImageNet.sh: training and evaluation for miniImageNet with ALICE.
Our project references the codes in the following repos. We thank the authors for making their code public.

