A Theory of Contrastive Learning with Natural Images
Abstract
Why does contrastive learning with simple images and augmentations yield useful representations for downstream tasks? We address this question by analytically computing the optimal representation in terms of a contrastive loss for a range of basic augmentations and any image dataset with stationary statistics. We show that for certain augmentations the optimum can be attained by a CNN whose first layer filters are sinusoids, followed by a pointwise nonlinearity, global average pooling, and a final linear layer that performs partial whitening. We also show that the optimal weights in such CNNs for more complicated augmentations are still sinusoids. The frequencies of the sinusoids and their weights can be computed using a simple “waterfilling” algorithm given the dataset’s expected power spectrum. Experiments with different image datasets and augmentations show that such CNNs trained with SGD empirically learn sinusoids in their first layer and to perform partial whitening.
Lay Summary
Contrastive learning is a method that is used by modern AI systems to learn useful representations of images based only on the images (without needing labels that describe the images). Usually these representations are learned by running expensive training algorithms to find the best weights of deep neural networks. We showed that in certain cases, we can find the optimal representations using only a pencil and paper by taking advantage of known properties of the statistics of natural images.