Understanding Self-Supervised Learning via Gaussian Mixture Models

Parikshit Bansal, Ali Kavis, Sujay Sanghavi
11/5/2024
cs.LG

No confident code implementation found for this paper. 2 possible matches can be shown below.

Abstract

Self-supervised learning attempts to learn representations from un-labeled data; it does so via a loss function that encourages the embedding of a point to be close to that of its augmentations. This simple idea performs remarkably well, yet it is not precisely theoretically understood why this is the case. In this paper we analyze self-supervised learning in a natural context: dimensionality reduction in Gaussian Mixture Models. Crucially, we define an augmentation of a data point as being another independent draw from the same underlying mixture component. We show that vanilla contrastive learning (specifically, the InfoNCE loss) is able to find the optimal lower-dimensional subspace even when the Gaussians are not isotropic -- something that vanilla spectral techniques cannot do. We also prove a similar result for "non-contrastive" self-supervised learning (i.e., SimSiam loss). We further extend our analyses to multi-modal contrastive learning algorithms (e.g., CLIP). In this setting we show that contrastive learning learns the subset of fisher-optimal subspace, effectively filtering out all the noise from the learnt representations. Finally, we corroborate our theoretical finding through synthetic data experiments.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 2 weaker matches are hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{bansal2024understanding,
  title  = {Understanding Self-Supervised Learning via Gaussian Mixture Models},
  author = {Parikshit Bansal and Ali Kavis and Sujay Sanghavi},
  year   = {2024},
  eprint = {2411.03517},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2411.03517v2}
}

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/2411.03517.svg)](https://codeofpaper.com/paper/2411.03517)

Discussion