Skip to content

mostafaelaraby/Real-DEEL-Dark-Experience

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9bcae86 · Aug 3, 2021

History

5 Commits
Jul 29, 2021
Aug 3, 2021
Aug 3, 2021
Jul 29, 2021
Jul 29, 2021
Aug 3, 2021
Jul 29, 2021
Jul 29, 2021
Jul 29, 2021
Jul 29, 2021
Aug 3, 2021
Jul 29, 2021

Repository files navigation

cvpr-cl-challenge

entry for CL vision workshop under name Real-Deel https://eval.ai/web/challenges/challenge-page/829/overview

Table of Contents
  1. Parameters
  2. Getting Started with Best Command
  3. Plots of Best Run
  4. Acknowledgements
  5. References

Parameters

Training

  • --learning_rate : float Learning rate of the optimizer
  • --weight_decay : float L2 regularization coefficient.
  • --max_epochs_per_task : int Maximum number of training epochs per task in SL and max number of training steps for RL.
  • --max_epochs_decay_per_task : float decay of max_epochs after each task
  • --model_type : str model name to select from models in the models folder
  • --optimizer : str optimizer name to select an optimizer
  • --scheduler_name: str scheduler name that will work if scheduler flag enabled
  • --batch_size: int. batch size used during training.
  • --sl_nb_tasks: int. number of tasks for supervised learning track.
  • --cl_method_name: str. method name as shown in methods/init.py
  • --seed: int. seed for deterministic runs in pytorch
  • --output_dir: str. output directory for data and wandb logs.

Early stoppping

on validation:

--early_stop: bool

  • --early_stop_patience : int Number of epochs with increasing validation loss after which we stop training.
  • --early_stop_decay_per_task : float decay of early stopping after each task

on smooth dark training loss --early_stop_train: bool = False

  • --early_stop_train_patience: int = 60

Wandb

  • --wandb_logging : bool
  • --wandb_api : str
  • --wandb_entity : str
  • --wandb_project : str
  • --wandb_run_name : str

Flags

  • --debug_mode : bool enable debug mode for a fast dry run
  • --use_scheduler : bool use scheduler

Best SL submission

Best Submission Command

Method = METHODS_MAPPING['der']
hparams = Method.HParams(learning_rate=0.00034,
        max_epochs_per_task=7, max_epochs_decay_per_task=1.0,
        submission=True,
        buffer_size=6000, dark_coefficient=1.2,
        early_stop_train=True, early_stop_train_patience=45,
        bic=True
        )

main.py --cl_method_name=der --learning_rate=0.00034 --max_epochs_per_task=7 --max_epochs_decay_per_task=1.0 --submission=True --buffer_size=6000 --dark_coefficient=1.2 --early_stop_train --early_stop_train_patience=45 --bic

Best Run Plots

Metric Score
Final/Average Online Performance: 0.80
Final/Average Final Performance: 0.86
Final/Runtime (seconds): 482
Final/CL Score: 0.87

Final Performance

Evolution of Final test average

Evolution of Dark Loss during training

Acknowledgements

References

[1]P. Buzzega, M. Boschini, A. Porrello, D. Abati, and S. Calderara, “Dark Experience for General Continual Learning: a Strong, Simple Baseline,” Apr. 2020, Accessed: Jun. 01, 2021. [Online]. Available: https://arxiv.org/abs/2004.07211v2
[2]P. Buzzega, M. Boschini, A. Porrello, and S. Calderara, “Rethinking Experience Replay: a Bag of Tricks for Continual Learning,” arXiv:2010.05595 [cs, stat], Oct. 2020, Accessed: Jul. 01, 2021. [Online]. Available: http://arxiv.org/abs/2010.05595