Implementation of the class-incremental method "Incremental Learning with Dual Memory" (IL2M) [1] as an Avalanche [2] plugin. The implementation is based on the existing version available in FACIL [3].
The method was evaluated on the MNIST, CIFAR-10 and CIFAR-100 datasets and benchmarked against various baselines, including naive fine-tuning, cumulative learning, fine-tuning with a fixed memory size, as well as advanced approaches like BiC and iCARL, using the implementations provided in Avalanche [2].
The notebook notebooks/report.ipynb
provides an overview of the method, details on its implementation, a description of the experimental settings, and a discussion of the experimental results.
The project's directory structure includes the following main files and folders:
IL2M
├── experiments # stores the scripts for running the different approaches on the datasets
│ ├── cifar10
│ ├── cifar100
│ └── mnist
├── imgs # stores figures generated from experimental results
├── models # stores the models used in the experiments
├── notebooks # stores the notebooks for running experiments and/or visualizing results
├── results # stores the results of the experiments
├── il2m_plugin.py # Avalanche's IL2M plugin
└── il2m_strategy.py # Avalanche's IL2M strategy
- [1] Belouadah, E. and Popescu, A. "IL2M: Class Incremental Learning With Dual Memory". Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019. GitHub repository: https://github.com/EdenBelouadah/class-incremental-learning/tree/master/il2m/.
- [2] Carta, A., Pellegrini, L., Cossu, A., Hemati, H. and Lomonaco, V. "Avalanche: A pytorch library for deep continual learning". Journal of Machine Learning Research, 24(363), 1-6. 2023. GitHub repository: https://github.com/ContinualAI/avalanche.
- [3] Masana, M., Liu, X., Twardowski, B., Menta, M., Bagdanov, A. D. and Van De Weijer, J. "Class-Incremental Learning: Survey and Performance Evaluation on Image Classification". IEEE Transactions on Pattern Analysis and Machine Intelligence, 45(5), 5513-5533. 2023. GitHub repository: https://github.com/mmasana/FACIL.
This project was developed for the "Continual Learning" course at the University of Pisa (a.y. 2024/2025).