SemPPL: Predicting pseudo-labels for better contrastive representations

Matko Bošnjak, Pierre H. Richemond, Nenad Tomasev, Florian Strub, Jacob C. Walker +5 more
1/12/2023
cs.CVcs.AIcs.LG

No official code found. Best implementation: google-deepmind/semppl (10 stars, Apache-2.0, last commit 2023-04-18).

Abstract

Learning from large amounts of unsupervised data and a small amount of supervision is an important open problem in computer vision. We propose a new semi-supervised learning method, Semantic Positives via Pseudo-Labels (SemPPL), that combines labelled and unlabelled data to learn informative representations. Our method extends self-supervised contrastive learning -- where representations are shaped by distinguishing whether two samples represent the same underlying datum (positives) or not (negatives) -- with a novel approach to selecting positives. To enrich the set of positives, we leverage the few existing ground-truth labels to predict the missing ones through a $k$-nearest neighbours classifier by using the learned embeddings of the labelled data. We thus extend the set of positives with datapoints having the same pseudo-label and call these semantic positives. We jointly learn the representation and predict bootstrapped pseudo-labels. This creates a reinforcing cycle. Strong initial representations enable better pseudo-label predictions which then improve the selection of semantic positives and lead to even better representations. SemPPL outperforms competing semi-supervised methods setting new state-of-the-art performance of $68.5\%$ and $76\%$ top-$1$ accuracy when using a ResNet-$50$ and training on $1\%$ and $10\%$ of labels on ImageNet, respectively. Furthermore, when using selective kernels, SemPPL significantly outperforms previous state-of-the-art achieving $72.3\%$ and $78.3\%$ top-$1$ accuracy on ImageNet with $1\%$ and $10\%$ labels, respectively, which improves absolute $+7.8\%$ and $+6.2\%$ over previous work. SemPPL also exhibits state-of-the-art performance over larger ResNet models as well as strong robustness, out-of-distribution and transfer performance. We release the checkpoints and the evaluation code at https://github.com/deepmind/semppl .

View on arXivView PDF

Code Implementations(1)

Apache-2.0
100PythonApr 18, 20233 years agoApache-2.0

Similar Papers

Cite this paper

@article{bonjak2023semppl,
  title  = {SemPPL: Predicting pseudo-labels for better contrastive representations},
  author = {Matko Bošnjak and Pierre H. Richemond and Nenad Tomasev and Florian Strub and Jacob C. Walker and Felix Hill and Lars Holger Buesing and Razvan Pascanu and Charles Blundell and Jovana Mitrovic},
  year   = {2023},
  eprint = {2301.05158},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2301.05158v2},
  journal = {ICLR 2023 2023}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2301.05158.svg)](https://codeofpaper.com/paper/2301.05158)

Discussion