Contrastive Representation Distillation

Yonglong Tian, Dilip Krishnan, Phillip Isola

Introduction

Knowledge distillation (KD) transfers knowledge from one deep learning model (the teacher) to another (the student). The objective originally proposed by Hinton et al. (2015) minimizes the KL divergence between the teacher and student outputs. This formulation makes intuitive sense when the output is a distribution, e.g., a probability mass function over classes. However, often we instead wish to transfer knowledge about a representation. For example, in the problem of “cross-modal distillation", we may wish to transfer the representation of an image processing network to a sound (Aytar et al., 2016) or to depth (Gupta et al., 2016) processing network, such that deep features for an image and the associated sound or depth features are highly correlated. In such cases, the KL divergence is undefined.

Representational knowledge is structured – the dimensions exhibit complex interdependencies. The original KD objective introduced in (Hinton et al., 2015) treats all dimensions as independent, conditioned on the input. Let yT\mathbf{y}^{T} be the output of the teacher and yS\mathbf{y}^{S} be the output of the student. Then the original KD objective function, ψ\psi, has the fully factored form: ψ(yS,yT)=∑iϕi(yiS,yiT)\psi(\mathbf{y}^{S},\mathbf{y}^{T})=\sum_{i}\phi_{i}(\mathbf{y}^{S}_{i},\mathbf{y}^{T}_{i})In particular, in (Hinton et al., 2015), ϕi(a,b)=−alog⁡b∀i\phi_{i}(a,b)=-a\log b\quad\forall i. Such a factored objective is insufficient for transferring structural knowledge, i.e. dependencies between output dimensions ii and jj. This is similar to the situation in image generation where an L2L_{2} objective produces blurry results, due to independence assumptions between output dimensions.

To overcome this problem, we would like an objective that captures correlations and higher order output dependencies. To achieve this, in this paper we leverage the family of contrastive objectives (Gutmann & Hyvärinen, 2010; Oord et al., 2018; Arora et al., 2019; Hjelm et al., 2018). These objective functions have been used successfully in recent years for density estimation and representation learning, especially in self-supervised settings. Here we adapt them to the task of knowledge distillation from one deep network to another. We show that it is important to work in representation space, similar to recent works such as Zagoruyko & Komodakis (2016a); Romero et al. (2014). However, note that the loss functions used in those works do not explicitly try to capture correlations or higher-order dependencies in representational space.

Our objective maximizes a lower-bound to the mutual information between the teacher and student representations. We find that this results in better performance on several knowledge transfer tasks. We conjecture that this is because the contrastive objective better transfers all the information in the teacher’s representation, rather than only transferring knowledge about conditionally independent output class probabilities. Somewhat surprisingly, the contrastive objective even improves results on the originally proposed task of distilling knowledge about class probabilities, for example, compressing a large CIFAR100 network into a smaller one that performs almost as well. We believe this is because the correlations between different class probabilities contains useful information that regularizes the learning problem. Our paper forges a connection between two literatures that have evolved mostly independently: knowledge distillation and representation learning. This connection allows us to leverage strong methods from representation learning to significantly improve the SOTA on knowledge distillation. Our contributions are:

A contrastive-based objective for transferring knowledge between deep networks.

Applications to model compression, cross-modal transfer, and ensemble distillation.

Benchmarking 12 recent distillation methods; CRD outperforms all other methods, e.g., 57% average relative improvement over the original KD (Hinton et al., 2015) Average relative improvement = 1N∑i=1NAcccrdi−AcckdiAcckdi−Accvani\frac{1}{N}\sum_{i=1}^{N}\frac{Acc_{crd}^{i}-Acc_{kd}^{i}}{Acc_{kd}^{i}-Acc_{van}^{i}}, where AcccrdiAcc_{crd}^{i}, AcckdiAcc_{kd}^{i}, and AccvaniAcc_{van}^{i} represent the accuracies of CRD, KD, and vanilla training of the ii-th student model, respectively., which, surprisingly, performs the second best.

