Skip to content

isCDX2/DYSON

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DYSON

The official PyTorch implementation of our CVPR 2024 paper:

DYSON: Dynamic Feature Space Self-Organization for Online Task-Free Class Incremental Learning

GitHub maintainer: Yingjie Chen

Highlight


Brief Introduction

In this paper, we focus on a challenging Online Task-Free Class Incremental Learning (OTFCIL) problem. Different from the existing methods that continuously learn the feature space from data streams, we propose a novel compute-and-align paradigm for the OTFCIL. It first computes an optimal geometry, i.e., the class prototype distribution, for classifying existing classes and updates it when new classes emerge, and then trains a DNN model by aligning its feature space to the optimal geometry. To this end, we develop a novel Dynamic Neural Collapse (DNC) algorithm to compute and update the optimal geometry. The DNC expands the geometry when new classes emerge without loss of the geometry optimality and guarantees the drift distance of old class prototypes with an explicit upper bound. On this basis, we propose a novel Dynamic feature space Self-Organization (DYSON) method containing three major components, including 1) a feature extractor, 2) a Dynamic Feature-Geometry Alignment (DFGA) module aligning the feature space to the optimal geometry computed by DNC and 3) a training-free class-incremental classifier derived from the DNC geometry. Experimental comparison results on four benchmark datasets, including CIFAR10, CIFAR100, CUB200, and CoRe50, demonstrate the efficiency and superiority of the DYSON method.

Strong Performance

Our proposed DYSON steadily and dramatically outperforms the state-of-the-art methods.

Method backbone buffer cifar10,step=1 cifar10,step=2 cifar10,step=Gaussian buffer cifar100,step=1 cifar100,step=5 cifar100,step=Gaussian
ODDL ResNet18 2k - 52.7 - 2k - 27.2 -
SDP ResNet18 500 - 66.2 76.3 2k - - -
DYSON(ours) ResNet18 0 73.4 74.4 76.5 0 49.6 45.3 47.0
CoPE ResNet50 1k - 48.9 - 5k - 21.6 -
CN-DPM ResNet50 1k - 45.2 - 1k - 20.1 -
GMED ResNet50 5k - 47.7 - 5k - 19.6 -
FCA ResNet50 0 77.5 78.7 76.1 0 53.3 48.7 53.4
Ensemble ResNet50 2k 78.3 79.0 50.1 6k 54.1 55.3 39.0
DSDM ResNet50 2k 79.4 79.6 78.7 6k 54.9 55.3 55.5
DYSON(ours) ResNet50 0 79.5 80.7 79.1 0 58.9 59.2 58.6
L2P ViT-S/8 1k 46.8 61.4 57.5 3k 8.4 27.3 48.7
DSDM ViT-S/8 1k 85.5 85.6 84.9 3k 61.1 60.8 64.1
DYSON(ours) ViT-S/8 0 92.6 93.5 93.8 0 77.7 75.6 76.4

install all environment

Use the Anaconda (cu11)

conda env create -f DYSON_env.yaml

Data Preparation

CIFAR10 and CIFAR100 data sets will be downloaded automatically, CoRE50 and CUB200 data sets will need to be downloaded manually and put them in the ./DYSON/dataset

Training and Evaluation

Only the operation of the default protocol is shown here, Adjust the specific parameters to change the protocol

  • CIFAR10
python ./DYSON/main.py --data_name cifar10 --epoch 1
  • CIFAR100
python ./DYSON/main.py --data_name cifar100 --epoch 1
  • CoRe50
python ./DYSON/core.py
python ./DYSON/main.py --data_name core50 --epoch 1
  • CUB200
python ./DYSON/main.py --data_name cub200 --epoch 20

Citation

If any parts of our paper and code help your research, please consider citing us and giving a star to our repository.

@InProceedings{He_2024_CVPR,
    author    = {He, Yuhang and Chen, YingJie and Jin, Yuhan and Dong, Songlin and Wei, Xing and Gong, Yihong},
    title     = {DYSON: Dynamic Feature Space Self-Organization for Online Task-Free Class Incremental Learning},
    booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
    month     = {June},
    year      = {2024},
    pages     = {}
}

Contact

If you have any questions or concerns, feel free to open issues or directly contact me through the ways on my GitHub homepage provide below paper's title.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages