Environment Preparation:
https://github.com/vturrisi/solo-learn (detailed ducoments)

pip install -r requirements

Datasets:
In addition to IMAGENET-1k needs to go to the official website to download, the rest will be automatically downloaded during training. You only need to specify the config file.

Training:
base in  ['byol','nnbyol','mocov2plus','mocov3','dino']
method = ['none','risp','so']
regular_weight in ['1e-4','1e-6'] (refer to our recipe of adding OR)
cmd = 'python3 -u main_pretrain.py  --config-path scripts/pretrain/cifar --config-name {}.yaml ++regular_method={} ++regular_weight={}'.format(base,method,weight)
cmd = 'python3 -u main_pretrain.py  --config-path scripts/pretrain/imagenet --config-name {}.yaml ++regular_method={} ++regular_weight={}'.format(base,method,weight)
At the same time of pre-training, there are linear classifiers that are trained separately.


Transfer Learning:
python3 -u main_linear.py  --config-path scripts/linear/cifar100 --config-name byol.yaml
Specify the pre-training weight and the required data set in config.

Object detection:
Refer to the readme in downstream/object_detection