Continual Learning

Introduction to Continual Learning / LifeLong Learning / Incremental Learning in image classification, object detection.


Datasets

CIFAR-10/CIFAR-100

CIFAR-10

  • 50000 training images
  • 10000 test images
  • 10 classes of 32x32 color images

CIFAR-100

  • 500 training images per class
  • 100 test images per class
  • 100 classes of 32x32 color images

CORe50

CORe50, specifically designed for Continual Object Recognition, is a collection of 50 domestic objects belonging to 10 categories: plug adapters, mobile phones, scissors, light bulbs, cans, glasses, balls, markers, cups and remote controls. Classification can be performed at object level (50 classes) or at category level (10 classes).


SAILenv

Paper: Evaluating Continual Learning Algorithms by Generating 3D Virtual Environments

from sailenv.agent import Agent

agent = Agent(width=256, height=192, host="192.168.1.3", port=8085)
agent.register()
agent.change_scene(agent.scenes[2])

while True:
    frame_views = agent.get_frame()
	...

agent.delete()

Continual Learning

Blog: 李宏毅 lifelong learning
Blog: Catastrophic Forgetting in Neural Networks Explained

Colab: An example of catastrophic forgetting in PyTorch
The effect of AR1 (CwR+Syn) is displayed in the figure below, based on the CORe50 dataset.


LWF (Learning Without Forgetting)

Paper: Learning without Forgetting (LWF)


EWC (Elastic Weights Consolidation)

Paper: Overcoming catastrophic forgetting in neural networks
Paper: Elastic Weight Consolidation (EWC): Nuts and Bolts
Code: https://github.com/ariseff/overcoming-catastrophic


CWR (Copy Weights with Re-init), CWR+

Paper: Continuous Learning in Single-Incremental-Task Scenarios


GDM (Growing Dual Memory)

Paper: Lifelong Learning of Spatiotemporal Representations with Dual-Memory Recurrent Self-Organization

Code: https://github.com/giparisi/GDM
Toolbox: GWR Toolbox


AR1

Paper: Latent Replay for Real-Time Continual Learning

Code: AR1* with Latent Replay


CAT

Paper: Continual Learning of a Mixed Sequence of Similar and Dissimilar Tasks
Code: https://github.com/ZixuanKe/CAT


GDM for Lifelong 3D Object Recognition

Paper: Lifelong 3D Object Recognition and Grasp Synthesis Using Dual Memory Recurrent Self-Organization Networks


Class-Incremtnatl Learning with Generative Classifier

Paper: Class-Incremental Learning with Generative Classifiers
Code: https://github.com/GMvandeVen/class-incremental-learning
Kaggle: https://kaggle.com/rkuo2000/class-incremental-learning


RMN (Revelance Mapping Network)

paper: Understanding Catastrophic Forgetting and Remembering in Continual Learning with Optimal Relevance Mapping
Code: https://gitlab.com/prakhark2/relevance-mapping-networks


PyContinual

PyContinual (An Easy and Extendible Framework for Continual Learning)

Paper:

Features:

  • Datasets: It currently supports Language Datasets (Document/Sentence/Aspect Sentiment Classification, Natural Language Inference, Topic Classification) and Image Datasets (CelebA, CIFAR10, CIFAR100, FashionMNIST, F-EMNIST, MNIST, VLCS)
  • Scenarios: It currently supports Task Incremental Learning and Domain Incremental Learning
  • Training Modes: It currently supports single-GPU. You can also change it to multi-node distributed training and the mixed precision training.

LwF-ECG

Paper: LwF-ECG: Learning-without-forgetting approach for electrocardiogram heartbeat classification based on memory with task selector


MAML (Model-Agnostic Meta-Learning)

Blog: MAML模型介绍及算法详解
Paper: Model-Agnostic Meta-Learning for Fast Adaption of Deep Networks
Code: https://github.com/cbfinn/maml

Blog: MAML复现全部细节和经验教训(Pytorch)
Code: https://github.com/miguealanmath/MAML-Pytorch


Lifelong Object Detection

Paper: Lifelong Object Detection


RECALL

Paper: RECALL: Replay-based Continual Learning in Semantic Segmentation


Contrast R-CNN

Paper: Contrast R-CNN for Continual Learning in Object Detection



This site was last updated December 22, 2022.