Related work

The seminal work of Buciluǎ et al. (2006) and Hinton et al. (2015) introduced the idea of knowledge distillation between large, cumbersome models into smaller, faster models without losing too much generalization power. The general motivation was that at training time, the availability of computation allows “slop" in model size, and potentially faster learning. But computation and memory constraints at inference time necessitate the use of smaller models. Buciluǎ et al. (2006) achieve this by matching output logits; Hinton et al. (2015) introduced the idea of temperature in the softmax outputs to better represent smaller probabilities in the output of a single sample. These smaller probabilities provide useful information about the learned representation of the teacher model; some tradeoff between large temperatures (which increase entropy) or small temperatures tend to provide the highest transfer of knowledge between student and teacher. The method in (Li et al., 2014) was also closely related to (Hinton et al., 2015).

Attention transfer (Zagoruyko & Komodakis, 2016a) focuses on the features maps of the network as opposed to the output logits. Here the idea is to elicit similar response patterns in the teacher and student feature maps (called “attention"). However, only feature maps with the same spatial resolution can be combined in this approach, which is a significant limitation since it requires student and teacher networks with very similar architectures. This technique achieves state of the art results for distillation (as measured by the generalization of the student network). FitNets (Romero et al., 2014) also deal with intermediate representations by using regressions to guide the feature activations of the student network. Since Zagoruyko & Komodakis (2016a) do a weighted form of this regression, they tend to perform better. Other papers (Yim et al., 2017; Huang & Wang, 2017; Kim et al., 2018; Yim et al., 2017; Huang & Wang, 2017; Ahn et al., 2019; Koratana et al., 2019) have enforced various criteria based on representations. The contrastive objective we use in this paper is the same as that used in CMC (Tian et al., 2019). But we derive from a different perspective and give a rigorous proof that our objective is a lower bound on mutual information. Our objective is also related to the InfoNCE and NCE objectives introduced in (Oord et al., 2018; Gutmann & Hyvärinen, 2010). Oord et al. (2018) use contrastive learning in the context of self-supervised representations learning. They show that their objective maximizes a lower bound on mutual information. A very related approach is used in (Hjelm et al., 2018). InfoNCE and NCE are closely related but distinct from adversarial learning (Goodfellow et al., 2014). In (Goodfellow, 2014), it is shown that the NCE objective of Gutmann & Hyvärinen (2010) can lead to maximum likelihood learning, but not the adversarial objective.

Method

The key idea of contrastive learning is very general: learn a representation that is close in some metric space for “positive” pairs and push apart the representation between “negative” pairs. Fig. 1 gives a visual explanation for how we structure contrastive learning for the three tasks we consider: model compression, cross-modal transfer and ensemble distillation.

Given two deep neural networks, a teacher fTf^{T} and a student fSf^{S}. Let xx be the network input; we denote representations at the penultimate layer (before logits) as fT(x)f^{T}(x) and fS(x)f^{S}(x) respectively. Let xix_{i} represent a training sample, and xjx_{j} another randomly chosen sample. We would like to push closer the representations fS(xi)f^{S}(x_{i}) and fT(xi)f^{T}(x_{i}) while pushing apart fS(xi)f^{S}(x_{i}) and fT(xj)f^{T}(x_{j}). For ease of notation, we define random variables SS and TT for the student and teacher’s representations of the data respectively:

Intuitively speaking, we will consider the joint distribution p(S,T)p(S,T) and the product of marginal distributions p(S)p(T)p(S)p(T), so that, by maximizing KL divergence between these distributions, we can maximize the mutual information between student and teacher representations. To setup an appropriate loss that can achieve this aim, let us define a distribution qq with latent variable CC which decides whether a tuple (fT(xi),fS(xj))(f^{T}(x_{i}),f^{S}(x_{j})) was drawn from the joint (C=1C=1) or product of marginals (C=0C=0):

Now, suppose in our data, we are given 11 congruent pair (drawn from the joint distribution, i.e. the same input provided to TT and SS) for every NN incongruent pairs (drawn from the product of marginals; independent randomly drawn inputs provided to TT and SS). Then the priors on the latent CC are:

By simple manipulation and Bayes’ rule, the posterior for class C=1C=1 is given by:

Next, we observe a connection to mutual information as follows:

Then taking expectation on both sides w.r.t. p(T,S)p(T,S) (equivalently w.r.t. q(T,S∣C=1)q(T,S|C=1)) and rearranging, gives us:

We term hh the critic since we will be learning representations that optimize the critic’s score. Assuming sufficiently expressive hh, h∗(T,S)=q(C=1∣T,S)h^{*}(T,S)=q(C=1|T,S) (via Gibbs’ inequality; see Sec. 6.2.1 for proof), so we can rewrite Eq. 9 in terms of h∗h^{*}:

Therefore, we see that the optimal critic is an estimator whose expectation lower-bounds mutual information. We wish to learn a student that maximizes the mutual information between its representation and the teacher’s, suggesting the following optimization problem:

An apparent difficulty here is that the optimal critic h∗h^{*} depends on the current student. We can circumvent this difficulty by weakening the bound in (12) to:

which demonstrates that we may jointly optimize fSf^{S} at the same time as we learn hh. We note that due to (16), fS∗=arg max⁡fSLcritic(h)f^{S*}=\operatorname*{arg\,max}_{f^{S}}\mathcal{L}_{\textit{critic}}(h), for any hh, also is a representation that optimizes a lower-bound (a weaker one) on mutual information, so our formulation does not rely on hh being optimized perfectly.

We may choose to represent hh with any family of functions that satisfy h:{T,S}→h:\{\mathcal{T},\mathcal{S}\}\rightarrow. In practice, we use the following:

where MM is the cardinality of the dataset and τ\tau is a temperature that adjusts the concentration level. In practice, since the dimensionality of SS and TT may be different, gSg^{S} and gTg^{T} linearly transform them into the same dimension and further normalize them by L\mathcal{L}-2 norm before the inner product. The form of Eq. (18) is inspired by NCE (Gutmann & Hyvärinen, 2010; Wu et al., 2018). Our formulation is similar to the InfoNCE loss (Oord et al., 2018) in that we maximize a lower bound on the mutual information. However we use a different objective and bound, which in our experiments we found to be more effective than InfoNCE.

Implementation. Theoretically, larger NN in Eq. 16 leads to tighter lower bound on MI. In practice, to avoid using very large batch size, we follow Wu et al. (2018) and implement a memory buffer that stores latent features of each data sample computed from previous batches. Therefore, during training we can efficiently retrieve a large number of negative samples from the memory buffer.

2 Knowledge Distillation Objective

The knowledge distillation loss was proposed in Hinton et al. (2015). In addition to the regular cross-entropy loss between the student output ySy^{S} and one-hot label yy, it asks the student network output to be as similar as possible to the teacher output by minimizing the cross-entropy between their output probabilities. The complete objective is:

where ρ\rho is the temperature, α\alpha is a balancing weight, and σ\sigma is softmax function. H(σ(zT/ρ),σ(zS/ρ))H(\sigma(z^{T}/\rho),\sigma(z^{S}/\rho)) is further decomposed into KL(σ(zT/ρ)∣σ(zS/ρ))KL(\sigma(z^{T}/\rho)|\sigma(z^{S}/\rho)) and a constant entropy H(σ(zT/ρ))H(\sigma(z^{T}/\rho)).

3 Cross-Modal Transfer Loss

In the cross-modal transfer task shown in Fig. 1(b), a teacher network is trained on a source modality X\mathcal{X} with large-scale labeled dataset. We then wish to transfer the knowledge to a student network, but adapt it to another dataset or modality Y\mathcal{Y}. But the features of the teacher network are still valuable to help with learning of the student on another domain. In this transfer task, we use the contrastive loss Eq. 10 to match the features of the student and teacher. Additionally, we also consider other distillation objectives, such as KD discussed in previous section, Attention Transfer Zagoruyko & Komodakis (2016a) and FitNet Romero et al. (2014). Such transfer is conducted on a paired but unlabeled dataset D={(xi,yi)∣i=1,...,L,xi∈X,yi∈Y}D=\{(x_{i},y_{i})|i=1,...,L,x_{i}\in\mathcal{X},y_{i}\in\mathcal{Y}\}. In this scenario, there is no true label yy of such data for the original training task on the source modality, and therefore we ignore the H(y,yS)H(y,y^{S}) term in all objectives that we test. Prior cross-modal work Aytar et al. (2016); Hoffman et al. (2016b; a) uses either L2L_{2} regression or KL-divergence.

4 Ensemble Distillation Loss

In the case of ensemble distillation shown in 1(c), we have M>1M>1 teacher networks, fTi{f^{T_{i}}} and one student network fSf^{S}. We adopt the contrastive framework by defining multiple pair-wise contrastive losses between features of each teacher network fTif^{T_{i}} and the student network fSf^{S}. These losses are summed together to give the final loss (to be minimized):

Experiments

We evaluate our contrastive representation distillation (CRD) framework in three knowledge distillation tasks: (a) model compression of a large network to a smaller one; (b) cross-modal knowledge transfer; (c) ensemble distillation from a group of teachers to a single student network.

Datasets (1) CIFAR-100 (Krizhevsky & Hinton, 2009) contains 50K training images with 0.5K images per class and 10K test images. (2) ImageNet (Deng et al., 2009) provides 1.2 million images from 1K classes for training and 50K for validation. (3) STL-10 (Coates et al., 2011) consists of a training set of 5K labeled images from 10 classes and 100K unlabeled images, and a test set of 8K images. (4) TinyImageNet (Deng et al., 2009) has 200 classes, each with 500 training images and 50 validaton images. (5) NYU-Depth V2 (Silberman et al., 2012) consists of 1449 indoor images, each labeled with dense depth image and semantic map.

Setup We experiment on CIFAR-100 and ImageNet with student-teacher combinations of various capacity, such as ResNet (He et al., 2016) or Wide ResNet (WRN) (Zagoruyko & Komodakis, 2016b).

Results on CIFAR100 Table 1 and Table 2 compare top-1 accuracies of different distillation objectives (for details, see Section 6.1). Table 1 investigates students and teachers of the same architectural style, while Table 2 focuses on students and teachers from different architectures. We observe that our loss, which we call CRD (Contrastive Representation Distillation), consistently outperforms all other distillation objectives, including the original KD (an average relative improvement of 57%). Surprisingly, we found that KD works pretty well and none of the other methods consistently outperforms KD on their own. Another observation is that, while switching the teacher student combinations from same to different architectural styles, methods that distill intermediate representations tend to perform worse than methods that distill from the last several layers. For example, the Attention Transfer (AT) and FitNet methods even underperform the vanilla student. In contrast, PKT, SP and CRD that operate on last several layers performs well. This might because, architectures of different styles have their own solution paths mapping from the input to the output, and enforcing the mimic of intermediate representations thus might conflict with such inductive bias.

Capturing inter-class correlations. In Fig. 2, we compute the difference between the correlation matrices of the teacher’s and student’s logits; for three different students: vanilla student without distillation, trained by AT, KD or CRD (our method). It is clear that the CRD objective captures the most correlation structure in the logit as shown by the smaller differences between teacher and student. This is reflected in reduced error rates.

Results on ImageNet For a fair comparison with Zagoruyko & Komodakis (2016a) and Lan et al. (2018), we adopt the models from these papers, ResNet-34 as the teacher and ResNet-18 as the student. As shown in Table 3, the gap of top-1 accuracy between the teacher and student is 3.56%3.56\%. The AT method reduces this gap by 0.95%0.95\%, while ours narrow it by 1.42%1.42\%, a 50%50\% relative improvement. Results on ImageNet validates the scalability of our CRD.

Transferability of representations We are interested in representations, and a primary goal of representation learning is to acquire general knowledge, that is, knowledge that transfers to tasks or datasets that were unseen during training. Therefore, we test if the representations we distill transfer well. A WRN-16-2 student either distills from a WRN-40-2 teacher, or is trained from scratch on CIFAR100. The student serves as a frozen representation extractor (the layer prior to the logit) for images from STL-10 or TinyImageNet (all images downsampled to 32x32). We then train a linear classifier to perform 10-way (for STL-10) or 200-way (for TinyImageNet) classification to quantify the transferability of the representations. We compare CRD with multiple baselines such as KD and AT in Table 4. In this setting, all distillation methods except FitNet improve transferability of the learned representations on both STL-10 and TinyImageNet. While the teacher performs the best on the original CIFAR100 dataset, its representations transfer the worst to the other two datasets. This is perhaps the teacher’s representations are biased towards the original task. Surprisingly, the student with CRD+KD distillation not only matches its teacher on CIFAR100 (see Table 4), but also transfers much better than the teacher, e.g., 3.6%\% improvement (STL-10) and 4.1%\% on TinyImageNet.

2 Cross-modal transfer

We consider a practical setting where modality X\mathcal{X} has large amount of labeled data while modality Y\mathcal{Y} does not. Transfering knowledge from X\mathcal{X} to Y\mathcal{Y} is a common challenge. For example, while large-scale RGB datasets are easily accessible, other modalities such as depth images are much harder to label at scale but have wide applications. We demonstrate the potential of CRD for cross-modal transfer in two scenarios: (a) transfer from luminance to chrominance; (b) transfer from RGB to depth images.

Transferring from Luminance to Chrominace. We work on LabLab color space, where LL represents Luminance and abab Chrominance. We first train an LL network on TinyImageNet with supervision. Then we transfer knowledge from this LL network to abab network on the unlabeled set of STL-10 with different objectives, including FitNet, KD, KD+AT and CRD. For convenience, we use the same architecture for student and teacher (they can also be different). Finally, we evaluate the knowlege of abab network by two means: (1) linear probing: we freeze the abab network and train a linear classifier on top of features from different layers to perform 10-way classification on STL-10 abab images. This is a common practice (Alain & Bengio, 2016; Zhang et al., 2017) to evaluate the quality of network representations; (b) fully finetuning: we fully finetune the abab network to obtain the best accuracy. We also use as a baseline the abab network that is randomly initialized rather than distilled. Architectures investigated include AlexNet, ResNet-18 and ResNet-50. The results shown in Figure 3 show that CRD is more efficient for transferring inter-modal knowledge than other methods. Besides, we also note KD+AT does not improve upon KD, possibly because attention of luminance and chrominance are different and harder to transfer.

Transferring from RGB to Depth. We transfer the knowledge of a ResNet-18 teacher pretrained on ImageNet to a 5-layer student CNN operating on depth images. We follow a similar transferring procedure on NYU-Depth training set, except that we use a trick of contrasting between local and global features, proposed by Hjelm et al. (2018), to overcome the problem of insufficient data samples in the depth domain. Then the student network is further trained to predict semantic segmentation maps from depth images. We note that both knowledge transfer and downstream training are conducted on the same set of images, i.e., the training set. Table 5 reports the average pixel prediction accuracy and mean Intersection-over-Union across all classes. All distillation methods can transfer knowledge from the RGB ResNet to the depth CNN. FitNet surpasses KD and KD+AT. CRD significantly outperforms all other methods.

3 Distillation from an ensemble

Better classification performance is often achieved by ensembles of deep networks, but these are usually too expensive for inference time, and distillation into a single network is a desirable task. We investigate the KL-divergence based KD and our CRD for this task, using the loss of Sec. 21. The network structures of each teacher and student are identical here, but an ensemble of multiple teachers can still provide rich knowledge for the student. To compare between KD and CRD on CIFAR100 dataset, we use WRN-16-2 and ResNet-20, whose single model error rates are 26.7%26.7\% and 30.9%30.9\% respectively. The results of distillation are presented in Figure 4, where we vary the number of ensembled teachers. CRD with 8 teachers decreases the error rate of WRN-16-2 to 23.7%23.7\% and ResNet20 to 28.3%28.3\%. In addition, CRD works consistently better than KD in all settings we test. These observations suggest that CRD is capable of distilling an ensemble of models into a single one which performs significantly better than a model of the same size that is trained from scratch.

4 Ablative Study

InfoNCE v.s. Ours. InfoNCE (Oord et al., 2018) is an alternative contrastive objective which select a single positive out from a set of distractors via a softmax function. We compare InfoNCE with our contrastive objective Eq 18, when using the same number of negatives. The last two rows in Table 6 show that our objective outperforms InfoNCE in 4 out of 5 teacher-student combinations.

Negative Sampling. In this paper, we consider two negative sampling plocies when giving an anchor xix_{i}: (1) xjj≠i{x_{j}}_{j\neq i} for the unsupervised case when we have no labels, or (2) xjyj≠yi{x_{j}}_{y_{j}\neq y_{i}} for supervised case, where yiy_{i} represents the label associated with sample xix_{i}. One might imagine that the first sampling strategy will increase the intra-class variance as we may push apart positives and negatives from the same underlying class, while the second would not. We quantitatively measure and report the gap between these two strategies in Table 6, which shows that the classification accuracy by the second sampling strategy is 0.81%0.81\% higher for our objective and 0.62%0.62\% higher for InfoNCE than the first one.

5 Hyper-parameters and computation overhead

There are two main hyper-parameters in our contrastive objectives: (1) the number of negative samples NN in Eq. 18, and (2) temperature τ\tau which modulates the softmax probability. We adopt WRN-40-2 as teacher and WRN-16-2 as student for parameter analysis. Experiments are conducted on CIFAR100 and the results are shown in Figure 5.

Number of negatives NN We have validated different NN: 16,64,256,1024,4096,1638416,64,256,1024,4096,16384. As shown in Figure 5(a), increasing NN leads to improved performance. However, the difference of error rate between N=4096N=4096 and N=16384N=16384 is less than 0.1%0.1\%. Therefore, we use N=16384N=16384 for reporting the accuracy while in practice N=4096N=4096 should suffice.

Temperature τ\tau We varied τ\tau between 0.020.02 and 0.30.3. As Figure 5(b) illustrates, both extremely high or low temperature lead to a sub-optimal solution. In general, temperatures between 0.050.05 and 0.20.2 work well on CIFAR100. All experiments but those on ImageNet use a temperature of 0.10.1. For ImageNet, we use τ=0.07\tau=0.07. The optimal temperature may vary across different datasets and require further tuning.

Computational Cost We use ResNet-18 on ImageNet for illustration. CRD uses extra 260260 MFLOPs, which is about 12%12\% of the original 22 GFLOPs. In practice, we did not notice significant difference of training time on ImageNet (e.g., 1.75 epochs/hour v.s. 1.67 epochs/hour on two Titan-V GPUs). The memory bank for storing all 128128-d features of ImageNet only costs around 600600MB memory, and therefore we store it on GPU memory.

Conclusion

We have developed a novel technique for neural network distillation, using the concept of contrastive objectives, which are usually used for representation learning. We experimented with our objective on a number of applications such as model compression, cross-modal transfer and ensemble distillation, outperforming other distillation objectives by significant margins in all these tasks. Our contrastive objective is the only distillation objective that consistently outperforms knowledge distillation across a wide variety of knowledge transfer tasks. Prior objectives only surpass KD when combined with KD. Contrastive learning is a simple and effective objective with practical benefits.

We thank Baoyun Peng for providing the code of CC (Peng et al., 2019) and Frederick Tung for verifying our reimplementation of SP (Tung & Mori, 2019). This research was supported in part by Google Cloud and iFlytek.

References

Appendix

We compare to the following other state-of-the-art methods from the literature:

Knowledge Distillation (KD) (Hinton et al., 2015)

Fitnets: Hints for thin deep nets (Romero et al., 2014)

Attention Transfer (AT) (Zagoruyko & Komodakis, 2016a)

Similarity-Preserving Knowledge Distillation (SP) (Tung & Mori, 2019);

Correlation Congruence (CC) (Peng et al., 2019)

Variational information distillation for knowledge transfer (VID) (Ahn et al., 2019)

Relational Knowledge Distillation (RKD) (Park et al., 2019)

Learning deep representations with probabilistic knowledge transfer (PKT) (Passalis & Tefas, 2018)

Knowledge transfer via distillation of activation boundaries formed by hidden neurons (AB) (Heo et al., 2019)

Paraphrasing complex network: Network compression via factor transfer (FT) (Kim et al., 2018)

A gift from knowledge distillation: Fast optimization, network minimization and transfer learning (FSP) (Yim et al., 2017)

Like what you like: Knowledge distill via neuron selectivity transfer (NST) (Huang & Wang, 2017)

2 Contrastive loss – details

We wish to model some true distribution q(C∣T=t,S=s)q(C|T=t,S=s). CC is a binary variable, so we can model q(C∣T=t,S=s)q(C|T=t,S=s) as a Bernoulli distribution with a single parameter h(S=s,T=t)∈h(S=s,T=t)\in, defining for convenience h′(C=1,S=s,T=t)=h(S=s,T=t)h^{\prime}(C=1,S=s,T=t)=h(S=s,T=t) and h′(C=0,S=s,T=t)=1−h(S=s,T=t)h^{\prime}(C=0,S=s,T=t)=1-h(S=s,T=t). The log likelihood function is:

By Gibbs’ inequality, the max likelihood fit is h′(C=c,S=s,T=t)=q(C=c∣S=s,T=t)h^{\prime}(C=c,S=s,T=t)=q(C=c|S=s,T=t), which also implies that h(S=s,T=t)=q(C=1∣S=s,T=t)h(S=s,T=t)=q(C=1|S=s,T=t).

We now demonstrate that our objective in Eq. (10) is proportional to a summation over terms Eq. (22) for all s∈Ss\in\mathcal{S} and t∈Tt\in\mathcal{T}.

Notice that (26) is proportional to Eq. (10) from the main paper. For sufficiently expressive hh, then, each term inside the expectation in Eq. (23) can be maximized, resulting in h∗(T=t,S=s)=q(C=1∣T=t,S=t)h^{*}(T=t,S=s)=q(C=1|T=t,S=t) for all ss and tt. ∎

3 Network Architectures

Wide Residual Network (WRN) (Zagoruyko & Komodakis, 2016b). WRN-d-w represnets wide resnet with depth dd and width factor ww.

resnet (He et al., 2016). We use resnet-d to represent cifar-style resnet with 3 groups of basic blocks, each with 1616, 3232, and 6464 channels respectively. In our experiments, resnet8 x4 and resnet32 x4 indicate a 4 times wider network (namely, with 6464, 128128, and 256256 channels for each of the block)

ResNet (He et al., 2016). ResNet-d represents ImageNet-style ResNet with Bottleneck blocks and more channels.

MobileNetV2 Sandler et al. (2018). In our experiments, we use a width multiplier of 0.50.5.

vgg (Simonyan & Zisserman, 2014). the vgg net used in our experiments are adapted from its original ImageNet counterpart.

ShuffleNetV1 (Zhang et al., 2018a), ShuffleNetV2 (Tan et al., 2019). ShuffleNets are proposed for efficient training and we adapt them to input of size 32x32.

4 Implementation Details

All methods evaluated in our experiments use SGD.

For CIFAR-100, we initialize the learning rate as 0.05, and decay it by 0.1 every 30 epochs after the first 150 epochs until the last 240 epoch. For MobileNetV2, ShuffleNetV1 and ShuffleNetV2, we use a learning rate of 0.01 as this learning rate is optimal for these models in a grid search, while 0.05 is optimal for other models.

For ImageNet, we follow the standard PyTorch practice but train for 10 more epochs. Batch size is 64 for CIFAR-100 or 256 for ImageNet.

The student is trained by a combination of cross-entropy classification objective and a knowledge distillation objective, shown as follows:

For the weight balance factor β\beta, we directly use the optimal value from the original paper if it is specified, or do a grid search with teacher WRN-40-2 and student WRN-16-2. This results in the following list of β\beta used for different objectives:

Fitnets (Romero et al., 2014): β=100\beta=100

AT (Zagoruyko & Komodakis, 2016a): β=1000\beta=1000

RKD (Park et al., 2019): β1=25\beta_{1}=25 for distance and β2=50\beta_{2}=50 for angle. For this loss, we combine both term following the original paper.

PKT (Passalis & Tefas, 2018): β=30000\beta=30000

AB (Heo et al., 2019): β=0\beta=0, distillation happens in a separate pre-training stage where only distillation objective applies.

FSP (Yim et al., 2017): β=0\beta=0, distillation happens in a separate pre-training stage where only distillation objective applies.

CRD: β=0.8\beta=0.8, in general β∈[0.5,1.5]\beta\in[0.5,1.5] works reasonably well.

For KD(Hinton et al., 2015), we follow Eq. 20 and set α=0.9\alpha=0.9 and T=4T=4.

5 Visualization of the correlation discrepancy

We visualize the correlation discrepancy for different distillation objectives across various combinations of student and teacher networks. As shown in Fig. 6, our contrastive distillation objective siginificantly outperforms other objectives, in terms of minimizing the correlation discrepancy between student and teacher networks. The normalized correlation coefficients are computed at the logit layer.

6 Combining different distillation objectives

Table 7 shows the effect of combining various objectives with KD. Most methods is able to slightly outperform KD after this combination. We also the check the compatibility of our distillation objective with KD and PKT. The combination of CRD and KD/PKT further improves over single CRD objective.

7 Additional results on Transferability of representations

In addtion to Table 4 shown in the main text, we also evaluate the transferabilit of the representations of various other distillation methods and summarize the results in Table 8. In general, CRD achieves the best transferring accuracy in 7 out of 10 settings.

8 Deep Mutual Learning Setting

In (Zhang et al., 2018b), a Deep Mutual Learning setting was proposed where the teacher and student networks are trained simultaneously rather than sequentially. The benefit is that not only the student networks but also the teacher models will be improved. Here we investigate the possibility of incorporating different distillation objectives into this training framework. The results are summarizied in Table 9. We observe that in general logit based distillation methods is better than non-logit based distillation methods in this setting, i.e., KD performs the best. We conjecture that during the mutual training phase, KD performs like an advanced label smoothing regularization and does not require the logit to be very accurate. But the feature-based distillation methods are hard to learn knowledge from the teacher model when it is handicapped. On the other hand, we notice that the combination of KD and CRD leads to better performance on the student side, as shown in the last row of Table 9.

9 Standard Deviation for Results on CIFAR-100 Benchmark

The standard deviation over multiple runs on CIFAR-100 benchmark is provided in Table 10 for student and teacher models of the same architectural type, and in Table 11 for student and teacher models of different architectural types.