This is an official Pytorch based implementation of Dynamic Channel Selection in Self-Supervised Learning accepted in IMVIP 2022. Code from channel gating is derived from DGNet while we train the self-supervised approach based on Solo-learn library. We use SimSiam as our self-supervised objective.
The main requirements of this work are:
- Python 3.8
- PyTorch == 1.10.0
- Torchvision == 0.11.1
- CUDA 10.2
We recommand using conda env to setup the experimental environments.
pip install -r requirements.txt
# Clone repo
git clone https://github.com/KrishnaTarun/SSL_DGC.git
cd ./SSL_DGC# ImageNet-100
bash bash_files/pretrain/imagent100/simsiam.sh
# CIFAR-100
bash bash_files/pretrain/cifar100/simsiam.sh
# ImageNet-100
bash bash_files/knn/imagent100/knn.sh@inproceedings{Krishna2022DynamicCS,
title={Dynamic Channel Selection in Self-Supervised Learning},
author={Tarun Krishna and Ayush Rai and Yasser Abdelaziz Dahou Djilali and Alan F. Smeaton and Kevin McGuinness and Noel E. O'Connor},
year={2022}
}