Author: ****Arnaud Autef

Contents

<aside> 💡 Today, we review SimCLR, a high-performing self-supervised learning algorithm for image data.

SimCLR leverages contrastive learning to learn useful features from vast amounts of unlabeled images.

The SimCLR features allow a mere a linear classifier to reach upwards of 76.5% top1 and 93.2% top5 accuracy on ImageNet.

</aside>

Graph taken from the SimCLR paper. This presents the "Top-1" accuracy of a linear classifier trained on frozen SimCLR features, on the ImageNet dataset.

Graph taken from the SimCLR paper. This presents the "Top-1" accuracy of a linear classifier trained on frozen SimCLR features, on the ImageNet dataset.

Contrastive Learning in a few words

At a high-level, contrastive learning refers to tasks where

<aside> 💡 From the above, we need a couple more ingredients to get to practical task and algorithms

1 - A smart definition of queries, positive examples and negative examples from a dataset of unlabeled data points, that "makes" sense and will yield good representations. 2 - A loss function that favors model satisfying the similarity constraints (1)

→ Let's see what those are for SimCLR!

</aside>

SimCLR through the lens of contrastive learning

Queries, positive and negative examples for SimCLR

SimCLR is an instance of Instance-level discrimination:

  1. Start from a raw dataset of unlabeled data points $x$ (images in the case of SimCLR).
  2. Transform each data point twice $x$ with a stochastic function $\mathcal{T}$, to get transformed points $\tilde{x}_1,~\tilde{x}_2$
  3. Each transformed data point $\tilde{x}_1$ is a query, and