This part of the repository contains the code to replicate the Continual learning experiments reported in the paper. This part of the repo is based on the Mammoth library and allows to reproduce the results for SFR, DER, Online-EWC, and SI. For running the experiments with the other baselines check FROMP README and S-SFVI/VCL README.
Commands to replicate the results with Split-MNIST using 40 points per task (i.e., a total of 200 points).
python ./utils/main.py --model=sfr --dataset=seq-mnist --lr=0.0003 --dual_batchsize=1000 \
--batch_size=32 --buffer_size=200 --tau=1. --delta=0.0001 --optimizer=adam --n_epochs=1 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=der --dataset=seq-mnist --lr=0.03 --batch_size=10 \
--minibatch_size=10 --optimizer=sgd --n_epochs=1 --alpha=0.2 --buffer_size=200 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT
python ./utils/main.py --model=ewc_on --dataset=seq-mnist --lr=0.03 --batch_size=10 \
--optimizer=sgd --n_epochs=1 --e_lambda=90 --gamma=1.0 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=si --dataset=seq-mnist --lr=0.1 --batch_size=10 \
--optimizer=sgd --n_epochs=1 --c=1.0 --xi=0.9 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
Commands to replicate the results with Split-MNIST using 200 points per task (i.e., a total of 1000 points).
python ./utils/main.py --model=sfr --dataset=seq-mnist --lr=0.0001 --dual_batchsize=1000 \
--batch_size=32 --buffer_size=1000 --tau=0.5 --delta=1e-05 --optimizer=adam --n_epochs=5 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=der --dataset=seq-mnist --lr=0.03 --batch_size=10 \
--minibatch_size=10 --optimizer=sgd --n_epochs=1 --alpha=0.3 --buffer_size=1000 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=ewc_on --dataset=seq-mnist --lr=0.03 --batch_size=10 \
--optimizer=sgd --n_epochs=1 --e_lambda=90 --gamma=1.0 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=si --dataset=seq-mnist --lr=0.1 --batch_size=10 \
--optimizer=sgd --n_epochs=1 --c=1.0 --xi=0.9 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
Commands to replicate the results with Split-FashionMNIST using 200 points per task (i.e., a total of 1000 points).
python ./utils/main.py --model=sfr --dataset=seq-fmnist --lr=0.0003 --dual_batchsize=1000 \
--batch_size=32 --buffer_size=1000 --tau=1.0 --delta=0.0001 --optimizer=adam --n_epochs=5 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=der --dataset=seq-fmnist --lr=0.03 --batch_size=10 \
--minibatch_size=10 --optimizer=sgd --n_epochs=5 --alpha=0.3 --buffer_size=1000 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=ewc_on --dataset=seq-fmnist --lr=0.03 --batch_size=10 \
--optimizer=sgd --n_epochs=1 --e_lambda=90 --gamma=1.0 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=si --dataset=seq-fmnist --lr=0.1 --batch_size=10 \
--optimizer=sgd --n_epochs=1 --c=1.0 --xi=0.9 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
Commands to replicate the results with Permuted-MNIST using 200 points per task (i.e., a total of 2000 points).
python ./utils/main.py --model=sfr --dataset=perm-mnist --lr=0.0003 --dual_batchsize=1000 \
--batch_size=64 --buffer_size=2000 --tau=1.0 --delta=0.0001 --optimizer=adam --n_epochs=10 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=der --dataset=perm-mnist --lr=0.2 --batch_size=128 \
--minibatch_size=128 --optimizer=sgd --n_epochs=1 --alpha=0.3 --buffer_size=2000 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=ewc_on --dataset=perm-mnist --lr=0.1 --batch_size=128 \
--optimizer=sgd --n_epochs=10 --e_lambda=0.7 --gamma=1.0 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>
python ./utils/main.py --model=si --dataset=perm-mnist --lr=0.1 --batch_size=128 \
--optimizer=sgd --n_epochs=10 --c=0.5 --xi=1.0 \
--seed=<SEED> --wandb_entity=<WANDB_ENTITY> --wandb_project=<WANDB_PROJECT>