# Supervised Contrastive Learning
**Authors**: Prannay Khosla, Piotr Teterwak, Chen Wang, Aaron Sarna, Yonglong Tian, Phillip Isola, Aaron Maschinot, Ce Liu, Dilip Krishnan
## Supervised Contrastive Learning
Prannay Khosla ∗ Google Research
Piotr Teterwak ∗† Boston University
Chen Wang † Snap Inc.
Aaron Sarna ‡ Google Research
Yonglong Tian † MIT
Phillip Isola † MIT
Aaron Maschinot Google Research
Ce Liu Google Research
Dilip Krishnan Google Research
## Abstract
Contrastive learning applied to self-supervised representation learning has seen a resurgence in recent years, leading to state of the art performance in the unsupervised training of deep image models. Modern batch contrastive approaches subsume or significantly outperform traditional contrastive losses such as triplet, max-margin and the N-pairs loss. In this work, we extend the self-supervised batch contrastive approach to the fully-supervised setting, allowing us to effectively leverage label information. Clusters of points belonging to the same class are pulled together in embedding space, while simultaneously pushing apart clusters of samples from different classes. We analyze two possible versions of the supervised contrastive (SupCon) loss, identifying the best-performing formulation of the loss. On ResNet-200, we achieve top-1 accuracy of 81 . 4% on the ImageNet dataset, which is 0 . 8% above the best number reported for this architecture. We show consistent outperformance over cross-entropy on other datasets and two ResNet variants. The loss shows benefits for robustness to natural corruptions, and is more stable to hyperparameter settings such as optimizers and data augmentations. Our loss function is simple to implement and reference TensorFlow code is released at https://t.ly/supcon 1 .
## 1 Introduction
The cross-entropy loss is the most widely used loss function for supervised learning of deep classification models. A number of works have explored shortcomings of this loss, such as lack of robustness to noisy labels [64, 46] and the possibility of poor margins [10, 31], leading to reduced generalization performance. However, in practice, most proposed alternatives have not worked better for large-scale datasets, such as ImageNet [7], as evidenced by the continued use of cross-entropy to achieve state of the art results [5, 6, 56, 25].
∗ Equal contribution.
† Work done while at Google Research.
‡ Corresponding author: sarna@google.com
Figure 1: Our SupCon loss consistently outperforms cross-entropy with standard data augmentations. We show top-1 accuracy for the ImageNet dataset, on ResNet-50, ResNet-101 and ResNet200, and compare against AutoAugment [5], RandAugment [6] and CutMix [60].
<details>
<summary>Image 1 Details</summary>

### Visual Description
## Line Chart: ImageNet Accuracy vs Model size
### Overview
The chart compares the top-1 accuracy of different neural network architectures and augmentation methods on ImageNet, plotted against model size (number of parameters in millions). Four lines represent distinct methods: Supervised Contrastive (ours), CutMix, AutoAugment, and RandAugment. Data points correspond to specific ResNet/ResNeXt variants.
### Components/Axes
- **X-axis**: Number of Parameters (Millions) – ranges from 20 to 90 million, with markers at 20, 30, 40, 50, 60, 70, 80, 90.
- **Y-axis**: Top-1 Accuracy – ranges from 78.0 to 82.0, with increments of 0.5.
- **Legend**:
- Purple: Supervised Contrastive (ours)
- Red: CutMix
- Green: AutoAugment
- Orange: RandAugment
- **Data Points**: Labeled with ResNet/ResNeXt model names (e.g., ResNet-50, ResNeXt-101).
### Detailed Analysis
1. **Supervised Contrastive (Purple Line)**:
- Starts at **ResNet-50**: ~78.5 accuracy (30M parameters).
- Increases to **ResNeXt-101**: ~79.5 accuracy (40M parameters).
- Reaches **ResNet-101**: ~80.5 accuracy (50M parameters).
- Ends at **ResNet-200**: ~81.5 accuracy (80M parameters).
- **Trend**: Steep upward slope, indicating strong correlation between parameter count and accuracy.
2. **CutMix (Red Line)**:
- Begins at **ResNet-50**: ~78.5 accuracy (30M parameters).
- Rises to **ResNeXt-101**: ~79.5 accuracy (40M parameters).
- **Trend**: Gradual upward trajectory, less steep than Supervised Contrastive.
3. **AutoAugment (Green Line)**:
- Starts at **ResNet-50**: ~78.5 accuracy (30M parameters).
- Progresses to **ResNet-101**: ~80.0 accuracy (50M parameters).
- **Trend**: Moderate upward slope, plateauing slightly at higher parameter counts.
4. **RandAugment (Orange Line)**:
- Begins at **ResNet-50**: ~78.0 accuracy (30M parameters).
- Ends at **ResNet-200**: ~80.5 accuracy (80M parameters).
- **Trend**: Consistent upward progression, outperforming CutMix and AutoAugment at larger scales.
### Key Observations
- **Model Size vs. Accuracy**: All methods show improved accuracy with increased parameters, but Supervised Contrastive achieves the highest gains.
- **Method Effectiveness**:
- Supervised Contrastive outperforms others across all model sizes.
- RandAugment closes the gap at larger scales (80M parameters: ~80.5 accuracy).
- CutMix and AutoAugment lag behind, with CutMix showing the least improvement.
- **Data Point Alignment**: All ResNet/ResNeXt variants align precisely with their respective method’s line, confirming color-legend consistency.
### Interpretation
The chart demonstrates that **larger models (higher parameter counts) achieve better ImageNet accuracy**, with **Supervised Contrastive** being the most effective augmentation method. The linear trends suggest diminishing returns at extreme parameter scales (e.g., ResNet-200 at 80M parameters). Notably, RandAugment’s performance improves significantly at larger scales, indicating its potential for high-capacity models. CutMix’s flat trajectory implies limited scalability compared to other methods. This analysis underscores the trade-off between model complexity and augmentation strategy in achieving state-of-the-art results.
</details>
1 PyTorch implementation: https://github.com/HobbitLong/SupContrast
Figure 2: Supervised vs. self-supervised contrastive losses: The self-supervised contrastive loss (left, Eq. 1) contrasts a single positive for each anchor (i.e., an augmented version of the same image) against a set of negatives consisting of the entire remainder of the batch. The supervised contrastive loss (right) considered in this paper (Eq. 2), however, contrasts the set of all samples from the same class as positives against the negatives from the remainder of the batch. As demonstrated by the photo of the black and white puppy, taking class label information into account results in an embedding space where elements of the same class are more closely aligned than in the self-supervised case.
<details>
<summary>Image 2 Details</summary>

