The official Pytorch implementation for ScrollNet: Dynamic Weight Importance for Continual Learning, Visual Continual Learning workshop, ICCV 2023.
git clone https://github.com/FireFYF/ScrollNet.git
cd ScrollNet
conda env create --file env.yml --name ScrollNet
Notice: set the appropriate version of your CUDA driver for cudatoolkit in env.yml.
conda activate ScrollNet
conda deactivate
python -u src/main_incremental.py --gpu 0 --approach finetuning --results-path ./results/5splits/scrollnet_ft --num-tasks 5
python -u src/main_incremental.py --gpu 0 --approach lwf --results-path ./results/5splits/scrollnet_lwf --num-tasks 5
python -u src/main_incremental.py --gpu 0 --approach ewc --results-path ./results/5splits/scrollnet_ewc --num-tasks 5
Please modify the file 'SizeOfSubnetworks.yml'. The default setting is for 4 subnetworks with equal splitting (ScrollNet-4).
The implementation is based on FACIL, which was developed as a framework based on class-incremental learning. We suggest referring to it if you want to incorporate more CL methods into ScrollNet.
If you find this work useful for your research, please cite:
@misc{yang2023scrollnet,
title={ScrollNet: Dynamic Weight Importance for Continual Learning},
author={Fei Yang and Kai Wang and Joost van de Weijer},
year={2023},
eprint={2308.16567},
archivePrefix={arXiv},
primaryClass={cs.CV}
}