facebookresearch/swav
A PyTorch implementation of SwAV, a self-supervised learning method for pre-training convolutional neural networks on visual data without annotations.

SwAV learns visual representations by simultaneously clustering data and enforcing consistency between cluster assignments produced for different augmentations of the same image. The method uses a swapped prediction mechanism where it predicts the cluster assignment of one view from the representation of another. It provides pre-trained ResNet-50 models and can be trained with both large and small batches, scaling to unlimited amounts of unlabeled data.