Skip to content

mmasana/Class-Orderings

Repository files navigation

Class-Orderings

Code from "On Class Orderings for Incremental Learning", CL-ICML 2020

Confusion Matrix Ordering (CMO)

The provided jupiter notebook explains how to load the model and the dataset for the case of CIFAR-100 on ResNet-32 from the results provided by the FACIL framework (see below). Then, it shows how to visualize the confusion matrices, how to permute them with a greedy approach, and how we proposed to use simulated annealing for the different class orderings.

Obtaining the models with FACIL

We use FACIL to both train the models needed for calculating the class ordering, and to evaluate on the different approaches. It is the code for the survey paper: Class-incremental learning: survey and performance evaluation [paper] [code]. It provides a (hopefully!) helpful framework to develop new methods for incremental learning and analyse existing ones.

Installation and usage

  1. Clone our github repository:
git clone https://github.com/mmasana/Class-Orderings.git
  1. Clone the FACIL repository:

For more details, check out the HOW TO.

git clone https://github.com/mmasana/FACIL.git
  1. Run the provided script or modify it to the required model and dataset.

  2. Modify the file locations and different options (such as the number of tasks, classes per task, ...) of the jupiter notebook as needed.

Extending FACIL

Once the required class orderings are computed from the simulated annealing of the jupiter notebook we can include them in the FACIL framework to evaluate them on different approaches. A new version of the dataset (CIFAR-100 in this case) can be added to the dataset_config by following the information from here. It basically consists on creating an instance of the CIFAR-100 dataset but adding the transformation of class_order with the corresponding list mapping.

Citation

@inproceedings{masana2020class,
  title={On Class Orderings for Incremental Learning},
  author={Masana, Marc and Twardowski, Bart{\l}omiej and van de Weijer, Joost},
  booktitle={Continual Learning Workshop at International Conference on Machine Learning (CL-ICML)},
  year={2020}
}