### Visual Description
## Diagram: Contrastive Learning Paradigms Comparison
### Overview
The image compares two contrastive learning approaches: **Self-Supervised Contrastive** (left) and **Supervised Contrastive** (right). Both diagrams use visual examples (animals) to illustrate how anchor images are paired with positive and negative samples during training.
### Components/Axes
- **Left Diagram (Self-Supervised Contrastive)**:
- **Anchor**: Pomeranian dog (central position).
- **Positives**: Two Pomeranian dogs (connected via orange lines).
- **Negatives**: Elephant, tabby cat, and cat with tongue out (connected via red lines).
- **Key Element**: No explicit highlighting of positives/negatives.
- **Right Diagram (Supervised Contrastive)**:
- **Anchor**: Same Pomeranian dog (central position).
- **Positives**: Pomeranian dog and a black-and-white dog (highlighted with a green box).
- **Negatives**: Elephant, tabby cat, and cat with tongue out (connected via red lines).
- **Key Element**: Black-and-white dog is explicitly marked as a positive example.
### Detailed Analysis
- **Color Coding**:
- **Orange lines**: Represent positive pairs (similar examples).
- **Red lines**: Represent negative pairs (dissimilar examples).
- **Black line**: Connects the anchor to the central circle.
- **Spatial Grounding**:
- Anchor is centrally positioned in both diagrams.
- Positives are grouped to the left of the anchor.
- Negatives are grouped to the right of the anchor.
- In the supervised diagram, the black-and-white dog is enclosed in a green box, emphasizing its role as a labeled positive example.
### Key Observations
1. **Self-Supervised Contrastive**: Relies on implicit similarity (e.g., two Pomeranians as positives) without explicit labeling.
2. **Supervised Contrastive**: Uses explicit labels (green box) to guide the model toward correct positive pairs.
3. **Negatives**: Both paradigms use the same set of negative examples (elephant, tabby cat, cat with tongue out).
### Interpretation
- The diagram highlights the core difference between the two approaches: **Supervised Contrastive Learning** incorporates labeled data to refine positive-negative pair selection, while **Self-Supervised Contrastive Learning** relies on unsupervised similarity metrics.
- The green box in the supervised diagram underscores the importance of labeled data in improving model accuracy by explicitly defining valid positive pairs.
- Both paradigms share the same negative examples, suggesting that contrastive learning focuses on distinguishing the anchor from irrelevant samples regardless of supervision.
## No numerical data or trends are present in this conceptual diagram.
</details>
In recent years, a resurgence of work in contrastive learning has led to major advances in selfsupervised representation learning [55, 18, 38, 48, 22, 3, 15]. The common idea in these works is the following: pull together an anchor and a 'positive' sample in embedding space, and push apart the anchor from many 'negative' samples. Since no labels are available, a positive pair often consists of data augmentations of the sample, and negative pairs are formed by the anchor and randomly chosen samples from the minibatch. This is depicted in Fig. 2 (left). In [38, 48], connections are made of the contrastive loss to maximization of mutual information between different views of the data.
In this work, we propose a loss for supervised learning that builds on the contrastive self-supervised literature by leveraging label information. Normalized embeddings from the same class are pulled closer together than embeddings from different classes . Our technical novelty in this work is to consider many positives per anchor in addition to many negatives (as opposed to self-supervised contrastive learning which uses only a single positive). These positives are drawn from samples of the same class as the anchor, rather than being data augmentations of the anchor, as done in self-supervised learning. While this is a simple extension to the self-supervised setup, it is nonobvious how to setup the loss function correctly, and we analyze two alternatives. Fig. 2 (right) and Fig. 1 (Supplementary) provide a visual explanation of our proposed loss. Our loss can be seen as a generalization of both the triplet [53] and N-pair losses [45]; the former uses only one positive and one negative sample per anchor, and the latter uses one positive and many negatives. The use of many positives and many negatives for each anchor allows us to achieve state of the art performance without the need for hard negative mining, which can be difficult to tune properly. To the best of our knowledge, this is the first contrastive loss to consistently perform better than cross-entropy on large-scale classification problems. Furthermore, it provides a unifying loss function that can be used for either self-supervised or supervised learning.
Our resulting loss, SupCon, is simple to implement and stable to train, as our empirical results show. It achieves excellent top-1 accuracy on the ImageNet dataset on the ResNet-50 and ResNet-200 architectures [17]. On ResNet-200 [5], we achieve a top-1 accuracy of 81 . 4% , which is a 0 . 8% improvement over the state of the art [30] cross-entropy loss on the same architecture (see Fig. 1). The gain in top-1 accuracy is accompanied by increased robustness as measured on the ImageNet-C dataset [19]. Our main contributions are summarized below:
1. We propose a novel extension to the contrastive loss function that allows for multiple positives per anchor, thus adapting contrastive learning to the fully supervised setting. Analytically and empirically, we show that a na¨ ıve extension performs much worse than our proposed version.
2. We show that our loss provides consistent boosts in top-1 accuracy for a number of datasets. It is also more robust to natural corruptions.
3. We demonstrate analytically that the gradient of our loss function encourages learning from hard positives and hard negatives.
4. We show empirically that our loss is less sensitive than cross-entropy to a range of hyperparameters.
## 2 Related Work
Our work draws on existing literature in self-supervised representation learning, metric learning and supervised learning. Here we focus on the most relevant papers. The cross-entropy loss was introduced as a powerful loss function to train deep networks [40, 1, 29]. The key idea is simple and intuitive: each class is assigned a target (usually 1-hot) vector. However, it is unclear why these target labels should be the optimal ones and some work has tried to identify better target label vectors, e.g. [57]. A number of papers have studied other drawbacks of the cross-entropy loss, such as sensitivity to noisy labels [64, 46], presence of adversarial examples [10, 36], and poor margins [2]. Alternative losses have been proposed, but the most effective ideas in practice have been approaches that change the reference label distribution, such as label smoothing [47, 35], data augmentations such as Mixup [61] and CutMix [60], and knowledge distillation [21].
Powerful self-supervised representation learning approaches based on deep learning models have recently been developed in the natural language domain [8, 58, 33]. In the image domain, pixelpredictive approaches have also been used to learn embeddings [9, 62, 63, 37]. These methods try to predict missing parts of the input signal. However, a more effective approach has been to replace a dense per-pixel predictive loss, with a loss in lower-dimensional representation space. The state of the art family of models for self-supervised representation learning using this paradigm are collected under the umbrella of contrastive learning [55, 18, 22, 48, 43, 3, 51]. In these works, the losses are inspired by noise contrastive estimation [13, 34] or N-pair losses [45]. Typically, the loss is applied at the last layer of a deep network. At test time, the embeddings from a previous layer are utilized for downstream transfer tasks, fine tuning or direct retrieval tasks. [15] introduces the approximation of only back-propagating through part of the loss, and also the approximation of using stale representations in the form of a memory bank.
Closely related to contrastive learning is the family of losses based on metric distance learning or triplets [4, 53, 42]. These losses have been used to learn powerful representations, often in supervised settings, where labels are used to guide the choice of positive and negative pairs. The key distinction between triplet losses and contrastive losses is the number of positive and negative pairs per data point; triplet losses use exactly one positive and one negative pair per anchor. In the supervised metric learning setting, the positive pair is chosen from the same class and the negative pair is chosen from other classes, nearly always requiring hard-negative mining for good performance [42]. Self-supervised contrastive losses similarly use just one positive pair for each anchor sample, selected using either co-occurrence [18, 22, 48] or data augmentation [3]. The major difference is that many negative pairs are used for each anchor. These are usually chosen uniformly at random using some form of weak knowledge, such as patches from other images, or frames from other randomly chosen videos, relying on the assumption that this approach yields a very low probability of false negatives.
Resembling our supervised contrastive approach is the soft-nearest neighbors loss introduced in [41] and used in [54]. Like [54], we improve upon [41] by normalizing the embeddings and replacing euclidean distance with inner products. We further improve on [54] by the increased use of data augmentation, a disposable contrastive head and two-stage training (contrastive followed by crossentropy), and crucially, changing the form of the loss function to significantly improve results (see Section 3). [12] also uses a closely related loss formulation to ours to entangle representations at intermediate layers by maximizing the loss. Most similar to our method is the Compact Clustering via Label Propagation (CCLP) regularizer in Kamnitsas et. al. [24]. While CCLP focuses mostly on the semi-supervised case, in the fully supervised case the regularizer reduces to almost exactly our loss formulation. Important practical differences include our normalization of the contrastive embedding onto the unit sphere, tuning of a temperature parameter in the contrastive objective, and stronger augmentation. Additionally, Kamnitsas et. al. use the contrastive embedding as an input to a classification head, which is trained jointly with the CCLP regularizer, while SupCon employs a
two stage training and discards the contrastive head. Lastly, the scale of experiments in Kamnitsas et. al. is much smaller than in this work. Merging the findings of our paper and CCLP is a promising direction for semi-supervised learning research.
## 3 Method
Our method is structurally similar to that used in [48, 3] for self-supervised contrastive learning, with modifications for supervised classification. Given an input batch of data, we first apply data augmentation twice to obtain two copies of the batch. Both copies are forward propagated through the encoder network to obtain a 2048-dimensional normalized embedding. During training, this representation is further propagated through a projection network that is discarded at inference time. The supervised contrastive loss is computed on the outputs of the projection network. To use the trained model for classification, we train a linear classifier on top of the frozen representations using a cross-entropy loss. Fig. 1 in the Supplementary material provides a visual explanation.
## 3.1 Representation Learning Framework
The main components of our framework are:
- Data Augmentation module, Aug ( · ) . For each input sample, x , we generate two random augmentations, ˜ x = Aug ( x ) , each of which represents a different view of the data and contains some subset of the information in the original sample. Sec. 4 gives details of the augmentations.
- Encoder Network , Enc ( · ) , which maps x to a representation vector, r = Enc ( x ) ∈ R D E . Both augmented samples are separately input to the same encoder, resulting in a pair of representation vectors. r is normalized to the unit hypersphere in R D E ( D E = 2048 in all our experiments in the paper). Consistent with the findings of [42, 52], our analysis and experiments show that this normalization improves top-1 accuracy.
- Projection Network , Proj ( · ) , which maps r to a vector z = Proj ( r ) ∈ R D P . We instantiate Proj ( · ) as either a multi-layer perceptron [14] with a single hidden layer of size 2048 and output vector of size D P = 128 or just a single linear layer of size D P = 128 ; we leave to future work the investigation of optimal Proj ( · ) architectures. We again normalize the output of this network to lie on the unit hypersphere, which enables using an inner product to measure distances in the projection space. As in self-supervised contrastive learning [48, 3], we discard Proj ( · ) at the end of contrastive training. As a result, our inference-time models contain exactly the same number of parameters as a cross-entropy model using the same encoder, Enc ( · ) .
## 3.2 Contrastive Loss Functions
Given this framework, we now look at the family of contrastive losses, starting from the selfsupervised domain and analyzing the options for adapting it to the supervised domain, showing that one formulation is superior. For a set of N randomly sampled sample/label pairs, { x k , y k } k =1 ...N , the corresponding batch used for training consists of 2 N pairs, { ˜ x , ˜ y } =1 ... 2 N , where ˜ x 2 k and ˜ x 2 k -1 are two random augmentations (a.k.a., 'views') of x k ( k = 1 ...N ) and ˜ y 2 k -1 = ˜ y 2 k = y k . For the remainder of this paper, we will refer to a set of N samples as a 'batch' and the set of 2 N augmented samples as a 'multiviewed batch'.
## 3.2.1 Self-Supervised Contrastive Loss
Within a multiviewed batch, let i ∈ I ≡ { 1 ... 2 N } be the index of an arbitrary augmented sample, and let j ( i ) be the index of the other augmented sample originating from the same source sample. In self-supervised contrastive learning (e.g., [3, 48, 18, 22]), the loss takes the following form.
$$\begin{aligned}
L ^ { \prime } ( z _ { i } ) &= \sum _ { t \in T } L _ { i } ( z _ { t } ) = - \sum _ { t \in T } \log \frac { exp ( z _ { i } ) } { a e A ( t ) } \\
&= \sum _ { t \in T } \log \frac { exp ( z _ { i } ) } { a e A ( t ) } = \sum _ { t \in T } \log \frac { exp ( z _ { i } ) } { a e A ( t ) }
\end{aligned}$$
Here, z = Proj ( Enc ( ˜ x )) ∈ R D P , the · symbol denotes the inner (dot) product, τ ∈ R + is a scalar temperature parameter, and A ( i ) ≡ I \ { i } . The index i is called the anchor , index j ( i ) is called the positive , and the other 2( N -1) indices ( { k ∈ A ( i ) \ { j ( i ) } ) are called the negatives .
Note that for each anchor i , there is 1 positive pair and 2 N -2 negative pairs. The denominator has a total of 2 N -1 terms (the positive and negatives).
## 3.2.2 Supervised Contrastive Losses
For supervised learning, the contrastive loss in Eq. 1 is incapable of handling the case where, due to the presence of labels, more than one sample is known to belong to the same class. Generalization to an arbitrary numbers of positives, though, leads to a choice between multiple possible functions. Eqs. 2 and 3 present the two most straightforward ways to generalize Eq. 1 to incorporate supervision.
$$\sum _ { a \in A ( i ) } \sum _ { z \in z _ { p } ( r ) } \sum _ { i \in I } \sum _ { p \in P ( i ) } L _ { out } = \sum _ { i \in I } L _ { out, i } = \sum _ { i \in I } [ P ( i ) ] ^ { - 1 } L _ { p }$$
$$\sum _ { i \in I } \sum _ { j \in J } L ^ { s_{ij} } ( z ; x ; y ) = \sum _ { i \in I } \sum _ { j \in J } L ^ { s_{ij} } ( z ; x ; y )$$
Here, P ( i ) ≡ { p ∈ A ( i ) : ˜ y p = ˜ y i } is the set of indices of all positives in the multiviewed batch distinct from i , and | P ( i ) | is its cardinality. In Eq. 2, the summation over positives is located outside of the log ( L sup out ) while in Eq. 3, the summation is located inside of the log ( L sup in ). Both losses have the following desirable properties:
- Generalization to an arbitrary number of positives. The major structural change of Eqs. 2 and 3 over Eq. 1 is that now, for any anchor, all positives in a multiviewed batch (i.e., the augmentation-based sample as well as any of the remaining samples with the same label) contribute to the numerator. For randomly-generated batches whose size is large with respect to the number of classes, multiple additional terms will be present (on average, N/C , where C is the number of classes). The supervised losses encourage the encoder to give closely aligned representations to all entries from the same class, resulting in a more robust clustering of the representation space than that generated from Eq. 1, as is supported by our experiments in Sec. 4.
- Contrastive power increases with more negatives. Eqs. 2 and 3 both preserve the summation over negatives in the contrastive denominator of Eq. 1. This form is largely motivated by noise contrastive estimation and N-pair losses [13, 45], wherein the ability to discriminate between signal and noise (negatives) is improved by adding more examples of negatives. This property is important for representation learning via self-supervised contrastive learning, with many papers showing increased performance with increasing number of negatives [18, 15, 48, 3].
- Intrinsic ability to perform hard positive/negative mining. When used with normalized representations, the loss in Eq. 1 induces a gradient structure that gives rise to implicit hard positive/negative mining. The gradient contributions from hard positives/negatives (i.e., ones against which continuing to contrast the anchor greatly benefits the encoder) are large while those for easy positives/negatives (i.e., ones against which continuing to contrast the anchor only weakly benefits the encoder) are small. Furthermore, for hard positives, the effect increases (asymptotically) as the number of negatives does. Eqs. 2 and 3 both preserve this useful property and generalize it to all positives. This implicit property allows the contrastive loss to sidestep the need for explicit hard mining, which is a delicate but critical part of many losses, such as triplet loss [42]. We note that this implicit property applies to both supervised and self-supervised contrastive losses, but our derivation is the first to clearly show this property. We provide a full derivation of this property from the loss gradient in the Supplementary material.
The two loss formulations are not, however, equivalent. Because log is a concave function, Jensen's Inequality [23] implies that L sup in ≤ L sup out . One would thus expect L sup out to be the superior supervised loss function (since it upper-bounds L sup in ). This conclusion is also supported analytically. Table 1 compares the ImageNet [7] top-1 classification accuracy using L sup out and L sup in for different batch sizes ( N ) on the ResNet-50 [17] architecture. The L sup out supervised loss achieves significantly higher performance than L sup in
| Loss | Top-1 |
|--------------------|-------------|
| L sup out L sup in | 78.7% 67.4% |
Table 1: ImageNet Top-1 classification accuracy for supervised contrastive losses on ResNet-50 for a batch size of 6144.
. We conjecture that this is due to the gradient of L sup in having
structure less optimal for training than that of L sup out . For L sup out , the positives normalization factor (i.e., 1 / | P ( i ) | ) serves to remove bias present in the positives in a multiviewed batch contributing to the loss. However, though L sup in also contains the same normalization factor, it is located inside of the log . It thus contributes only an additive constant to the overall loss, which does not affect the gradient. Without any normalization effects, the gradients of L sup in are more susceptible to bias in the positives, leading to sub-optimal training.
An analysis of the gradients themselves supports this conclusion. As shown in the Supplementary, the gradient for either L sup out,i or L sup in,i with respect to the embedding z i has the following form.
$$\frac { \partial C _ { i } ^ { s p } } { \partial z _ { i } ^ { - 1 } } = \sum _ { n \in N ( i ) } z _ { n } ( P _ { i } - X _ { i } )$$
Here, N ( i ) ≡ { n ∈ A ( i ) : ˜ y n = ˜ y i } is the set of indices of all negatives in the multiviewed batch, and P ix ≡ exp ( z i · z x /τ ) / ∑ a ∈ A ( i ) exp ( z i · z a /τ ) . The difference between the gradients for the two losses is in X ip .
$$X _ { i p } = \left\{ \begin{array}{ll} \frac{\exp( z _ { i } x _ { p } / r )}{\sum _ { P ( i ) } e ^ { P ( i ) } } , & i \in I _ { 1 } \\ \frac{1}{P ( i ) } , & i \in I _ { out } \end{array} \right.$$
If each z p is set to the (less biased) mean positive representation vector, z , X in ip reduces to X out ip :
$$\sum _ { i = 1 } ^ { n } \frac { z _ { p } - z } { P ( i ) } = \frac { x _ { in } | z _ { p } - z } { P ( i ) } = \frac { \exp ( z _ { i } \cdot z / t ) } { 1 - \exp ( z _ { i } \cdot z / r ) } = ( z _ { i } \cdot z / r ) ^ { \frac { 1 } { P ( i ) } }$$
From the form of ∂ L sup i /∂ z i , we conclude that the stabilization due to using the mean of positives benefits training. Throughout the rest of the paper, we consider only L sup out .
## 3.2.3 Connection to Triplet Loss and N-pairs Loss
Supervised contrastive learning is closely related to the triplet loss [53], one of the widely-used loss functions for supervised learning. In the Supplementary, we show that the triplet loss is a special case of the contrastive loss when one positive and one negative are used. When more than one negative is used, we show that the SupCon loss becomes equivalent to the N-pairs loss [45].
## 4 Experiments
We evaluate our SupCon loss ( L sup out , Eq. 2) by measuring classification accuracy on a number of common image classification benchmarks including CIFAR-10 and CIFAR-100 [27] and ImageNet [7]. We also benchmark our ImageNet models on robustness to common image corruptions [19] and show how performance varies with changes to hyperparameters and reduced data. For the encoder network ( Enc ( · ) ) we experimented with three commonly used encoder architectures: ResNet-50, ResNet-101, and ResNet-200 [17]. The normalized activations of the final pooling layer ( D E = 2048 ) are used as the representation vector. We experimented with four different implementations of the Aug ( · ) data augmentation module: AutoAugment [5]; RandAugment [6]; SimAugment [3], and Stacked RandAugment [49] (see details of our SimAugment and Stacked RandAugment implementations in the Supplementary). AutoAugment outperforms all other data augmentation strategies on ResNet-50 for both SupCon and cross-entropy. Stacked RandAugment performed best for ResNet-200 for both loss functions. We provide more details in the Supplementary.
## 4.1 Classification Accuracy
Table 2 shows that SupCon generalizes better than cross-entropy, margin classifiers (with use of labels) and unsupervised contrastive learning techniques on CIFAR-10, CIFAR-100 and ImageNet datasets. Table 3 shows results for ResNet-50 and ResNet-200 (we use ResNet-v1 [17]) for ImageNet. We achieve a new state of the art accuracy of 78 . 7% on ResNet-50 with AutoAugment (for
Table 2: Top-1 classification accuracy on ResNet-50 [17] for various datasets. We compare cross-entropy training, unsupervised representation learning (SimCLR [3]), max-margin classifiers [32] and SupCon (ours). We re-implemented and tuned hyperparameters for all baseline numbers except margin classifiers where we report published results. Note that the CIFAR-10 and CIFAR-100 results are from our PyTorch implementation and ImageNet from our TensorFlow implementation.
| Dataset | SimCLR[3] | Cross-Entropy | Max-Margin [32] | SupCon |
|-----------|-------------|-----------------|-------------------|----------|
| CIFAR10 | 93.6 | 95 | 92.4 | 96 |
| CIFAR100 | 70.7 | 75.3 | 70.5 | 76.5 |
| ImageNet | 70.2 | 78.2 | 78 | 78.7 |
Table 3: Top-1/Top-5 accuracy results on ImageNet for AutoAugment [5] with ResNet-50 and for Stacked RandAugment [49] with ResNet-101 and ResNet-200. The baseline numbers are taken from the referenced papers, and we also re-implement cross-entropy.
| Loss | Architecture | Augmentation | Top-1 | Top-5 |
|---------------------------|----------------|--------------------------|---------|---------|
| Cross-Entropy (baseline) | ResNet-50 | MixUp [61] | 77.4 | 93.6 |
| Cross-Entropy (baseline) | ResNet-50 | CutMix [60] | 78.6 | 94.1 |
| Cross-Entropy (baseline) | ResNet-50 | AutoAugment [5] | 78.2 | 92.9 |
| Cross-Entropy (our impl.) | ResNet-50 | AutoAugment [30] | 77.6 | 95.3 |
| SupCon | ResNet-50 | AutoAugment [5] | 78.7 | 94.3 |
| Cross-Entropy (baseline) | ResNet-200 | AutoAugment [5] | 80.6 | 95.3 |
| Cross-Entropy (our impl.) | ResNet-200 | Stacked RandAugment [49] | 80.9 | 95.2 |
| SupCon | ResNet-200 | Stacked RandAugment [49] | 81.4 | 95.9 |
| SupCon | ResNet-101 | Stacked RandAugment [49] | 80.2 | 94.7 |
comparison, a number of the other top-performing methods are shown in Fig. 1). Note that we also achieve a slight improvement over CutMix [60], which is considered to be a state of the art data augmentation strategy. Incorporating data augmentation strategies such as CutMix [60] and MixUp [61] into contrastive learning could potentially improve results further.
We also experimented with memory based alternatives [15]. On ImageNet, with a memory size of 8192 (requiring only the storage of 128-dimensional vectors), a batch size of 256, and SGD optimizer, running on 8 Nvidia V100 GPUs, SupCon is able to achieve 79 . 1% top-1 accuracy on ResNet-50. This is in fact slightly better than the 78 . 7% accuracy with 6144 batch size (and no memory); and with significantly reduced compute and memory footprint.
Since SupCon uses 2 views per sample, its batch sizes are effectively twice the cross-entropy equivalent. We therefore also experimented with the cross-entropy ResNet-50 baselines using a batch size of 12,288. These only achieved 77 . 5% top-1 accuracy. We additionally experimented with increasing the number of training epochs for cross-entropy all the way to 1400, but this actually decreased accuracy ( 77 . 0% ).
We tested the N-pairs loss [45] in our framework with a batch size of 6144. N-pairs achieves only 57 . 4% top-1 accuracy on ImageNet. We believe this is due to multiple factors missing from N-pairs loss compared to supervised contrastive: the use of multiple views; lower temperature; and many more positives. We show some results of the impact of the number of positives per anchor in the Supplementary (Sec. 6), and the N-pairs result is inline with them. We also note that the original N-pairs paper [45] has already shown the outperformance of N-pairs loss to triplet loss.
## 4.2 Robustness to Image Corruptions and Reduced Training Data
Deep neural networks lack robustness to out of distribution data or natural corruptions such as noise, blur and JPEG compression. The benchmark ImageNet-C dataset [19] is used to measure trained model performance on such corruptions. In Fig. 3(left), we compare the supervised contrastive models to cross-entropy using the Mean Corruption Error (mCE) and Relative Mean Corruption Error metrics [19]. Both metrics measure average degradation in performance compared to ImageNet test set, averaged over all possible corruptions and severity levels. Relative mCE is a better metric when we compare models with different Top-1 accuracy, while mCE is a better measure of absolute robustness to corruptions. The SupCon models have lower mCE values across different corruptions,
| Loss | Architecture | rel. mCE | mCE |
|------------------------------------|--------------------------------------------|-------------------|-----------------|
| Cross-Entropy (baselines) | AlexNet [28] VGG-19+BN [44] ResNet-18 [17] | 100.0 122.9 103.9 | 100.0 81.6 84.7 |
| Cross-Entropy (our implementation) | ResNet-50 | 96.2 | 68.6 |
| Supervised Contrastive | ResNet-200 | 69.1 | 52.4 |
| | ResNet-50 | 94.6 | 67.2 |
| | ResNet-200 | 66.5 | 50.6 |
<details>
<summary>Image 3 Details</summary>

### Visual Description
## Line Graph: Top-1 Accuracy vs Corruption Severity - ImageNet
### Overview
The graph compares the top-1 accuracy of four ResNet models (50 and 200) under varying corruption severity levels (test to 5). Accuracy declines as corruption severity increases, with ResNet-200 models consistently outperforming ResNet-50 across all corruption levels.
### Components/Axes
- **X-axis (Corruption Severity)**: Categorical scale labeled "test" (baseline) to "5" (highest severity).
- **Y-axis (Top-1 Accuracy)**: Numerical scale from 30% to 80%, representing classification accuracy.
- **Legend**: Located at the bottom-right, with four entries:
- Solid purple: ResNet-50 Supervised Contrastive
- Solid blue: ResNet-50 Cross Entropy
- Dotted purple: ResNet-200 Supervised Contrastive
- Dotted blue: ResNet-200 Cross Entropy
### Detailed Analysis
1. **ResNet-50 Supervised Contrastive** (solid purple):
- Starts at ~78% accuracy at "test" (severity 0).
- Declines steadily to ~35% at severity 5.
- Steepest slope among all lines.
2. **ResNet-50 Cross Entropy** (solid blue):
- Begins at ~76% at "test".
- Drops to ~28% at severity 5.
- Slightly less steep than ResNet-50 Supervised Contrastive.
3. **ResNet-200 Supervised Contrastive** (dotted purple):
- Starts at ~74% at "test".
- Decreases to ~45% at severity 5.
- Slower decline than ResNet-50 variants.
4. **ResNet-200 Cross Entropy** (dotted blue):
- Initial accuracy ~72% at "test".
- Ends at ~30% at severity 5.
- Most gradual slope among all lines.
### Key Observations
- **Accuracy Degradation**: All models show significant performance drops as corruption severity increases, with ResNet-50 models degrading faster than ResNet-200.
- **Model Robustness**: ResNet-200 models maintain higher accuracy across all corruption levels, suggesting deeper architectures are more robust.
- **Training Method Impact**: Supervised Contrastive training degrades faster than Cross Entropy for both ResNet-50 and ResNet-200, indicating potential overfitting to clean data.
### Interpretation
The data demonstrates that:
1. **Architecture Matters**: ResNet-200 models outperform ResNet-50 by ~5-10% at all corruption levels, highlighting the benefits of deeper networks for robustness.
2. **Training Trade-offs**: While Supervised Contrastive training may improve clean-data performance (higher "test" accuracy), it sacrifices robustness to corruption compared to Cross Entropy.
3. **Corruption Sensitivity**: Even the most robust model (ResNet-200 Cross Entropy) drops from ~72% to ~30% accuracy under maximum corruption, emphasizing the challenge of real-world data variability.
The graph underscores the need for corruption-aware training strategies and architectural choices when deploying models in environments with data quality issues.
</details>
Figure 3: Training with supervised contrastive loss makes models more robust to corruptions in images. Left : Robustness as measured by Mean Corruption Error (mCE) and relative mCE over the ImageNet-C dataset [19] (lower is better). Right : Mean Accuracy as a function of corruption severity averaged over all various corruptions. (higher is better).
Figure 4: Accuracy of cross-entropy and supervised contrastive loss as a function of hyperparameters and training data size, all measured on ImageNet with a ResNet-50 encoder. (From left to right) (a) : Standard boxplot showing Top-1 accuracy vs changes in augmentation, optimizer and learning rates. (b) : Top-1 accuracy as a function of batch size shows both losses benefit from larger batch sizes while Supervised Contrastive has higher Top-1 accuracy even when trained with smaller batch sizes. (c) : Top-1 accuracy as a function of SupCon pretraining epochs. (d) : Top-1 accuracy as a function of temperature during pretraining stage for SupCon.
<details>
<summary>Image 4 Details</summary>

### Visual Description
## Box Plots and Line Charts: Hyperparameter Stability Analysis and Performance Trends
### Overview
The image contains four visualizations analyzing the impact of hyperparameters on model performance (Top-1 Accuracy) using two training methods: **Supervised Contrastive** (purple) and **Cross Entropy** (blue). Each graph isolates a specific hyperparameter or training condition, with box plots (first graph) and line charts (remaining graphs) illustrating trends and variability.
---
### Components/Axes
1. **First Graph (Box Plots):**
- **X-axis:** Hyperparameters: *Augmentation*, *Optimizer*, *Learning Rate*.
- **Y-axis:** Top-1 Accuracy (73.0–79.0 range).
- **Legend:**
- Purple: Supervised Contrastive.
- Blue: Cross Entropy.
- **Spatial Placement:** Legend in bottom-left corner.
2. **Second Graph (Line Chart):**
- **X-axis:** Batch size (1,000–7,000).
- **Y-axis:** Top-1 Accuracy (74.0–79.0).
- **Legend:** Same as above.
- **Spatial Placement:** Legend in bottom-left corner.
3. **Third Graph (Line Chart):**
- **X-axis:** Contrastive Training Epochs (100–700).
- **Y-axis:** Top-1 Accuracy (75.0–79.0).
- **Legend:** Same as above.
- **Spatial Placement:** Legend in bottom-left corner.
4. **Fourth Graph (Line Chart):**
- **X-axis:** Temperature (0.04–0.14).
- **Y-axis:** Top-1 Accuracy (75.0–79.0).
- **Legend:** Same as above.
- **Spatial Placement:** Legend in bottom-left corner.
---
### Detailed Analysis
#### First Graph: Hyperparameter Stability Analysis
- **Augmentation:**
- Supervised Contrastive: Median ~78.5, range 77.8–79.0.
- Cross Entropy: Median ~76.5, range 75.5–77.0.
- **Optimizer:**
- Supervised Contrastive: Median ~77.5, range 76.8–78.0.
- Cross Entropy: Median ~75.5, range 74.5–76.0.
- **Learning Rate:**
- Supervised Contrastive: Median ~78.0, range 77.0–78.5.
- Cross Entropy: Median ~76.0, range 74.5–77.0.
- **Key Observations:**
- Supervised Contrastive shows tighter interquartile ranges (less variability) across all hyperparameters.
- Cross Entropy exhibits wider variability, especially in *Learning Rate*.
#### Second Graph: Top-1 Accuracy vs Batch Size
- **Trend:** Both methods show upward trends as batch size increases.
- Supervised Contrastive: Starts at ~76.5 (1,000) → ~78.5 (7,000).
- Cross Entropy: Starts at ~75.5 (1,000) → ~77.5 (7,000).
- **Key Observations:**
- Supervised Contrastive maintains a ~1.0 accuracy advantage across all batch sizes.
- Both methods plateau near 78.5–79.0 at larger batch sizes.
#### Third Graph: Top-1 Accuracy vs Epochs
- **Trend:**
- Supervised Contrastive: Peaks at ~78.5 (300 epochs) → drops to ~78.0 (700).
- Cross Entropy: Peaks at ~77.5 (400 epochs) → drops to ~76.5 (700).
- **Key Observations:**
- Supervised Contrastive achieves higher peak accuracy earlier (300 vs. 400 epochs).
- Both methods experience performance decay after ~400 epochs.
#### Fourth Graph: Top-1 Accuracy vs Temperature
- **Trend:**
- Supervised Contrastive: Peaks at ~78.5 (temperature 0.08) → drops to ~76.5 (0.14).
- Cross Entropy: Peaks at ~77.5 (temperature 0.10) → drops to ~75.5 (0.14).
- **Key Observations:**
- Supervised Contrastive is more sensitive to temperature changes, with a sharper decline post-peak.
- Cross Entropy’s peak occurs at a higher temperature (0.10 vs. 0.08).
---
### Key Observations
1. **Supervised Contrastive** consistently outperforms Cross Entropy across all hyperparameters and conditions.
2. **Learning Rate** variability is highest for Cross Entropy (range: 74.5–77.0).
3. **Temperature** has a pronounced impact on Supervised Contrastive, with optimal performance at 0.08.
4. **Batch size** and **epochs** show diminishing returns after ~3,000–400 steps, respectively.
---
### Interpretation
- **Hyperparameter Robustness:** Supervised Contrastive demonstrates greater stability across hyperparameters (e.g., tighter box plot distributions), suggesting it is less sensitive to suboptimal configurations.
- **Temperature Sensitivity:** The sharp decline in Supervised Contrastive’s accuracy at higher temperatures (0.10–0.14) indicates a critical need for precise temperature tuning in this method.
- **Training Dynamics:** Both methods plateau in performance gains after a certain point (batch size/epochs), highlighting diminishing returns in scaling resources.
- **Practical Implications:** While Supervised Contrastive offers higher accuracy, its sensitivity to temperature and learning rate variability may require more rigorous hyperparameter optimization compared to Cross Entropy.
---
### Notes on Data Extraction
- All values are approximate, derived from visual inspection of box plot medians/means and line chart trends.
- No textual data tables or non-English content were present in the image.
</details>
Table 4: Transfer learning results. Numbers are mAP for VOC2007 [11]; mean-per-class accuracy for Aircraft, Pets, Caltech, and Flowers; and top-1 accuracy for all other datasets.
| | Food | CIFAR10 | CIFAR100 | Birdsnap | SUN397 | Cars | Aircraft | VOC2007 | DTD Pets | Caltech-101 | Flowers | Mean |
|---------------|--------|-----------|------------|------------|----------|--------|------------|-----------|-------------|---------------|-----------|--------|
| SimCLR-50 [3] | 88.2 | 97.7 | 85.9 | 75.9 | 63.5 | 91.3 | 88.1 | 84.1 | 73.20 89.20 | 92.1 | 97 | 84.81 |
| Xent-50 | 87.38 | 96.5 | 84.93 | 74.7 | 63.15 | 89.57 | 80.8 | 85.36 | 76.86 92.35 | 92.34 | 96.93 | 84.67 |
| SupCon-50 | 87.23 | 97.42 | 84.27 | 75.15 | 58.04 | 91.69 | 84.09 | 85.17 | 74.60 93.47 | 91.04 | 96 | 84.27 |
| Xent-200 | 89.36 | 97.96 | 86.49 | 76.5 | 64.36 | 90.01 | 84.22 | 86.27 | 76.76 93.48 | 93.84 | 97.2 | 85.77 |
| SupCon-200 | 88.62 | 98.28 | 87.28 | 76.26 | 60.46 | 91.78 | 88.68 | 85.18 | 74.26 93.12 | 94.91 | 96.97 | 85.67 |
showing increased robustness. We also see from Fig. 3(right) that SupCon models demonstrate lesser degradation in accuracy with increasing corruption severity.
## 4.3 Hyperparameter Stability
Weexperimented with hyperparameter stability by changing augmentations, optimizers and learning rates one at a time from the best combination for each of the methodologies. In Fig. 4(a), we compare the top-1 accuracy of SupCon loss against cross-entropy across changes in augmentations (RandAugment [6], AutoAugment [5], SimAugment [3], Stacked RandAugment [49]); optimizers (LARS, SGD with Momentum and RMSProp); and learning rates. We observe significantly lower variance in the output of the contrastive loss. Note that batch sizes for cross-entropy and supervised contrastive are the same, thus ruling out any batch-size effects. In Fig. 4(b), sweeping batch size and holding all other hyperparameters constant results in consistently better top-1 accuracy of the supervised contrastive loss.
## 4.4 Transfer Learning
We evaluate the learned representation for fine-tuning on 12 natural image datasets, following the protocol in Chen et.al. [3]. SupCon is on par with cross-entropy and self-supervised contrastive loss on transfer learning performance when trained on the same architecture (Table 4). Our results are consistent with the findings in [16] and [26]: while better ImageNet models are correlated with better transfer performance, the dominant factor is architecture. Understanding the connection between training objective and transfer performance is left to future work.
## 4.5 Training Details
The SupCon loss was trained for 700 epochs during pretraining for ResNet-200 and 350 epochs for smaller models. Fig. 4(c) shows accuracy as a function of SupCon training epochs for a ResNet50, demonstrating that even 200 epochs is likely sufficient for most purposes.
An (optional) additional step of training a linear classifier is used to compute top-1 accuracy. This is not needed if the purpose is to use representations for transfer learning tasks or retrieval. The second stage needs as few as 10 epochs of additional training. Note that in practice the linear classifier can be trained jointly with the encoder and projection networks by blocking gradient propagation from the linear classifier back to the encoder, and achieve roughly the same results without requiring two-stage training. We chose not to do that here to help isolate the effects of the SupCon loss.
We trained our models with batch sizes of up to 6144, although batch sizes of 2048 suffice for most purposes for both SupCon and cross-entropy losses (as shown in Fig. 4(b)). We associate some of the performance increase with batch size to the effect on the gradient due to hard positives increasing with an increasing number of negatives (see the Supplementary for details). We report metrics for experiments with batch size 6144 for ResNet-50 and batch size 4096 for ResNet-200 (due to the larger network size, a smaller batch size is necessary). We observed that for a fixed batch size it was possible to train with SupCon using larger learning rates than what was required by cross-entropy to achieve similar performance.
All our results used a temperature of τ = 0 . 1 . Smaller temperature benefits training more than higher ones, but extremely low temperatures are harder to train due to numerical instability. Fig. 4(d) shows the effect of temperature on Top-1 performance of supervised contrastive learning. As we can see from Eq. 4, the gradient scales inversely with choice of temperature τ ; therefore we rescale the loss by τ during training for stability.
We experimented with standard optimizers such as LARS [59], RMSProp [20] and SGD with momentum [39] in different permutations for the initial pre-training step and training of the dense layer. While SGD with momentum works best for training ResNets with cross-entropy, we get the best performance for SupCon on ImageNet by using LARS for pre-training and RMSProp to training the linear layer. For CIFAR10 and CIFAR100 SGD with momentum performed best. Additional results for combinations of optimizers are provided in the Supplementary. Reference code is released at https://t.ly/supcon .
## References
- [1] Eric B Baum and Frank Wilczek. Supervised learning of probability distributions by neural networks. In Neural information processing systems , pages 52-61, 1988. 3
- [2] Kaidi Cao, Colin Wei, Adrien Gaidon, Nikos Arechiga, and Tengyu Ma. Learning imbalanced datasets with label-distribution-aware margin loss. In Advances in Neural Information Processing Systems , pages 1565-1576, 2019. 3
- [3] Ting Chen, Simon Kornblith, Mohammad Norouzi, and Geoffrey Hinton. A simple framework for contrastive learning of visual representations. arXiv preprint arXiv:2002.05709 , 2020. 2, 3, 4, 5, 6, 7, 8, 16, 18, 19, 21, 22
- [4] Sumit Chopra, Raia Hadsell, and Yann LeCun. Learning a similarity metric discriminatively, with application to face verification. In 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05) , volume 1, pages 539-546. IEEE, 2005. 3
- [5] Ekin D Cubuk, Barret Zoph, Dandelion Mane, Vijay Vasudevan, and Quoc V Le. Autoaugment: Learning augmentation strategies from data. In Proceedings of the IEEE conference on computer vision and pattern recognition , pages 113-123, 2019. 1, 2, 6, 7, 8, 21
- [6] Ekin D Cubuk, Barret Zoph, Jonathon Shlens, and Quoc V Le. Randaugment: Practical data augmentation with no separate search. arXiv preprint arXiv:1909.13719 , 2019. 1, 6, 8, 21, 22
- [7] Jia Deng, Wei Dong, Richard Socher, Li-Jia Li, Kai Li, and Li Fei-Fei. Imagenet: A largescale hierarchical image database. In 2009 IEEE conference on computer vision and pattern recognition , 2009. 1, 5, 6
- [8] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805 , 2018. 3
- [9] Carl Doersch, Abhinav Gupta, and Alexei A Efros. Unsupervised visual representation learning by context prediction. In Proceedings of the IEEE International Conference on Computer Vision , pages 1422-1430, 2015. 3
- [10] Gamaleldin Elsayed, Dilip Krishnan, Hossein Mobahi, Kevin Regan, and Samy Bengio. Large margin deep networks for classification. In Advances in neural information processing systems , pages 842-852, 2018. 1, 3
- [11] M. Everingham, L. Van Gool, C. K. I. Williams, J. Winn, and A. Zisserman. The PASCAL Visual Object Classes Challenge 2007 (VOC2007) Results. http://www.pascalnetwork.org/challenges/VOC/voc2007/workshop/index.html. 8
- [12] Nicholas Frosst, Nicolas Papernot, and Geoffrey E. Hinton. Analyzing and improving representations with the soft nearest neighbor loss. In Kamalika Chaudhuri and Ruslan Salakhutdinov, editors, Proceedings of the 36th International Conference on Machine Learning, ICML 2019, 9-15 June 2019, Long Beach, California, USA , volume 97 of Proceedings of Machine Learning Research , pages 2012-2020. PMLR, 2019. 3
- [13] Michael Gutmann and Aapo Hyv¨ arinen. Noise-contrastive estimation: A new estimation principle for unnormalized statistical models. In Proceedings of the Thirteenth International Conference on Artificial Intelligence and Statistics , pages 297-304, 2010. 3, 5
- [14] Trevor Hastie, Robert Tibshirani, and Jerome Friedman. The Elements of Statistical Learning . Springer Series in Statistics. Springer New York Inc., New York, NY, USA, 2001. 4
- [15] Kaiming He, Haoqi Fan, Yuxin Wu, Saining Xie, and Ross Girshick. Momentum contrast for unsupervised visual representation learning. arXiv preprint arXiv:1911.05722 , 2019. 2, 3, 5, 7
- [16] Kaiming He, Ross Girshick, and Piotr Doll´ ar. Rethinking imagenet pre-training. In Proceedings of the IEEE International Conference on Computer Vision , pages 4918-4927, 2019. 8
- [17] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition , pages 770-778, 2016. 2, 5, 6, 7, 8
- [18] Olivier J H´ enaff, Ali Razavi, Carl Doersch, SM Eslami, and Aaron van den Oord. Data-efficient image recognition with contrastive predictive coding. arXiv preprint arXiv:1905.09272 , 2019. 2, 3, 4, 5
- [19] Dan Hendrycks and Thomas Dietterich. Benchmarking neural network robustness to common corruptions and perturbations. arXiv preprint arXiv:1903.12261 , 2019. 2, 6, 7, 8, 19, 20
- [20] Geoffrey Hinton, Nitish Srivastava, and Kevin Swersky. Neural networks for machine learning lecture 6a overview of mini-batch gradient descent. Cited on , 14(8), 2012. 9
- [21] Geoffrey Hinton, Oriol Vinyals, and Jeff Dean. Distilling the knowledge in a neural network. arXiv preprint arXiv:1503.02531 , 2015. 3
- [22] R Devon Hjelm, Alex Fedorov, Samuel Lavoie-Marchildon, Karan Grewal, Adam Trischler, and Yoshua Bengio. Learning deep representations by mutual information estimation and maximization. In International Conference on Learning Representations , 2019. 2, 3, 4
- [23] J. L. W. V. Jensen. Sur les fonctions convexes et les in ´ egalit ´ es entre les valeurs moyennes. Acta Math , 1906. 5
- [24] Konstantinos Kamnitsas, Daniel C. Castro, Lo¨ ıc Le Folgoc, Ian Walker, Ryutaro Tanno, Daniel Rueckert, Ben Glocker, Antonio Criminisi, and Aditya V. Nori. Semi-supervised learning via compact latent space clustering. In International Conference on Machine Learning , 2018. 3
- [25] Alexander Kolesnikov, Lucas Beyer, Xiaohua Zhai, Joan Puigcerver, Jessica Yung, Sylvain Gelly, and Neil Houlsby. Large scale learning of general visual representations for transfer. arXiv preprint arXiv:1912.11370 , 2019. 1
- [26] Simon Kornblith, Jonathon Shlens, and Quoc V Le. Do better imagenet models transfer better? In Proceedings of the IEEE conference on computer vision and pattern recognition , pages 2661-2671, 2019. 8
- [27] Alex Krizhevsky, Geoffrey Hinton, et al. Learning multiple layers of features from tiny images. 2009. 6
- [28] Alex Krizhevsky, Ilya Sutskever, and Geoffrey E Hinton. Imagenet classification with deep convolutional neural networks. In Advances in neural information processing systems , pages 1097-1105, 2012. 8
- [29] Esther Levin and Michael Fleisher. Accelerated learning in layered neural networks. Complex systems , 2:625-640, 1988. 3
- [30] Sungbin Lim, Ildoo Kim, Taesup Kim, Chiheon Kim, and Sungwoong Kim. Fast autoaugment. arXiv preprint arXiv:1905.00397 , 2019. 2, 7, 21
- [31] Weiyang Liu, Yandong Wen, Zhiding Yu, and Meng Yang. Large-margin softmax loss for convolutional neural networks. In ICML , volume 2, page 7, 2016. 1
- [32] Weiyang Liu, Yandong Wen, Zhiding Yu, and Meng Yang. Large-margin softmax loss for convolutional neural networks, 2016. 7
- [33] Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S Corrado, and Jeff Dean. Distributed representations of words and phrases and their compositionality. In Advances in neural information processing systems , pages 3111-3119, 2013. 3
- [34] Andriy Mnih and Koray Kavukcuoglu. Learning word embeddings efficiently with noisecontrastive estimation. In Advances in neural information processing systems , pages 22652273, 2013. 3
- [35] Rafael M¨ uller, Simon Kornblith, and Geoffrey E Hinton. When does label smoothing help? In Advances in Neural Information Processing Systems , pages 4696-4705, 2019. 3
- [36] Kamil Nar, Orhan Ocal, S Shankar Sastry, and Kannan Ramchandran. Cross-entropy loss and low-rank features have responsibility for adversarial examples. arXiv preprint arXiv:1901.08360 , 2019. 3
- [37] Mehdi Noroozi and Paolo Favaro. Unsupervised learning of visual representations by solving jigsaw puzzles. In European Conference on Computer Vision , pages 69-84. Springer, 2016. 3
- [38] Aaron van den Oord, Yazhe Li, and Oriol Vinyals. Representation learning with contrastive predictive coding. arXiv preprint arXiv:1807.03748 , 2018. 2
- [39] Sebastian Ruder. An overview of gradient descent optimization algorithms. arXiv preprint arXiv:1609.04747 , 2016. 9
- [40] David E Rumelhart, Geoffrey E Hinton, and Ronald J Williams. Learning representations by back-propagating errors. nature , 323(6088):533-536, 1986. 3
- [41] Ruslan Salakhutdinov and Geoff Hinton. Learning a nonlinear embedding by preserving class neighbourhood structure. In Artificial Intelligence and Statistics , pages 412-419, 2007. 3
- [42] Florian Schroff, Dmitry Kalenichenko, and James Philbin. Facenet: A unified embedding for face recognition and clustering. In Proceedings of the IEEE conference on computer vision and pattern recognition , pages 815-823, 2015. 3, 4, 5, 18, 19
- [43] Pierre Sermanet, Corey Lynch, Yevgen Chebotar, Jasmine Hsu, Eric Jang, Stefan Schaal, Sergey Levine, and Google Brain. Time-contrastive networks: Self-supervised learning from video. In 2018 IEEE International Conference on Robotics and Automation (ICRA) , 2018. 3
- [44] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks for large-scale image recognition. In International Conference on Learning Representations , 2015. 8
- [45] Kihyuk Sohn. Improved deep metric learning with multi-class n-pair loss objective. In Advances in neural information processing systems , pages 1857-1865, 2016. 2, 3, 5, 6, 7, 18
- [46] Sainbayar Sukhbaatar, Joan Bruna, Manohar Paluri, Lubomir Bourdev, and Rob Fergus. Training convolutional networks with noisy labels. arXiv preprint arXiv:1406.2080 , 2014. 1, 3
- [47] Christian Szegedy, Vincent Vanhoucke, Sergey Ioffe, Jon Shlens, and Zbigniew Wojna. Rethinking the inception architecture for computer vision. In Proceedings of the IEEE conference on computer vision and pattern recognition , pages 2818-2826, 2016. 3
- [48] Yonglong Tian, Dilip Krishnan, and Phillip Isola. Contrastive multiview coding. arXiv preprint arXiv:1906.05849 , 2019. 2, 3, 4, 5, 19
- [49] Yonglong Tian, Chen Sun, Ben Poole, Dilip Krishnan, Cordelia Schmid, and Phillip Isola. What makes for good views for contrastive learning. arXiv preprint arXiv:2005.10243 , 2019. 6, 7, 8, 21, 22
- [50] Tijmen Tieleman and Geoffrey Hinton. Lecture 6.5-rmsprop: Divide the gradient by a running average of its recent magnitude. COURSERA: Neural networks for machine learning , 4(2):2631, 2012. 21
- [51] Michael Tschannen, Josip Djolonga, Paul K Rubenstein, Sylvain Gelly, and Mario Lucic. On mutual information maximization for representation learning. arXiv preprint arXiv:1907.13625 , 2019. 3
- [52] Tongzhou Wang and Phillip Isola. Understanding contrastive representation learning through alignment and uniformity on the hypersphere. arXiv preprint arXiv:2005.10242 , 2020. 4
- [53] Kilian Q Weinberger and Lawrence K Saul. Distance metric learning for large margin nearest neighbor classification. Journal of Machine Learning Research , 10(Feb):207-244, 2009. 2, 3, 6, 17
- [54] Zhirong Wu, Alexei A Efros, and Stella Yu. Improving generalization via scalable neighborhood component analysis. In European Conference on Computer Vision (ECCV) 2018 , 2018. 3
- [55] Zhirong Wu, Yuanjun Xiong, Stella X Yu, and Dahua Lin. Unsupervised feature learning via non-parametric instance discrimination. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition , pages 3733-3742, 2018. 2, 3, 13
- [56] Qizhe Xie, Eduard Hovy, Minh-Thang Luong, and Quoc V Le. Self-training with noisy student improves imagenet classification. arXiv preprint arXiv:1911.04252 , 2019. 1
- [57] Shuo Yang, Ping Luo, Chen Change Loy, Kenneth W Shum, and Xiaoou Tang. Deep representation learning with target coding. In Twenty-Ninth AAAI Conference on Artificial Intelligence , 2015. 3
- [58] Zhilin Yang, Zihang Dai, Yiming Yang, Jaime Carbonell, Russ R Salakhutdinov, and Quoc V Le. Xlnet: Generalized autoregressive pretraining for language understanding. In Advances in neural information processing systems , pages 5754-5764, 2019. 3
- [59] Yang You, Igor Gitman, and Boris Ginsburg. Large batch training of convolutional networks. arXiv preprint arXiv:1708.03888 , 2017. 9, 21
- [60] Sangdoo Yun, Dongyoon Han, Seong Joon Oh, Sanghyuk Chun, Junsuk Choe, and Youngjoon Yoo. Cutmix: Regularization strategy to train strong classifiers with localizable features. In Proceedings of the IEEE International Conference on Computer Vision , pages 6023-6032, 2019. 1, 3, 7, 22
- [61] Hongyi Zhang, Moustapha Cisse, Yann N Dauphin, and David Lopez-Paz. mixup: Beyond empirical risk minimization. arXiv preprint arXiv:1710.09412 , 2017. 3, 7, 22
- [62] Richard Zhang, Phillip Isola, and Alexei A Efros. Colorful image colorization. In European conference on computer vision , pages 649-666. Springer, 2016. 3
- [63] Richard Zhang, Phillip Isola, and Alexei A Efros. Split-brain autoencoders: Unsupervised learning by cross-channel prediction. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition , pages 1058-1067, 2017. 3
- [64] Zhilu Zhang and Mert Sabuncu. Generalized cross entropy loss for training deep neural networks with noisy labels. In Advances in neural information processing systems , pages 87788788, 2018. 1, 3
## 5 Training Setup
In Fig. 5, we compare the training setup for the cross-entropy, self-supervised contrastive and supervised contrastive (SupCon) losses. Note that the number of parameters in the inference models always stays the same. We also note that it is not necessary to train a linear classifier in the second stage, and previous works have used k-Nearest Neighbor classification [55] or prototype classification to evaluate representations on classification tasks. The linear classifier can also be trained jointly with the encoder, as long as it doesn't propagate gradients back to the encoder.
Figure 5: Cross entropy, self-supervised contrastive loss and supervised contrastive loss: The cross entropy loss (left) uses labels and a softmax loss to train a classifier; the self-supervised contrastive loss (middle) uses a contrastive loss and data augmentations to learn representations. The supervised contrastive loss (right) also learns representations using a contrastive loss, but uses label information to sample positives in addition to augmentations of the same image. Both contrastive methods can have an optional second stage which trains a model on top of the learned representations.
<details>
<summary>Image 5 Details</summary>

### Visual Description
## Diagram: Neural Network Architectures for Image Classification (Dog Task)
### Overview
The diagram illustrates three stages of neural network architectures for image classification, focusing on the "Dog" task. Each stage represents a different training methodology, with visualizations of layer dimensions, shared weights/activations, and loss functions. The architectures are depicted as pyramid-like structures with labeled dimensions and directional arrows indicating relationships between components.
### Components/Axes
1. **Stages**:
- **Stage 1**: Supervised Cross Entropy
- **Stage 2**: Self Supervised Contrastive
- **Stage 3**: Supervised Contrastive
2. **Layer Dimensions**:
- 1000-D (1000-dimensional)
- 2048-D (2048-dimensional)
- 128-D (128-dimensional)
- 248-D (248-dimensional)
3. **Key Elements**:
- "Dog" label (classification target)
- Softmax layer (final classification)
- Contrastive loss function (highlighted in Stages 2 and 3)
- Shared weights/activations (indicated by dashed red arrows)
- Loss function connections (solid yellow arrows)
### Detailed Analysis
1. **Stage 1 (Supervised Cross Entropy)**:
- Pyramid structure with **1000-D** and **2048-D** layers.
- "Dog" label at the base, Softmax at the top.
- No contrastive components; purely supervised learning.
2. **Stage 2 (Self Supervised Contrastive)**:
- Pyramid structure with **128-D** and **248-D** layers.
- Contrastive loss function (green block) between layers.
- Shared weights/activations with Stage 1 (dashed red arrow).
- Softmax layer retains 1000-D and 2048-D dimensions.
3. **Stage 3 (Supervised Contrastive)**:
- Dual pyramid structure with **128-D** and **248-D** layers.
- Contrastive loss function (green block) between layers.
- Shared weights/activations with Stage 2 (dashed red arrow).
- Softmax layer retains 1000-D and 2048-D dimensions.
### Key Observations
- **Layer Dimensionality**:
- Stages progress from high-dimensional (2048-D) to lower-dimensional (128-D/248-D) representations.
- Contrastive stages introduce intermediate layers (128-D, 248-D) for feature learning.
- **Shared Weights/Activations**:
- Red dashed arrows indicate parameter reuse between stages, suggesting efficiency gains.
- **Loss Functions**:
- Softmax dominates all stages for final classification.
- Contrastive loss (green) is exclusive to Stages 2 and 3, emphasizing self-supervised learning.
### Interpretation
The diagram demonstrates a progression from traditional supervised learning (Stage 1) to hybrid approaches combining self-supervised contrastive learning (Stage 2) and supervised contrastive learning (Stage 3). Key insights:
1. **Efficiency**: Shared weights/activations reduce computational redundancy across stages.
2. **Contrastive Learning**: Introduced in Stage 2, it enables unsupervised feature learning, later integrated with supervision in Stage 3.
3. **Dimensionality Reduction**: Lower-dimensional layers (128-D, 248-D) in later stages suggest optimized feature extraction for classification.
4. **Task Focus**: The persistent "Dog" label and Softmax layer indicate a fixed classification target, with architectural changes focused on improving learning efficiency and robustness.
This architecture highlights the interplay between supervised and self-supervised learning, leveraging contrastive methods to enhance model performance on the "Dog" classification task while maintaining parameter efficiency.
</details>
## 6 Gradient Derivation
In Sec. 3 of the paper, we make the claim that the gradients of the two considered supervised contrastive losses, L sup out and L sup in , with respect to a normalized projection network representation, z i , have a nearly identical mathematical form. In this section, we perform derivations to show this is true. It is sufficient to show that this claim is true for L sup out,i and L sup in,i . For convenience, we reprint below the expressions for each.
$$\mathcal { L } _ { s u p , i n , i } = - \log ( \frac { 1 } { | P ( i ) | } \sum _ { p \in P ( i ) } \sum _ { a \in A ( i ) } e ^ { x _ { i } \cdot z _ { p } / r } )$$
$$\mathcal { L } _ { out , i } = \frac { - 1 } { P ( i ) } \sum _ { p \in P ( i ) } \log \frac { exp ( z _ { p } ) } { a e A ( i ) }$$
## Supplementary
We start by deriving the gradient of L sup in (Eq. 7):
$$\sum _ { i = 1 } ^ { n } \sum _ { j = 1 } ^ { p } z_i \cdot z_j / T - \frac { 1 } { T } \sum _ { i = 1 } ^ { n } \sum _ { j = 1 } ^ { p } z_i \cdot z_j / T - \frac { 1 } { T } \sum _ { i = 1 } ^ { n } \sum _ { j = 1 } ^ { p } z_i \cdot z_j / T$$
where we have defined:
$$\beta _ { i p } = \frac { e ^ { p ( z _ { i } \cdot z _ { p } / r ) } } { \sum _ { a \in A ( i ) } e ^ { p ( z _ { i } \cdot z _ { a } / r ) } }$$
$$x ^ { i p } = \frac { e p ( z _ { 1 } \cdot z _ { p } / r ) } { \sum _ { r \in P ( i ) } e p ( z _ { 1 } \cdot z _ { p } / r ) }$$
Though similar in structure, P ip and X in ip are fundamentally different: P ip is the likelihood for z p with respect to all positives and negatives, while X in ip is that but with respect to only the positives. P in is analogous to P ip but defines the likelihood of z n . In particular, P ip ≤ X in ip . We now derive
the gradient of Eq. 25:
$$\sum _ { p \in P ( i ) } z _ { p } - \sum _ { p \in P ( i ) } z _ { p } ^ { n } P _ { p } ^ { n } = \frac { 1 } { n } P _ { n } ^ { n }$$
where we have defined:
$$x ^ { \prime } = \frac { 1 } { \vert P ( i ) \vert }$$
Thus, both gradients (Eqs. 9 and 12) have a very similar form and can be written collectively as:
$$\frac { \partial C _ { i } ^ { s p } } { \partial z _ { i } ^ { - 1 } } = \sum _ { n \in N ( i ) } z _ { n } ( P _ { i } - X _ { i } )$$
where:
$$X _ { i p } = \left\{ \begin{array}{ll} \frac{\exp( z _ { i } x _ { p } / r )}{\sum _ { P ( i ) } e ^ { P ( i ) } } , & i \in I \\ \frac{1}{P ( i ) } , & i \notin I \end{array} \right.$$
This corresponds to Eq. 4 and subsequent analysis in the paper.
## 7 Intrinsic Hard Positive and Negative Mining Properties
The contrastive loss is structured so that gradients with respect to the unnormalized projection network representations provide an intrinsic mechanism for hard positive/negative mining during training. For losses such as the triplet loss or max-margin, hard mining is known to be crucial to their performance. For contrastive loss, we show analytically that hard mining is intrinsic and thus removes the need for complicated hard mining algorithms.
As shown in Sec. 6, the gradients of both L sup out and L sup in are given by Eq. 12. Additionally, note that the self-supervised contrastive loss, L self i , is a special case of either of the two supervised contrastive losses (when P ( i ) = j ( i ) ). So by showing that Eq. 12 has structure that provides hard
positive/negative mining, it will be shown to be true for all three contrastive losses (self-supervised and both supervised versions).
The projection network applies a normalization to its outputs 4 . We shall let w i denote the projection network output prior to normalization, i.e., z i = w i / ‖ w i ‖ . As we show below, normalizing the representations provides structure (when combined with Eq. 12) to the gradient enables the learning to focus on hard positives and negatives. The gradient of the supervised loss with respect to w i is related to that with respect to z i via the chain rule:
$$\frac { \partial L _ { i } ^ { \prime } ( z _ { 1 } ) } { \partial w _ { 1 } } = \frac { \partial L _ { i } ^ { \prime } ( z _ { 1 } ) } { \partial w _ { 1 } }$$
$$\frac { \partial z _ { i } } { \partial w _ { i } } = \frac { \partial ( \frac { w _ { i } } { 1 - w _ { i } } ) } { \partial w _ { i } } = \frac { 1 } { \vert w _ { i } \vert ^{2} } = \frac { 1 } { \vert w _ { i } \vert } ( 1 - \frac { w _ { i } } { \vert w _ { i } \vert ^{2} } )$$
Combining Eqs. 12 and 17 thus gives:
$$\begin{aligned}
\frac { \partial L_{sup}}{\partial w_i } & = - \frac { 1 } { r || w_i || } ( I - z_i ) \\
& = \frac { 1 } { r || w_i || } \left( \sum _{n\in N(i)} z_p ( P_i ) + \sum _{n\in N(i)} z_n P_i \right) \\
& = \frac { 1 } { r || w_i || } \left( \sum _{n=0}^{\infty} z_p ( P_i - X_{ip}) + \sum _{n=0}^{\infty} z_n P_i \right) \\
& = \frac { 1 } { r || w_i || } \left( \sum _{n=0}^{\infty} ( z_p - ( z_i \cdot z_p ) z_i ) ( P_{ip} - X_{ip}) + \sum _{n=0}^{\infty} z_n P_i \right) \\
& = \frac { 1 } { r || w_i || } L_{sup} \left( q_{N(i)} \right)
\end{aligned}$$
where:
where:
$$\frac { \partial C _ { 1 } ^ { \prime } } { \partial u _ { 1 } } = - \frac { 1 } { r | w _ { 1 } | } \sum _ { p \in P ( t ) } ( z _ { p } - ( z _ { i } )$$
$$\frac { \partial C _ { 2 } ^ { \prime } } { \partial u _ { n } } = - \frac { 1 } { n ( N ) } \sum _ { n \in N ( i ) } ( z _ { n } - ( z _ { i }$$
We now show that easy positives and negatives have small gradient contributions while hard positives and negatives have large ones. For an easy positive (i.e., one against which contrasting the anchor only weakly benefits the encoder), z i · z p ≈ 1 . Thus (see Eq. 19):
$$\left | ( z _ { p } - \sqrt { 1 - ( z _ { i } \cdot z _ { p } ) ^ { 2 } } \right | = \sqrt { 1 - ( z _ { i } \cdot$$
However, for a hard positive (i.e., one against which contrasting the anchor greatly benefits the encoder), z i · z p ≈ 0 , so:
$$\left | ( z _ { p } - \sqrt { 1 - ( z _ { i } \cdot z _ { p } ) ^ { 2 } } \right | = \sqrt { 1 - ( z _ { i } \cdot$$
4 Note that when the normalization is combined with an inner product (as we do here), this is equivalent to cosine similarity. Some contrastive learning approaches [3] use a cosine similarity explicitly in their loss formulation. We decouple the normalization here to highlight the benefits it provides.
Thus, for the gradient of L sup in (where X ip = X in ip ):
$$\sum _ { n \in N ( i ) } exp ( z _ { i } \cdot z _ { p } / r ) = 1 + \sum _ { n \in N ( i ) } exp ( z _ { i } \cdot z _ { n } / r ) - \sum _ { n \in N ( i ) } p ^ { r } e ^ { i P ( i ) }$$
For the gradient of L sup out (where X ip = X out ip )
where ∑ n ∈ N ( i ) exp ( z i · z n /τ ) ≥ 0 (assuming z i · z n ≤ 0 ) and ∑ p ′ ∈ P ( i ) exp ( z i · z p ′ /τ ) -| P ( i ) | ≥ 0 (assuming z i · z p ′ ≥ 0 ). We thus see that for either L sup out and L sup in the gradient response to a hard positive in any individual training step can be made larger by increasing the number of negatives. Additionally, for L sup out , it can also be made larger by increasing the number of positives.
Thus, for weak positives (since z i · z p ≈ 1 ) the contribution to the gradient is small while for hard positives the contribution is large (since z i · z p ≈ 0 ). Similarly, analysing Eq. 20 for weak negatives ( z i · z n ≈ -1 ) vs hard negatives ( z i · z n ≈ 0 ) we conclude that the gradient contribution is large for hard negatives and small for weak negatives.
In addition to an increased number of positives/negatives helping in general, we also note that as we increase the batch size, we also increase the probability of choosing individual hard positives/negatives. Since hard positives/negatives lead to a larger gradient contribution, we see that a larger batch has multiple high impact effects to allow obtaining better performance, as we observe empirically in the main paper.
Additionally, it should be noted that the ability of contrastive losses to perform intrinsic hard positive/negative data mining comes about only if a normalization layer is added to the end of the projection network, thereby justifying the use of a normalization in the network. Ours is the first paper to show analytically this property of contrastive losses, even though normalization has been empirically found to be useful in self-supervised contrastive learning.
## 8 Triplet Loss Derivation from Contrastive Loss
In this section, we show that the triplet loss [53] is a special case of the contrastive loss when the number of positives and negatives are each one. Assuming the representation of the anchor ( i ) and the positive ( p ) are more aligned than that of the anchor and negative ( n ) (i.e., z i · z p z i · z n ),
we have:
$$\begin{align}
L ^{\text{self}} f &= - \log \frac { exp ( z _ { a } \cdot z _ { p } / τ ) } { exp ( z _ { a } \cdot z _ { p } / τ ) + exp ( z _ { a } \cdot z _ { n } / τ ) } \\
&= log ( 1 + exp (( z _ { a } \cdot z _ { n } - z _ { a } \cdot z _ { p } ) / τ ) ) \\
\approx 1 + \frac { 1 } { τ } \cdot ( | z _ { a } - z _ { n } | ^2 - | z _ { a } - z _ { p } | ^2 ) \\
&= 1 - \frac { 1 } { 2 τ } \cdot ( | z _ { a } - z _ { n } | ^2 - | z _ { a } - z _ { p } | ^2 ) \\
\approx || z _ { a } - z _ { p } || ^2 - || z _ { a } - z _ { n } || ^2 + 2 τ.
\end{align}$$
which has the same form as a triplet loss with margin α = 2 τ . This result is consistent with empirical results [3] which show that contrastive loss performs better in general than triplet loss on representation tasks. Additionally, whereas triplet loss in practice requires computationally expensive hard negative mining (e.g., [42]), the discussion in Sec. 7 shows that the gradients of the supervised contrastive loss naturally impose a measure of hard negative reinforcement during training. This comes at the cost of requiring large batch sizes to include many positives and negatives.
## 9 Supervised Contrastive Loss Hierarchy
The SupCon loss subsumes multiple other commonly used losses as special cases of itself. It is insightful to study which additional restrictions need to be imposed on it to change its form into that of each of these other losses.
For convenience, we reprint the form of the SupCon loss.
$$\sum _ { i \in I } z _ { p ( i ) } ^ { - 1 } \sum _ { j \in P ( i ) } log \frac { x p } { a e A ( i ) }$$
Here, P ( i ) is the set of all positives in the multiviewed batch corresponding to the anchor i . For SupCon, positives can come from two disjoint categories:
- Views of the same sample image which generated the anchor image.
- Views of a sample image different from that which generated the anchor image but having the same label as that of the anchor.
The loss for self-supervised contrastive learning (Eq. 1 in the paper) is a special case of SupCon when P ( i ) is restricted to contain only a view of the same source image as that of the anchor (i.e., the first category above). In this case, P ( i ) = j ( i ) , where j ( i ) is the index of view, and Eq. 25 readily takes on the self-supervised contrastive loss form.
$$\sum _ { A ( i ) } ^ { \infty } e ^ { - i \log _ { 10 } ( z _ { i } ) / r }$$
A second commonly referenced loss subsumed by SupCon is the N-Pairs loss [45]. This loss, while functionally similar to Eq. 26, differs from it by requiring that the positive be generated from a sample image different from that which generated the anchor but which has the same label as the anchor (i.e., the second category above). There is also no notion of temperature in the original N-Pairs loss, though it could be easily generalized to include it. Letting k ( i ) denote the positive originating from a different sample image than that which generated the anchor i , the N-Pairs loss has the following form:
$$\sum _ { a \in A ( i ) } e ^ { p ( i ) = k ( i ) , r = 1 } = c ^ { n - pairs } _ { i }$$
It is interesting to see how these constraints affect performance. For a batch size of 6144, a ResNet50 encoder trained on ImageNet with N-Pairs loss achieves an ImageNet Top-1 classification accuracy of 57.4% while an identical setup trained with the SupCon loss achieves 78.7%.
Finally, as discussed in Sec. 8, triplet loss is a special case of the SupCon loss (as well as that of the self-supervised and N-Pairs losses) when the number of positives and negatives are restricted to both be one.
## 10 Effect of Temperature in Loss Function
Similar to previous work [3, 48], we find that the temperature τ used in the loss function has an important role to play in supervised contrastive learning and that the model trained with the optimal temperature can improve performance by nearly 3%. Two competing effects that changing the temperature has on training the model are:
1. Smoothness: The distances in the representation space used for training the model have gradients with smaller norm ( ||∇L|| ∝ 1 τ ); see Section 6. Smaller magnitude gradients make the optimization problem simpler by allowing for larger learning rates. In Section 3.3 of the paper, it is shown that in the case of a single positive and negative, the contrastive loss is equivalent to a triplet loss with margin ∝ τ . Therefore, in these cases, a larger temperature makes the optimization easier, and classes more separated.
2. Hard positives/negatives: On the other hand, as shown in Sec 7, the supervised contrastive loss has structure that cause hard positives/negatives to improve performance. Additionally, hard negatives have been shown to improve classification accuracy when models are trained with the triplet loss [42]. Low temperatures are equivalent to optimizing for hard positives/negatives: for a given batch of samples and a specific anchor, lowering the temperature relatively increases the value of P ik (see Eq. 10) for samples which have larger inner product with the anchor, and reduces it for samples which have smaller inner product.
Wefound empirically that a temperature of 0 . 1 was optimal for top-1 accuracy on ResNet-50; results on various temperatures are shown in Fig. 4 of the main paper. We use the same temperature for all experiments on ResNet-200.
## 11 Effect of Number of Positives
We run ablations to test the effect of the number of positives. Specifically, we take at most k positives for each sample, and also remove them from the denominator of the loss function so they are not considered as a negative. We train with a batch size of 6144, so without this capping there are 13 positives in expectation(6 positives, each with 2 augmentatioins, plus other augmentation of anchor image). We
Table 5: Comparison of Top-1 accuracy variability as a function of the maximum number of positives | P ( i ) | varies from 1 to no cap . Adding more positives benefits the final Top-1 accuracy. Note that with 1 positive, this is equivalent to the self-supervised approach of [3] where the positive is an augmented version of the same sample .
| 1 [3] | 3 | 5 | 7 | 9 | No cap (13) |
|---------|------|-----|------|------|---------------|
| 69.3 | 76.6 | 78 | 78.4 | 78.3 | 78.5 |
train for 350 epochs. Table 5 shows the steady benefit of adding more positives for a ResNet-50 model trained on ImageNet with supervised contrastive loss. Note that for each anchor, the number of positives always contains one positive which is the same sample but with a different data augmentation; and the remainder of the positives are different samples from the same class. Under this definition, self-supervised learning is considered as having 1 positive.
## 12 Robustness
Along with measuring the mean Corruption Error (mCE) and mean relative Corruption Error [19] on the ImageNet-C dataset (see paper, Section 4.2 and Figure 3), we also measure the Expected Calibration Error and the mean accuracy of our models on different corruption severity levels. Table 6 demonstrates how performance and calibration degrades as the data shifts farther from the training distribution and becomes harder to classify. Figure 6 shows how the calibration error of the model
Figure 6: Expected Calibration Error and mean top-1 accuracy at different corruption severities on ImageNetC, on the ResNet-50 architecture (top) and ResNet-200 architecture (bottom). The contrastive loss maintains a higher accuracy over the range of corruption severities, and does not suffer from increasing calibration error, unlike the cross entropy loss.
<details>
<summary>Image 6 Details</summary>

### Visual Description
## Line Chart: ECE vs Corruption Severity - ImageNet
### Overview
The chart compares the Expected Calibration Error (ECE) of different ResNet models under varying corruption severity levels (0-5) on the ImageNet dataset. Four data series are plotted, representing combinations of ResNet architectures (50/200 layers) and training objectives (Cross Entropy vs Supervised Contrastive).
### Components/Axes
- **X-axis**: Corruption Severity (0 = "test", 1-5 = increasing severity)
- **Y-axis**: ECE (0.02-0.09 range)
- **Legend**:
- Solid blue: ResNet-50 Cross Entropy
- Dashed purple: ResNet-200 Supervised Contrastive
- Dotted light blue: ResNet-200 Cross Entropy
- Solid purple: ResNet-50 Supervised Contrastive
- **Placement**: Legend in top-left corner; axes labeled with standard Cartesian coordinates
### Detailed Analysis
1. **ResNet-50 Cross Entropy** (solid blue):
- Starts at ~0.035 at "test"
- Drops to ~0.03 at severity 1
- Rises to ~0.045 at severity 5
- Shows U-shaped curve with minimum at severity 1
2. **ResNet-200 Supervised Contrastive** (dashed purple):
- Starts at ~0.035 at "test"
- Increases steadily to ~0.085 at severity 5
- Linear upward trend with slope ~0.01 per severity unit
3. **ResNet-200 Cross Entropy** (dotted light blue):
- Starts at ~0.04 at "test"
- Dips to ~0.03 at severity 2
- Rises to ~0.045 at severity 5
- Shallow U-shaped curve with minimum at severity 2
4. **ResNet-50 Supervised Contrastive** (solid purple):
- Starts at ~0.02 at "test"
- Sharp linear increase to ~0.09 at severity 5
- Steepest slope (~0.014 per severity unit)
### Key Observations
- All models show increased ECE with higher corruption severity
- Supervised Contrastive training generally exhibits higher ECE than Cross Entropy
- ResNet-50 Supervised Contrastive demonstrates the most severe degradation (highest ECE at severity 5)
- ResNet-200 Cross Entropy shows unexpected resilience at severity 2
- "Test" condition (severity 0) serves as baseline for all models
### Interpretation
The data suggests that supervised contrastive training methods (both ResNet-50 and 200) are more sensitive to corruption severity than cross entropy training. The ResNet-50 Supervised Contrastive model shows the most dramatic degradation, with ECE increasing 300% from test to maximum severity. This indicates potential overfitting to clean data or poor generalization to corrupted inputs. The ResNet-200 architecture appears more robust overall, maintaining lower ECE across most severity levels despite using supervised contrastive training. The U-shaped patterns in Cross Entropy models suggest possible calibration improvements at moderate corruption levels. These findings highlight the importance of corruption-aware training strategies and model architecture selection for robust image classification systems.
</details>
increases as the level of corruption severity increases as measured by performance on ImageNet-C [19].
Table 6: Top : Average Expected Calibration Error (ECE) over all the corruptions in ImageNet-C [19] for a given level of severity (lower is better); Bottom : Average Top-1 Accuracy over all the corruptions for a given level of severity (higher is better).
| Model | Model | Test | 1 | 2 | 3 | 4 | 5 |
|------------------------|--------------|----------------|----------------|----------------|----------------|----------------|----------------|
| Loss | Architecture | | ECE | ECE | ECE | ECE | ECE |
| Cross Entropy | ResNet-50 | 0.039 | 0.033 | 0.032 | 0.047 | 0.072 | 0.098 |
| Cross Entropy | ResNet-200 | 0.045 | 0.048 | 0.036 | 0.040 | 0.042 | 0.052 |
| Supervised Contrastive | ResNet-50 | 0.024 | 0.026 | 0.034 | 0.048 | 0.071 | 0.100 |
| Supervised Contrastive | ResNet-200 | 0.041 | 0.047 | 0.061 | 0.071 | 0.086 | 0.103 |
| | | Top-1 Accuracy | Top-1 Accuracy | Top-1 Accuracy | Top-1 Accuracy | Top-1 Accuracy | Top-1 Accuracy |
| Cross Entropy | ResNet-50 | 78.24 | 65.06 | 54.96 | 47.64 | 35.93 | 25.38 |
| Cross Entropy | ResNet-200 | 80.81 | 72.89 | 65.28 | 60.55 | 52.00 | 43.11 |
| Supervised | ResNet-50 | 78.81 | 65.39 | 55.55 | 48.64 | 37.27 | 26.92 |
| Contrastive | ResNet-200 | 81.38 | 73.29 | 66.16 | 61.80 | 54.01 | 45.71 |
## 13 Two stage training on Cross Entropy
To ablate the effect of representation learning and have a two stage evaluation process we also compared against using models trained with cross-entropy loss for representation learning. We do this by first training the model with cross entropy and then re-initializing the final layer of the network randomly. In this second stage of training we again train with cross entropy but keep the weights of the network fixed. Table 7 shows that the representations learnt by cross-entropy for a ResNet-50 network are not robust and just the re-initialization of the last layer leads to large drop in accuracy and a mixed result on robustness compared to a single-stage cross-entropy training. Hence both methods of training cross-entropy are inferior to supervised contrastive loss.
## 14 Training Details
In this section we present results for various ablation experiments, disentangling the effects of (a) Optimizer and (b) Data Augmentation on downstream performance.
Table 7: Comparison between representations learnt using Supervised Contrastive and representations learnt using Cross Entropy loss with either 1 stage of training or 2 stages (representation learning followed by linear classifier).
| | Accuracy | mCE | rel. mCE |
|-------------------------|------------|-------|------------|
| Supervised Contrastive | 78.7 | 67.2 | 94.6 |
| Cross Entropy (1 stage) | 77.1 | 68.4 | 103.7 |
| Cross Entropy (2 stage) | 73.7 | 73.3 | 92.9 |
## 14.1 Optimizer
We experiment with various optimizers for the contrastive learning and training the linear classifier in various combinations. We present our results in Table 8. The LARS optimizer [59] gives us the best results to train the embedding network, confirming what has been reported by previous work [3]. With LARS we use a cosine learning rate decay. On the other hand we find that the RMSProp optimizer [50] works best for training the linear classifier. For RMSProp we use an exponential decay for the learning rate.
Table 8: Results of training the ResNet-50 architecture with AutoAugment data augmentation policy for 350 epochs and then training the linear classifier for another 350 epochs. Learning rates were optimized for every optimizer while all other hyper-parameters were kept the same.
| Contrastive Optimizer | Linear Optimizer | Top-1 Accuracy |
|-------------------------|--------------------|------------------|
| LARS | LARS | 78.2 |
| LARS | RMSProp | 78.7 |
| LARS | Momentum | 77.6 |
| RMSProp | LARS | 77.4 |
| RMSProp | RMSProp | 77.8 |
| RMSProp | Momentum | 76.9 |
| Momentum | LARS | 77.7 |
| Momentum | RMSProp | 76.1 |
| Momentum | Momentum | 77.7 |
## 14.2 Data Augmentation
We experiment with the following data augmentations:
- AutoAugment : [5] A two stage augmentation policy which is trained with reinforcement learning for Top-1 Accuracy on ImageNet.
- RandAugment : [6] A two stage augmentation policy that uses a random parameter in place of parameters tuned by AutoAugment. This parameter needs to be tuned and hence reduces the search space, while giving better results than AutoAugment.
- SimAugment : [3] An augmentation policy which applies random flips, rotations, color jitters followed by Gaussian blur. We also add an additional step where we warping the image before the Gaussian blur, which gives a further boost in performance.
- Stacked RandAugment : [49] An augmentation policy which is based on RandAugment [6] and SimAugment [3]. The strategy involves an additional RandAugment step before doing the color jitter as done in SimAugment. This leads to a more diverse set of images created by the augmentation and hence more robust training which generalizes better.
and found that AutoAugment [30] gave us the highest Top-1 accuracy on ResNet-50 for both the cross entropy loss and supervised contrastive loss. On the other hand Stacked RandAugment [49] gives us highest Top-1 accuracy on ResNet-200 for both the cross entropy loss and supervised contrastive Loss. We conjecture this is happens because Stacked RandAugment is a stronger augmentation strategy and hence needs a larger model capacity to generalize well.
We also note that AutoAugment is faster at runtime than other augmentation schemes such as RandAugment [6], SimAugment [3] or StackedRandAugment [49] and hence models trained with AutoAugment take lesser time to train. We leave experimenting with MixUp [61] or CutMix [60] as future work.
Table 9: Combinations of different data augmentations for ResNet-50 trained with optimal set of hyperparameters and optimizers. We observe that stacked RandAugment does consistently worse for all configurations due to lower capacity of ResNet-50 models. We also observe that for other augmentations that we get the best performance by using the same augmentations in both stages of training.
| Contrastive Augmentation | Linear classifier Augmentation | Accuracy |
|----------------------------|----------------------------------|------------|
| AutoAugment | AutoAugment | 78.6 |
| AutoAugment | RandAugment | 78.1 |
| AutoAugment | SimAugment | 75.4 |
| AutoAugment | Stacked RandAugment | 77.4 |
| SimAugment | AutoAugment | 76.1 |
| SimAugment | RandAugment | 75.9 |
| SimAugment | SimAugment | 77.9 |
| SimAugment | Stacked RandAugment | 76.4 |
| RandAugment | AutoAugment | 78.3 |
| RandAugment | RandAugment | 78.4 |
| RandAugment | SimAugment | 76.3 |
| RandAugment | Stacked RandAugment | 75.8 |
| Stacked RandAugment | AutoAugment | 78.1 |
| Stacked RandAugment | RandAugment | 78.2 |
| Stacked RandAugment | SimAugment | 77.9 |
| Stacked RandAugment | Stacked RandAugment | 75.9 |
Further we experiment with varying levels of augmentation magnitude for RandAugment since that has shown to affect performance when training models with cross entropy loss [6]. Fig. 7 shows that supervised contrastive methods consistently outperform cross entropy training independent of augmentation magnitude.
Figure 7: Top-1 Accuracy vs RandAugment magnitude for ResNet-50 (left) and ResNet-200 (right). We see that supervised contrastive methods consistently outperform cross entropy for varying strengths of augmentation.
<details>
<summary>Image 7 Details</summary>

### Visual Description
## Line Graphs: ResNet-50 and ResNet-200 Top-1 Accuracy vs. RandAugment Magnitude
### Overview
The image contains two line graphs comparing the **Top-1 Accuracy** of two training methods (**Supervised Contrastive** and **Cross Entropy**) across varying **RandAugment magnitudes** for two neural network architectures: **ResNet-50** (left) and **ResNet-200** (right). The graphs highlight how accuracy changes as augmentation strength increases.
---
### Components/Axes
1. **X-Axis (Horizontal)**:
- **Title**: "RandAugment magnitude"
- **Range**:
- ResNet-50: 4 to 14
- ResNet-200: 4 to 11
- **Markers**: Integer values (e.g., 4, 5, ..., 14 for ResNet-50).
2. **Y-Axis (Vertical)**:
- **Title**: "Top-1 Accuracy"
- **Range**:
- ResNet-50: 75.0 to 79.0
- ResNet-200: 77.5 to 81.0
- **Markers**: Incremental values (e.g., 75.0, 75.5, ..., 79.0 for ResNet-50).
3. **Legends**:
- **Position**: Right side of each graph.
- **Labels**:
- **Purple**: "Supervised Contrastive"
- **Blue**: "Cross Entropy"
4. **Graph Titles**:
- Left: "ResNet-50"
- Right: "ResNet-200"
---
### Detailed Analysis
#### ResNet-50 Graph
- **Supervised Contrastive (Purple)**:
- Starts at ~78.5 (x=4), fluctuates between ~77.5–78.5, and ends at ~78.5 (x=14).
- Notable dip to ~77.5 at x=10.
- **Cross Entropy (Blue)**:
- Starts at ~75.5 (x=4), rises to ~77.0 (x=10), then drops to ~76.0 (x=14).
#### ResNet-200 Graph
- **Supervised Contrastive (Purple)**:
- Starts at ~79.5 (x=4), dips to ~79.0 (x=7), then sharply rises to ~80.5 (x=11).
- **Cross Entropy (Blue)**:
- Starts at ~78.5 (x=4), peaks at ~79.0 (x=6), then declines to ~77.5 (x=11).
---
### Key Observations
1. **Supervised Contrastive** consistently outperforms **Cross Entropy** in both architectures, especially at higher RandAugment magnitudes.
2. **ResNet-200** shows a more pronounced accuracy gain for Supervised Contrastive as augmentation increases (e.g., ~79.5 → ~80.5 at x=11).
3. **Cross Entropy** peaks mid-range (x=6–10) but declines sharply at higher magnitudes, suggesting sensitivity to over-augmentation.
4. **ResNet-50** exhibits stability in Supervised Contrastive accuracy despite augmentation, while ResNet-200 shows a steeper upward trend.
---
### Interpretation
- **Robustness of Supervised Contrastive**: The method demonstrates better generalization under stronger augmentation, particularly in deeper networks (ResNet-200). This suggests it mitigates overfitting more effectively than Cross Entropy.
- **Cross Entropy Limitations**: Its decline at higher magnitudes implies it struggles with complex data distributions when combined with aggressive augmentation.
- **Architectural Impact**: ResNet-200’s deeper architecture amplifies the benefits of Supervised Contrastive, highlighting its suitability for large-scale models.
- **Practical Insight**: For tasks requiring strong augmentation (e.g., image classification with diverse datasets), Supervised Contrastive is preferable, especially with deeper networks.
</details>
## 15 Change Log
Version 1 (2020-04-23) Initial Arxiv version.
Version 2 (2020-10-22) Added analysis of different forms of supervised contrastive loss and its gradients as well as experimental results to back up the analysis. Additional tuning for better top-1 accuracy. Added transfer learning experiments. Moved accuracy vs num positives to supplementary. More heavily tuned models resulted in deterioration of ECE. Added StackedRandAugment augmentation. Added GitHub link for code. Added results vs batch size and number of training epochs. Added results for more optimizers and data augmentation strategies. Added SupCon loss hierarchy. Adjusted table reporting for clarity.
Version 3 (2020-10-13) Removed deprecated sentence from abstract.
Version 4 (2020-12-10) Fixed a few in-paper equation references incorrectly pointing to equations in the Supplementary.
Version 5 (2020-12-27) Added footnotes for authors on first page.
Version 6 (2020-03-10) Corrected sign mistake in Jensen's Inequality.