Giter VIP home page Giter VIP logo

dyson's Introduction

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 cifar100,step=1 cifar100,step=5 cifar100,step=Gaussian
CoPE ResNet50 1k - 48.9 - - 21.6 -
CN-DPM ResNet50 1k - 45.2 - - 20.1 -
GMED ResNet50 5k - 47.7 - - 19.6 -
FCA ResNet50 0 77.5 78.7 76.1 53.3 48.7 53.4
Ensemble ResNet50 1k 78.3 79.0 50.1 54.1 55.3 39.0
DSDM ResNet50 1k 79.4 79.6 78.7 54.9 55.3 55.5
DYSON(ours) ResNet50 0 79.5 80.7 79.1 58.9 59.2 58.6
L2P ViT-S/8 1k 46.8 61.4 57.5 8.4 27.3 48.7
DSDM ViT-S/8 1k 85.5 85.6 84.9 61.1 60.8 64.1
DYSON(ours) ViT-S/8 0 92.6 93.5 93.8 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 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.

dyson's People

Contributors

iscdx2 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.