S ELF - ENSEMBLING FOR VISUAL DOMAIN ADAPTATION
This paper explores the use of self-ensembling for visual domain adaptation problems.
Our technique is derived from the mean teacher variant (Tarvainen &
Valpola (2017)) of temporal ensembling (Laine & Aila (2017)), a technique that achieved state of the art results in the area of semi-supervised learning.
We introduce a number of modiﬁcations to their approach for challenging domain adaptation scenarios and evaluate its effectiveness.
Our approach achieves state of the art results in a variety of benchmarks, including our winning entry in the VISDA2017 visual domain adaptation challenge.
In small image benchmarks, our algorithm not only outperforms prior art, but can also achieve accuracy that is close to that of a classiﬁer trained in a supervised fashion.
I NTRODUCTION
The strong performance of deep learning in computer vision tasks comes at the cost of requiring large datasets with corresponding ground truth labels for training.
Such datasets are often expensive to produce, owing to the cost of the human labour required to produce the ground truth labels.
Semi-supervised learning is an active area of research that aims to reduce the quantity of ground truth labels required for training.
It is aimed at common practical scenarios in which only a small subset of a large dataset has corresponding ground truth labels.
Unsupervised domain adaptation is a closely related problem in which one attempts to transfer knowledge gained from a labeled source dataset to a distinct unlabeled target dataset, within the constraint that the objective ( e g .digit classiﬁcation) must remain the same.
Domain adaptation offers the potential to train a model using labeled synthetic data – that is often abundantly available – and unlabeled real data.
The scale of the problem can be seen in the VisDA-17 domain adaptation challenge images shown in Figure 1.
We will present our winning solution in Section 4.
Recent work (Tarvainen & Valpola (2017)) has demonstrated the effectiveness of self-ensembling with random image augmentations to achieve state of the art performance in semi-supervised learning benchmarks.
We have developed the approach proposed by Tarvainen & Valpola (2017) to work in a domain adaptation scenario.
We will show that this can achieve excellent results in speciﬁc small image domain adaptation benchmarks.
More challenging scenarios, notably MNIST → SVHN and the
VisDA-17 domain adaptation challenge required further modiﬁcations.
To this end, we developed conﬁdence thresholding and class balancing that allowed us to achieve state of the art results in a variety of benchmarks, with some of our results coming close to those achieved by traditional supervised learning.
Our approach is sufﬁciently ﬂexble to be applicable to a variety of network architectures, both randomly initialized and pre-trained.
Our paper is organised as follows; in Section 2 we will discuss related work that provides context and forms the basis of our technique; our approach is described in Section 3 with our experiments and results in Section 4; and ﬁnally we present our conclusions in Section 5. [Figure]
R ELATED WORK
In this section we will cover self-ensembling based semi-supervised methods that form the basis of our approach and domain adaptation techniques to which our work can be compared.
2. S ELF - ENSEMBLING FOR SEMI - SUPERVISED LEARNING
Recent work based on methods related to self-ensembling have achieved excellent results in semisupervised learning scenarious.
A neural network is trained to make consistent predictions for unsupervised samples under different augmentation Sajjadi et al.
dropout and noise conditions or through the use of adversarial training Miyato et al.
We will focus in particular on the self-ensembling based approaches of Laine & Aila (2017) and Tarvainen & Valpola (2017) as they form the basis of our approach.
Laine & Aila (2017) present two models; their Π -model and their temporal model.
The Π -model passes each unlabeled sample through a classiﬁer twice, each time with different dropout, noise and image translation parameters.
Their unsupervised loss is the mean of the squared difference in class probability predictions resulting from the two presentations of each sample.
Their temporal model maintains a per-sample moving average of the historical network predictions and encourages subsequent predictions to be consistent with the average.
Their approach achieved state of the art results in the SVHN and CIFAR-10 semi-supervised classiﬁcation benchmarks.
Tarvainen & Valpola (2017) further improved on the temporal model of Laine & Aila (2017) by using an exponential moving average of the network weights rather than of the class predictions.
Their approach uses two networks; a student network and a teacher network, where the student is trained using gradient descent and the weigthts of the teacher are the exponential moving average of those of the student.
The unsupervised loss used to train the student is the mean square difference between the predictions of the student and the teacher, under different dropout, noise and image translation parameters.
2. D OMAIN ADAPTATION
There is a rich body of literature tackling the problem of domain adaptation.
We focus on deep learning based methods as these are most relevant to our work.
Auto-encoders are unsupervised neural network models that reconstruct their input samples by ﬁrst encoding them into a latent space and then decoding and reconstructing them.
Ghifary et al.
(2016) describe an auto-encoder model that is trained to reconstruct samples from both the source and target domains, while a classiﬁer is trained to predict labels from domain invariant features present in the latent representation using source domain labels.
Bousmalis et al.
(2016) reckognised that samples from disparate domains have distinct domain speciﬁc characteristics that must be represented in the latent representation to support effective reconstruction.
They developed a split model that separates the latent representation into shared domain invariant features and private features speciﬁc to the source and target domains.
Their classiﬁer operates on the domain invariant features only.
Ganin & Lempitsky (2015) propose a bifurcated classiﬁer that splits into label classiﬁcation and domain classiﬁcation branches after common feature extraction layers.
A gradient reversal layer is placed between the common feature extraction layers and the domain classiﬁcation branch; while the domain classiﬁcation layers attempt to determine which domain a sample came from the gradient reversal operation encourages the feature extraction layers to confuse the domain classiﬁer by extracting domain invariant features.
An alternative and simpler implementation described in their appendix minimises the label cross-entropy loss in the feature and label classiﬁcation layers, minimises the domain cross-entropy in the domain classiﬁcation layers but maximises it in the feature layers.
The model of Tzeng et al.
(2017) runs along similar lines but uses separate feature extraction sub-networks for source and domain samples and train the model in two distinct stages.
Saito et al.
(2017a) use tri-training (Zhou & Li (2005)); feature extraction layers are used to drive three classiﬁer sub-networks.
The ﬁrst two are trained on samples from the source domain, while a weight similarity penalty encourages them to learn different weights.
Pseudo-labels generated for target domain samples by these source domain classiﬁers are used to train the ﬁnal classiﬁer to operate on the target domain.
Generative Adversarial Networks (GANs; Goodfellow et al.
(2014)) are unsupervised models that consist of a generator network that is trained to generate samples that match the distribution of a dataset by fooling a discriminator network that is simultaneously trained to distinguish real samples from generates samples.
Some GAN based models – such as that of Sankaranarayanan et al.
(2017) – use a GAN to help learn a domain invariant embedding for samples.
Many GAN based domain adaptation approaches use a generator that transforms samples from one domain to another.
Bousmalis et al.
(2017) propose a GAN that adapts synthetic images to better match the characteristics of real images.
Their generator takes a synthetic image and noise vector as input and produces an adapted image.
They train a classiﬁer to predict annotations for source and adapted samples alonside the GAN, while encouraing the generator to preserve aspects of the image important for annotation.
The model of Shrivastava et al.
(2017) consists of a reﬁner network (in the place of a generator) and discriminator that have a limited receptive ﬁeld, limiting their model to making local changes while preserving ground truth annotations.
The use of reﬁned simulated images with corresponding ground truths resulted in improved performance in gaze and hand pose estimation.
Russo et al.
(2017) present a bi-directional GAN composed of two generators that transform samples from the source to the target domain and vice versa.
They transform labelled source samples to the target domain using one generator and back to the source domain with the other and encourage the network to learn label class consistency.
This work bears similarities to CycleGAN, by Zhu et al.
A number of domain adaptation models maximise domain confusion by minimising the difference between the distributions of features extracted from source and target domains.
Deep CORAL Sun & Saenko (2016) minimises the difference between the feature covariance matrices for a mini-batch of samples from the source and target domains.
Tzeng et al.
(2014) and Long et al.
(2015) minimise the Maximum Mean Discrepancy metric Gretton et al.
Li et al.
(2016) described adaptive batch normalization , a variant of batch normalization (Ioffe & Szegedy (2015)) that learns separate batch normalization statistics for the source and target domains in a two-pass process, establishing new state-of-the-art results.
In the ﬁrst pass standard supervised learning is used to train a classiﬁer for samples from the source domain.
In the second pass, normalization statistics for target domain samples are computed for each batch normalization layer in the network, leaving the network weights as they are.
M ETHOD
Our model builds upon the mean teacher semi-supervised learning model of Tarvainen & Valpola (2017), which we will describe.
Subsequently we will present our modiﬁcations that enable domain adaptation.
The structure of the mean teacher model of Tarvainen & Valpola (2017) – also discussed in section 2.1 – is shown in Figure 2a.
The student network is trained using gradient descent, while the weights of the teacher network are an exponential moving average of those of the student.
During training each input sample x i is passed through both the student and teacher networks, generating predicted class probability vectors z i (student) and ˜ z i (teacher).
Different dropout, noise and image translation parameters are used for the student and teacher pathways.
During each training iteration a mini-batch of samples is drawn from the dataset, consisting of both labeled and unlabeled samples.
The training loss is the sum of a supervised and an unsupervised component.
The supervised loss is cross-entropy loss computed using z i (student prediction).
It is masked to 0 for unlabeled samples for which no ground truth is available.
The unsupervised component is the self-ensembling loss.
It penalises the difference in class predictions between student ( z i ) and teacher ( ˜ z i ) networks for the same input sample.
It is computed using the mean squared difference class probability z i and ˜
z i .
Laine & Aila (2017) and Tarvainen & Valpola (2017) found that it was necessary to apply a timedependent weighting to the unsupervised loss during training in order to prevent the network from getting stuck in a degenerate solution that gives poor classiﬁcation performance.
They used a function that follows a Gaussian curve from 0 to 1 during the ﬁrst 80 epochs.
In the following subsections we will describe our contributions in detail along with the motivations for introducing them.
3. A DAPTING TO DOMAIN ADAPTATION
We minimise the same loss as in Tarvainen & Valpola (2017); we apply cross-entropy loss to labeled source samples and unsupervised self-ensembling loss to target samples.
As in Tarvainen & Valpola (2017), self-ensembling loss is computed as the mean-squared difference between predictions produced by the student ( z Ti ) and teacher ( ˜ z Ti ) networks with different augmentation, dropout and noise parameters.
The models of Tarvainen & Valpola (2017) and of Laine & Aila (2017) were designed for semisupervised learning problems in which a subset of the samples in a single dataset have ground truth labels.
During training both models mix labeled and unlabeled samples together in a minibatch.
In contrast, unsupervised domain adaptation problems use two distinct datasets with different underlying distributions; labeled source and unlabeled target.
Our variant of the mean teacher model – shown in Figure 2b – has separate source ( X Si ) and target ( X Ti ) paths.
Inspired by the work of Li et al.
, we process mini-batches from the source and target datasets separately (per iteration) so that batch normalization uses different normalization statistics for each domain during training.
We do not use the approach of Li et al.
(2016) as-is, as they handle the source and target datasets separtely in two distinct training phases, where our approach must train using both simultaneously.
We also do not maintain separate exponential moving averages of the means and variances for each dataset for use at test time.
As seen in the ‘MT+TF’ row of Table 1, the model described thus far achieves state of the art results in 5 out of 8 small image benchmarks.
The MNIST → SVHN, STL → CIFAR-10 and Syn-digits →
SVHN benchmarks however require additional modiﬁcations to achieve good performance.
3. C ONFIDENCE THRESHOLDING
We found that replacing the Gaussian ramp-up factor that scales the unsupervised loss with conﬁdence thresholding stabilized training in more challenging domain adaptation scenarios.
For each unlabeled sample x Ti the teacher network produces the predicted class probabilty vector ˜
z
Tij – where j is the class index drawn from the set of classes C – from which we compute the conﬁdence ˜ f
Ti = max j ∈ C
(˜ z Tij ) ; the predicted probability of the predicted class of the sample.
If ˜ f
Ti is below the conﬁdence threshold (a parameter search found 0.968 to be an effective value for small image benchmarks), the self-ensembling loss for the sample x
i is masked to 0.
Our working hypothesis is that conﬁdence thresholding acts as a ﬁlter, shifting the balance in favour of the student learning correct labels from the teacher.
While high network prediction conﬁdence does not guarantee correctness there is a positive correlation.
Given the tolerance to incorrect labels reported by Laine & Aila (2017), we believe that the higher signal-to-noise ratio underlies the success of this component of our approach.
The use of conﬁdence thresholding achieves a state of the art results in the STL → CIFAR-10 and
Syn-digits → SVHN benchmarks, as seen in the ‘MT+CT+TF’ row of Table 1.
While conﬁdence thresholding can result in very slight reductions in performance (see the MNIST ↔ USPS and SVHN → MNIST results), its ability to stabilise training in challenging scenarios leads us to recommend it as a replacement for the time-dependent Gaussian ramp-up used in Laine & Aila (2017).
3. D ATA AUGMENTATION
We explored the effect of three data augmentation schemes in our small image benchmarks (section 4.1).
Our minimal scheme (that should be applicable in non-visual domains) consists of Gaussian noise (with σ = 0 .
1 ) added to the pixel values.
The standard scheme (indicated by ‘TF’ in
Table 1) was used by Laine & Aila (2017) and adds translations in the interval [ − 2 , 2] and horizontal ﬂips for the CIFAR-10 ↔ STL experiments.
The afﬁne scheme (indicated by ‘TFA’) adds random afﬁne transformations deﬁned by the matrix in (1), where N (0 , 0 . 1) denotes a real value drawn from a normal distribution with mean 0 and standard deviation 0 .
[Equation]
The use of translations and horizontal ﬂips has a signiﬁcant impact in a number of our benchmarks.
It is necessary in order to outpace prior art in the MNIST ↔ USPS and SVHN → MNIST benchmarks and improves performance in the CIFAR-10 ↔ STL benchmarks.
The use of afﬁne augmentation can improve performance in experiments involving digit and trafﬁc sign recognition datasets, as seen in the ‘MT+CT+TFA’ row of Table 1.
In contrast it can impair performance when used with photographic datasets, as seen in the the STL → CIFAR-10 experiment.
It also impaired performance in the VisDA-17 experiment (section 4.2).
3. C LASS BALANCE LOSS
With the adaptations made so far the challenging MNIST → SVHN benchmark remains undefeated due to training instabilities.
During training we noticed that the error rate on the SVHN test set decreases at ﬁrst, then rises and reaches high values before training completes.
We diagnosed the problem by recording the predictions for the SVHN target domain samples after each epoch.
The rise in error rate correlated with the predictions evolving toward a condition in which most samples are predicted as belonging to the ‘1’ class; the most populous class in the SVHN dataset.
We hypothesize that the class imbalance in the SVHN dataset caused the unsupervised loss to reinforce the ‘1’ class more often than the others, resulting in the network settling in a degenerate local minimum.
Rather than distinguish between digit classes as intended it seperated MNIST from SVHN samples and assigned the latter to the ‘1’ class. [Figure]
We addressed this problem by introducing a class balance loss term that penalises the network for making predictions that exhibit large class imbalance.
For each target domain mini-batch we compute the mean of the predicted sample class probabilities over the sample dimension, resulting in the mini-batch mean per-class probability.
The loss is computed as the binary cross entropy between the mean class probability vector and a uniform probability vector.
We balance the strength of the class balance loss with that of the self-ensembling loss by multiplying the class balance loss by the average of the conﬁdence threshold mask (e.g. if 75% of samples in a mini-batch pass the conﬁdence threshold, then the class balance loss is multiplied by 0.75).
We would like to note the similarity between our class balance loss and the entropy maximisation loss in the IMSAT clustering model of Hu et al.
(2017); IMSAT employs entropy maximisation to encourage uniform cluster sizes and entropy minimisation to encourage unambiguous cluster assignments.
E XPERIMENTS
Our implementation was developed using PyTorch (Chintala et al.) and is publically available at http://github.com/Britefury/self-ensemble-visual-domain-adapt .
4. S MALL IMAGE DATASETS
Our results can be seen in Table 1.
The ‘train on source’ and ‘train on target’ results report the target domain performance of supervised training on the source and target domains.
They represent the exepected baseline and best achievable result.
The ‘Speciﬁc aug.
‘ experiments used data augmentation speciﬁc to the MNIST → SVHN adaptation path that is discussed further down.
The small datasets and data preparation procedures are described in Appendix
A. Our training procedure is described in Appendix B and our network architectures are described in Appendix D.
The same network architectures and augmentation parameters were used for domain adaptation experiments and the supervised baselines discussed above.
It is worth noting that only the training sets of the small image datasets were used during training; the test sets used for reporting scores only.
MNIST ↔ USPS (see Figure 3a).
MNIST and USPS are both greyscale hand-written digit datasets.
In both adaptation directions our approach not only demonstrates a signiﬁcant improvement over prior art but nearly achieves the performance of supervised learning using the target domain ground truths.
The strong performance of the base mean teacher model can be attributed to the similarity of the datasets to one another.
It is worth noting that data augmentation allows our ‘train on source’ baseline to outpace prior domain adaptation methods.
CIFAR-10 ↔ STL (see Figure 3b).
CIFAR-10 and STL are both 10-class image datasets, although we removed one class from each (see Appendix A.2).
We obtained strong performance in the STL →
CIFAR-10 path, but only by using conﬁdence thresholding.
The CIFAR-10 → STL results are more interesting; the ‘train on source’ baseline performance outperforms that of a network trained on the
STL target domain, most likely due to the small size of the STL training set.
Our self-ensembling results outpace both the baseline performance and the ‘theoretical maximum’ of a network trained [Table] on the target domain, lending further evidence to the view of Sajjadi et al.
(2016) and Laine & Aila (2017) that self-ensembling acts as an effective regulariser.
Syn-Digits → SVHN (see Figure 3c).
The Syn-Digits dataset is a synthetic dataset designed by
Ganin & Lempitsky (2015) to be used as a source dataset in domain adaptation experiments with
SVHN as the target dataset.
Other approaches have achieved good scores on this benchmark, beating the baseline by a signiﬁcant margin.
Our result improves on them, reducing the error rate from 6.9% to 2.9%; even slightly outpacing the ‘train on target’ 3.4% error rate achieved using supervised learning.
Syn-Signs → GTSRB (see Figure 3d).
Syn-Signs is another synthetic dataset designed by Ganin & Lempitsky (2015) to target the 43-class GTSRB (German Trafﬁc Signs Recognition Benchmark;
Stallkamp et al.
(2011)) dataset.
Our approach halved the best error rate of competing approaches.
Once again, our approaches slightly outpaces the ‘train on target’ supervised learning upper bound.
SVHN → MNIST (see Figure 3e).
Google’s SVHN (Street View House Numbers) is a colour digits dataset of house number plates.
Our approach signiﬁcantly outpaces other techniques and achieves an accuracy close to that of supervised learning.
MNIST → SVHN (see Figure 3f).
This adaptation path is somewhat more challenging as MNIST digits are greyscale and uniform in terms of size, aspect ratio and intensity range, in contrast to the variably sized colour digits present in SVHN.
As a consequence, adapting from MNIST to SVHN required additional work.
Class balancing loss was necessary to ensure training stability and additional experiment speciﬁc data augmentation was required to achieve good accuracy.
The use of translations and afﬁne augmentation (see section 3.3) results in an accuracy score of 37%.
Signiﬁcant improvements resulted from additional augmentation in the form of random intensity ﬂips (negative image), and random intensity scales and offsets drawn from the intervals [0 .
25 , 1 . 5] and [ − 0 .
5 , 0 . 5] respectively.
These hyper-parameters were selected in order to augment MNIST samples to match the intensity variations present in SVHN, as illustrated in Figure 3f.
With these additional modiﬁcations, we achieve a result that signiﬁcantly outperforms prior art and nearly achieves the accuracy of a supervised classiﬁer trained on the target dataset.
We found that applying these additional augmentations to the source MNIST dataset only yielded good results; applying them to the target SVHN dataset as well yielded a small improvement but was not essential.
It should also be noted that this augmentation scheme raises the performance of the ‘train on source’ baseline to just above that of much of the prior art.
4. V IS DA-2017 VISUAL DOMAIN ADAPTATION CHALLENGE
The VisDA-2017 image classiﬁcation challenge is a 12-class domain adaptation problem consisting of three datasets: a training set consisting of 3D renderings of sketchup models, and validation and test sets consisting of real images (see Figure 1) drawn from the COCO Lin et al.
(2014) and
YouTube BoundingBoxes Real et al.
(2017) datasets respectively.
The objective is to learn from labeled computer generated images and correctly predict the class of real images.
Ground truth labels were made available for the training and validation sets only; test set scores were computed by a server operated by the competition organisers.
While the algorithm is that presented above, we base our network on the pretrained ResNet-152 (He et al.
network provided by PyTorch (Chintala et al.)
, rather than using a randomly initialised network as before.
The ﬁnal 1000-class classiﬁcation layer is removed and replaced with two fullyconnected layers; the ﬁrst has 512 units with a ReLU non-linearity while the ﬁnal layer has 12 units with a softmax non-linearity.
Results from our original competition submissions and newer results using two data augmentation schemes are presented in Table 2.
Our reduced augmentation scheme consists of random crops, random horizontal ﬂips and random uniform scaling.
It is very similar to scheme used for ImageNet image classiﬁcation in He et al.
Our competition conﬁguration includes additional augmentation that was speciﬁcally designed for the VisDA dataset, although we subsequently found that it makes little difference.
Our hyper-parameters and competition data augmentation scheme are described in Appendix C.1.
It is worth noting that we applied test time augmentation (we averaged predictions form 16 differently augmented images) to achieve our competition results.
We present resuts with and without test time augmentation in Table 2.
Our VisDA competition test set score is also the result of ensembling the predictions of 5 different networks.
C ONCLUSIONS
We have presented an effective domain adaptation algorithm that has achieved state of the art results in a number of benchmarks and has achieved accuracies that are almost on par with traditional supervised learning on digit recognition benchmarks targeting the MNIST and SVHN datasets. The VALIDATION [Table]
OTHER
[Table] OUR COMPETITION RESULTS [Table] OUR NEWER RESULTS
[Table]
all using
[Table]
time
[Table]
[Table]
[Table]
[Table]
are presented in Tables 4 and resulting networks will exhibit strong performance on samples from both the source and target domains.
Our approach is sufﬁciently ﬂexible to be usable for a variety of network architectures, including those based on randomly initialised and pre-trained networks.
Miyato et al.
(2017) stated that the self-ensembling methods presented by Laine & Aila (2017) – on which our algorithm is based – operate by label propagation.
This view is supported by our results, in particular our MNIST → SVHN experiment.
The latter requires additional intensity augmentation in order to sufﬁciently align the dataset distributions, after which good quality label predictions are propagated throughout the target dataset.
In cases where data augmentation is insufﬁcient to align the dataset distributions, a pre-trained network may be used to bridge the gap, as in our solution to the VisDA-17 challenge.
This leads us to conclude that effective domain adaptation can be achieved by ﬁrst aligning the distributions of the source and target datasets – the focus of much prior art in the ﬁeld – and then reﬁning their correspondance; a task to which self-ensembling is well suited.
A D ATASETS AND D ATA P REPARATION A. S MALL IMAGE DATASETS
The datasets used in this paper are described in Table 3.
# train # test # classes
Target
Resolution
Channels
USPS a 7, 2,
Digits 16 × Mono MNIST 60, 10, Digits 28 × Mono SVHN 73, 26,
Digits 32 ×
RGB CIFAR50, 10,
Object ID 32 ×
RGB
STL b 5, 8,
Object ID 96 ×
RGB Syn-Digits c 479, 9,
Digits 32 ×
RGB Syn-Signs 100, –
Trafﬁc signs 40 ×
RGB GTSRB 32, 12,
Trafﬁc signs varies
RGB a Available from http://statweb.stanford.edu/˜tibs/ElemStatLearn/ datasets/zip.train.gz and http://statweb.stanford.edu/˜tibs/
ElemStatLearn/datasets/zip.
[Table]
A. D ATA PREPARATION
Some of the experiments that involved datasets described in Table 3 required additional data preparation in order to match the resolution and format of the input samples and match the classiﬁcation target.
These additional steps will now be described.
MNIST ↔ USPS
The USPS images were up-scaled using bilinear interpolation from 16 × 16 to 28 × 28 resolution to match that of MNIST.
CIFAR-10 ↔ STL CIFAR-10 and STL are both 10-class image datasets.
The STL images were down-scaled to 32 × 32 resolution to match that of CIFAR-10.
The ‘frog’ class in CIFAR-10 and the ‘monkey’ class in STL were removed as they have no equivalent in the other dataset, resulting in a 9-class problem with 10% less samples in each dataset.
Syn-Signs → GTSRB GTSRB is composed of images that vary in size and come with annotations that provide region of interest (bounding box around the sign) and ground truth classiﬁcation.
We extracted the region of interest from each image and scaled them to a resolution of 40 × 40 to match those of Syn-Signs.
MNIST ↔ SVHN The MNIST images were padded to 32 × 32 resolution and converted to RGB by replicating the greyscale channel into the three RGB channels to match the format of SVHN.
B S MALL IMAGE EXPERIMENT TRAINING B. T RAINING PROCEDURE
Our networks were trained for 300 epochs.
We used the Adam Kingma & Ba (2015) gradient descent algorithm with a learning rate of 0.001.
We trained using mini-batches composed of 256 samples, except in the Syn-digits → SVHN and Syn-signs → GTSRB experiments where we used 128 in order to reduce memory usage.
The self-ensembling loss was weighted by a factor of 3 and the class balancing loss was weighted by 0.005.
Our teacher network weights t i were updated so as to be an exponential moving average of those of the student
s i using the formula t
i =
αt i − 1 + (1 − α )
s i , with a value of 0.99 for α .
A complete pass over the target dataset was considered to be one epoch in all experiments except the MNIST → USPS and CIFAR-10 → STL experiments due to the small size of the target datasets, in which case one epoch was considered to be a pass over the larger soure dataset.
We found that using the proportion of samples that passed the conﬁdence threshold can be used to drive early stopping (Prechelt (1998)).
The ﬁnal score was the target test set performance at the epoch at which the highest conﬁdence threshold pass rate was obtained.
C V IS DAC. H YPER - PARAMETERS
Our training procedure was the same as that used in the small image experiments, except that we used 160 × 160 images, a batch size of 56 (reduced from 64 to ﬁt within the memory of an nVidia 1080-Ti), a self-ensembling weight of 10 (instead of 3), a conﬁdence threshold of 0.9 (instead of 0.968) and a class balancing weight of 0.01.
We used the Adam Kingma & Ba (2015) gradient descent algorithm with a learning rate of 10 − 5 for the ﬁnal two randomly initialized layers and 10 −for the pre-trained layers.
The ﬁrst convolutional layer and the ﬁrst group of convolutional layers (with 64 feature channels) of the pre-trained ResNet were left unmodiﬁed during training.
Reduced data augmentation:
• scale image so that its smallest dimension is 176 pixels, then randomly crop a 160 ×section from the scaled image • No random afﬁne transformations as they increase confusion between the car and truck classes in the validation set • random uniform scaling in the range [0 . 75 ,
. 333] • horizontal ﬂipping
Competition data augmentation adds the following in addition to the above:
• random intensity/brightness scaling in the range [0 .
75 , 1 . 333] • random rotations, normally distributed with a standard deviation of 0 .
2 π • random desaturation in which the colours in an image are randomly desaturated to greyscale by a factor between 0% and 100% • rotations in colour space, around a randomly chosen axes with a standard deviation of 0 .
π • random offset in colour space, after standardisation using parameters speciﬁed by PyTorch implementation of ResNet-
D N ETWORK ARCHITECTURES
Our network architectures are shown in Tables 6 - 8.
[Table]
COMPETITION RESULTS
ResNet
[Table]
[Table]
NEWER RESULTS (ResNet
[Table]
[Table]
COMPETITION RESULTS
[Table]
[Table]
NEWER
RESULTS (
[Table]
[Table]
[Table] COMPETITION RESULTS (ensemble of 5 models) ResNet
[Table]
NEWER RESULTS
ResNet-
[Table]
COMPETITION RESULTS (ensemble of 5 models)
[Table]
NEWER RESULTS (ResNet-152)
[Table]
[Table]
[Table]
[Table]