This repository implements Lee et al. Overcoming Catastrophic Forgetting with Unlabeled Data in the Wild. In ICCV, 2019 in PyTorch.
@inproceedings{lee2019overcoming,
title={Overcoming Catastrophic Forgetting with Unlabeled Data in the Wild},
author={Lee, Kibok and Lee, Kimin and Shin, Jinwoo and Lee, Honglak},
booktitle={ICCV},
year={2019}
}
This implementation also includes the state-of-the-art distillation-based methods for class-incremental learning (a.k.a. single-head continual learning):
Please see [training recipes] for replicating them.
sample_tiny.py
plotter.py
plotter.py
plotter.py
You may either generate datasets by yourself or download h5
files in the following links.
You may not download external data if you don't want to use them.
All data are assumed to be in data/{dataset}/
. ({dataset} = cifar100, tiny, imagenet
)
This will be automatically downloaded.
data/tiny/
.python sample_tiny.py -s {seed}
. {seed}
corresponds to the stage number in incremental learning.data/tiny/
.--ex-static
for training.data/imagenet/ilsvrc2012
.python image_resizer_imagenet.py -i 'imagenet/ilsvrc2012' -o 'imagenet/ilsvrc2012_resized' -s 32 -a box -r -j 16
data/imagenet/fall11_whole
.python image_resizer_imagenet.py -i 'imagenet/fall11_whole' -o 'imagenet/fall11_whole_resized' -s 32 -a box -r -j 16
python sample_imagenet.py -s {seed}
. {seed}
corresponds to the stage number in incremental learning.seed=0
.data/imagenet/
.data/imagenet/
.--ex-static
for training.python shuffle_task.py
.split/
.python main.py -h
to see the general usage.--ex-static
, only 0-th external dataset is used for all stages.python main.py --gpu 0 --seed 0 -d cifar100 -s res -t 10 10 -r PC -b dw -f cls
python main.py --gpu 0 --seed 0 -d cifar100 -e tiny -s res -t 10 10 -r PCQ -b dw -f cls
python plotter.py -h
to see the general usage. bar
and time
replicate Figure 2(a,b) and (c,d), and the others replicate tables.python plotter.py -d cifar100 -e tiny -s res -t 10 10 --exp t1
python plotter.py -d cifar100 -e tiny -s res --exp bar
python plotter.py --exp custom