mixup
Implementation of the mixup training method
view repo
Large deep neural networks are powerful, but exhibit undesirable behaviors such as memorization and sensitivity to adversarial examples. In this work, we propose mixup, a simple learning principle to alleviate these issues. In essence, mixup trains a neural network on convex combinations of pairs of examples and their labels. By doing so, mixup regularizes the neural network to favor simple linear behavior inbetween training examples. Our experiments on the ImageNet2012, CIFAR10, CIFAR100, Google commands and UCI datasets show that mixup improves the generalization of stateoftheart neural network architectures. We also find that mixup reduces the memorization of corrupt labels, increases the robustness to adversarial examples, and stabilizes the training of generative adversarial networks.
READ FULL TEXT VIEW PDFImplementation of the mixup training method
CIFAR10でmixupを試す
Large deep neural networks have enabled breakthroughs in fields such as computer vision
(Krizhevsky et al., 2012), speech recognition (Hinton et al., 2012), and reinforcement learning
(Silver et al., 2016). In most successful applications, these neural networks share two commonalities. First, they are trained as to minimize their average error over the training data, a learning rule also known as the Empirical Risk Minimization (ERM) principle (Vapnik, 1998). Second, the size of these stateoftheart neural networks scales linearly with the number of training examples. For instance, the network of Springenberg et al. (2015) used parameters to model the images in the CIFAR10 dataset, the network of (Simonyan & Zisserman, 2015) used parameters to model the images in the ImageNet2012 dataset, and the network of Chelba et al. (2013) used parameters to model the words in the One Billion Word dataset.Strikingly, a classical result in learning theory (Vapnik & Chervonenkis, 1971) tells us that the convergence of ERM is guaranteed as long as the size of the learning machine (e.g., the neural network) does not increase with the number of training data. Here, the size of a learning machine is measured in terms of its number of parameters or, relatedly, its VCcomplexity (Harvey et al., 2017).
This contradiction challenges the suitability of ERM to train our current neural network models, as highlighted in recent research. On the one hand, ERM allows large neural networks to memorize (instead of generalize from) the training data even in the presence of strong regularization, or in classification problems where the labels are assigned at random (Zhang et al., 2017). On the other hand, neural networks trained with ERM change their predictions drastically when evaluated on examples just outside the training distribution (Szegedy et al., 2014), also known as adversarial examples. This evidence suggests that ERM is unable to explain or provide generalization on testing distributions that differ only slightly from the training data. However, what is the alternative to ERM?
The method of choice to train on similar but different examples to the training data is known as data augmentation (Simard et al., 1998), formalized by the Vicinal Risk Minimization (VRM) principle (Chapelle et al., 2000). In VRM, human knowledge is required to describe a vicinity or neighborhood around each example in the training data. Then, additional virtual examples can be drawn from the vicinity distribution of the training examples to enlarge the support of the training distribution. For instance, when performing image classification, it is common to define the vicinity of one image as the set of its horizontal reflections, slight rotations, and mild scalings. While data augmentation consistently leads to improved generalization (Simard et al., 1998), the procedure is datasetdependent, and thus requires the use of expert knowledge. Furthermore, data augmentation assumes that the examples in the vicinity share the same class, and does not model the vicinity relation across examples of different classes.
Motivated by these issues, we introduce a simple and dataagnostic data augmentation routine, termed mixup (Section 2). In a nutshell, mixup constructs virtual training examples
and are two examples drawn at random from our training data, and . Therefore, mixup
extends the training distribution by incorporating the prior knowledge that linear interpolations of feature vectors should lead to linear interpolations of the associated targets.
mixup can be implemented in a few lines of code, and introduces minimal computation overhead.Despite its simplicity, mixup allows a new stateoftheart performance in the CIFAR10, CIFAR100, and ImageNet2012 image classification datasets (Sections 3.1 and 3.2). Furthermore, mixup increases the robustness of neural networks when learning from corrupt labels (Section 3.4), or facing adversarial examples (Section 3.5). Finally, mixup improves generalization on speech (Sections 3.3) and tabular (Section 3.6) data, and can be used to stabilize the training of GANs (Section 3.7). The sourcecode necessary to replicate our CIFAR10 experiments is available at:
https://github.com/facebookresearch/mixupcifar10.
To understand the effects of various design choices in mixup, we conduct a thorough set of ablation study experiments (Section 3.8). The results suggest that mixup performs significantly better than related methods in previous work, and each of the design choices contributes to the final performance. We conclude by exploring the connections to prior work (Section 4), as well as offering some points for discussion (Section 5).
In supervised learning, we are interested in finding a function
that describes the relationship between a random feature vector and a random target vector, which follow the joint distribution
. To this end, we first define a loss function
that penalizes the differences between predictions and actual targets , for examples . Then, we minimize the average of the loss function over the data distribution , also known as the expected risk:Unfortunately, the distribution is unknown in most practical situations. Instead, we usually have access to a set of training data , where for all . Using the training data , we may approximate by the empirical distribution
where is a Dirac mass centered at . Using the empirical distribution , we can now approximate the expected risk by the empirical risk:
(1) 
Learning the function by minimizing (1) is known as the Empirical Risk Minimization (ERM) principle (Vapnik, 1998). While efficient to compute, the empirical risk (1) monitors the behaviour of only at a finite set of examples. When considering functions with a number parameters comparable to (such as large neural networks), one trivial way to minimize (1) is to memorize the training data (Zhang et al., 2017). Memorization, in turn, leads to the undesirable behaviour of outside the training data (Szegedy et al., 2014).
However, the naïve estimate
is one out of many possible choices to approximate the true distribution . For instance, in the Vicinal Risk Minimization (VRM) principle (Chapelle et al., 2000), the distribution is approximated bywhere is a vicinity distribution
that measures the probability of finding the
virtual featuretarget pair in the vicinity of the training featuretarget pair . In particular, Chapelle et al. (2000) considered Gaussian vicinities , which is equivalent to augmenting the training data with additive Gaussian noise. To learn using VRM, we sample the vicinal distribution to construct a dataset , and minimize the empirical vicinal risk:The contribution of this paper is to propose a generic vicinal distribution, called mixup:
where , for . In a nutshell, sampling from the mixup vicinal distribution produces virtual featuretarget vectors
where and are two featuretarget vectors drawn at random from the training data, and . The mixup hyperparameter controls the strength of interpolation between featuretarget pairs, recovering the ERM principle as .
The implementation of mixup training is straightforward, and introduces a minimal computation overhead. Figure 0(a) shows the few lines of code necessary to implement mixup
training in PyTorch. Finally, we mention alternative design choices. First, in preliminary experiments we find that convex combinations of three or more examples with weights sampled from a Dirichlet distribution does not provide further gain, but increases the computation cost of
mixup. Second, our current implementation uses a single data loader to obtain one minibatch, and then mixup is applied to the same minibatch after random shuffling. We found this strategy works equally well, while reducing I/O requirements. Third, interpolating only between inputs with equal label did not lead to the performance gains of mixup discussed in the sequel. More empirical comparison can be found in Section 3.8.The mixup vicinal distribution can be understood as a form of data augmentation that encourages the model to behave linearly inbetween training examples. We argue that this linear behaviour reduces the amount of undesirable oscillations when predicting outside the training examples. Also, linearity is a good inductive bias from the perspective of Occam’s razor, since it is one of the simplest possible behaviors. Figure 0(b) shows that mixup leads to decision boundaries that transition linearly from class to class, providing a smoother estimate of uncertainty. Figure 2 illustrate the average behaviors of two neural network models trained on the CIFAR10 dataset using ERM and mixup. Both models have the same architecture, are trained with the same procedure, and are evaluated at the same points inbetween randomly sampled training data. The model trained with mixup is more stable in terms of model predictions and gradient norms inbetween training samples.
We evaluate mixup on the ImageNet2012 classification dataset (Russakovsky et al., 2015). This dataset contains 1.3 million training images and 50,000 validation images, from a total of 1,000 classes. For training, we follow standard data augmentation practices: scale and aspect ratio distortions, random crops, and horizontal flips (Goyal et al., 2017). During evaluation, only the central crop of each image is tested. We use mixup and ERM to train several stateoftheart ImageNet2012 classification models, and report both top1 and top5 error rates in Table 1.
Model  Method  Epochs  Top1 Error  Top5 Error 

ResNet50  ERM (Goyal et al., 2017)    
mixup  
ResNet101  ERM (Goyal et al., 2017)    
mixup  
ResNeXt101 32*4d  ERM (Xie et al., 2016)    
ERM  
mixup  
ResNeXt101 64*4d  ERM (Xie et al., 2016)  
mixup  
ResNet50  ERM  
mixup  
ResNet101  ERM  
mixup  
ResNeXt101 32*4d  ERM  
mixup 
For all the experiments in this section, we use dataparallel distributed training in Caffe2^{1}^{1}1https://caffe2.ai with a minibatch size of 1,024. We use the learning rate schedule described in (Goyal et al., 2017). Specifically, the learning rate is increased linearly from 0.1 to 0.4 during the first 5 epochs, and it is then divided by 10 after 30, 60 and 80 epochs when training for 90 epochs; or after 60, 120 and 180 epochs when training for 200 epochs.
For mixup, we find that leads to improved performance over ERM, whereas for large , mixup leads to underfitting. We also find that models with higher capacities and/or longer training runs are the ones to benefit the most from mixup. For example, when trained for 90 epochs, the mixup variants of ResNet101 and ResNeXt101 obtain a greater improvement (0.5% to 0.6%) over their ERM analogues than the gain of smaller models such as ResNet50 (0.2%). When trained for 200 epochs, the top1 error of the mixup variant of ResNet50 is further reduced by 1.2% compared to the 90 epoch run, whereas its ERM analogue stays the same.
We conduct additional image classification experiments on the CIFAR10 and CIFAR100 datasets to further evaluate the generalization performance of mixup. In particular, we compare ERM and mixup training for: PreAct ResNet18 (He et al., 2016) as implemented in (Liu, 2017), WideResNet2810 (Zagoruyko & Komodakis, 2016a) as implemented in (Zagoruyko & Komodakis, 2016b), and DenseNet (Huang et al., 2017) as implemented in (Veit, 2017). For DenseNet, we change the growth rate to 40 to follow the DenseNetBC190 specification from (Huang et al., 2017). For mixup, we fix , which results in interpolations uniformly distributed between zero and one. All models are trained on a single Nvidia Tesla P100 GPU using PyTorch^{2}^{2}2http://pytorch.org for 200 epochs on the training set with 128 examples per minibatch, and evaluated on the test set. Learning rates start at 0.1 and are divided by 10 after 100 and 150 epochs for all models except WideResNet. For WideResNet, we follow (Zagoruyko & Komodakis, 2016a) and divide the learning rate by 10 after 60, 120 and 180 epochs. Weight decay is set to . We do not use dropout in these experiments.
We summarize our results in Figure 2(a). In both CIFAR10 and CIFAR100 classification problems, the models trained using mixup significantly outperform their analogues trained with ERM. As seen in Figure 2(b), mixup and ERM converge at a similar speed to their best test errors. Note that the DenseNet models in (Huang et al., 2017) were trained for 300 epochs with further learning rate decays scheduled at the 150 and 225 epochs, which may explain the discrepancy the performance of DenseNet reported in Figure 2(a) and the original result of Huang et al. (2017).

Next, we perform speech recognition experiments using the Google commands dataset (Warden, 2017). The dataset contains 65,000 utterances, where each utterance is about onesecond long and belongs to one out of 30 classes. The classes correspond to voice commands such as yes, no, down, left
, as pronounced by a few thousand different speakers. To preprocess the utterances, we first extract normalized spectrograms from the original waveforms at a sampling rate of 16 kHz. Next, we zeropad the spectrograms to equalize their sizes at
. For speech data, it is reasonable to apply mixup both at the waveform and spectrogram levels. Here, we apply mixup at the spectrogram level just before feeding the data to the network.For this experiment, we compare a LeNet (Lecun et al., 2001) and a VGG11 (Simonyan & Zisserman, 2015) architecture, each of them composed by two convolutional and two fullyconnected layers. We train each model for 30 epochs with minibatches of 100 examples, using Adam as the optimizer (Kingma & Ba, 2015). Training starts with a learning rate equal to and is divided by 10 every 10 epochs. For mixup, we use a warmup period of five epochs where we train the network on original training examples, since we find it speeds up initial convergence. Table 4 shows that mixup outperforms ERM on this task, specially when using VGG11, the model with larger capacity.
Model  Method  Validation set  Test set 

LeNet  ERM  
mixup  
mixup  
VGG11  ERM  
mixup  
mixup 
Following Zhang et al. (2017), we evaluate the robustness of ERM and mixup models against randomly corrupted labels. We hypothesize that increasing the strength of mixup interpolation should generate virtual examples further from the training examples, making memorization more difficult to achieve. In particular, it should be easier to learn interpolations between real examples compared to memorizing interpolations involving random labels. We adapt an opensource implementation (Zhang, 2017) to generate three CIFAR10 training sets, where 20%, 50%, or 80% of the labels are replaced by random noise, respectively. All the test labels are kept intact for evaluation. Dropout (Srivastava et al., 2014) is considered the stateoftheart method for learning with corrupted labels (Arpit et al., 2017). Thus, we compare in these experiments mixup, dropout, mixup + dropout, and ERM. For mixup, we choose
; for dropout, we add one dropout layer in each PreAct block after the ReLU activation layer between two convolution layers, as suggested in
(Zagoruyko & Komodakis, 2016a). We choose the dropout probability . For the combination of mixup and dropout, we choose and . These experiments use the PreAct ResNet18 (He et al., 2016) model implemented in (Liu, 2017). All the other settings are the same as in Section 3.2.We summarize our results in Table 2, where we note the best test error achieved during the training session, as well as the final test error after 200 epochs. To quantify the amount of memorization, we also evaluate the training errors at the last epoch on real labels and corrupted labels. As the training progresses with a smaller learning rate (e.g. less than 0.01), the ERM model starts to overfit the corrupted labels. When using a large probability (e.g. 0.7 or 0.8), dropout can effectively reduce overfitting. mixup with a large (e.g. 8 or 32) outperforms dropout on both the best and last epoch test errors, and achieves lower training error on real labels while remaining resistant to noisy labels. Interestingly, mixup + dropout performs the best of all, showing that the two methods are compatible.
Label corruption  Method  Test error  Training error  

Best  Last  Real  Corrupted  
20%  ERM  
ERM + dropout ()  
mixup ()  
mixup + dropout ()  
50%  ERM  
ERM + dropout ()  
mixup ()  
mixup + dropout ()  
80%  ERM  
ERM + dropout ()  
mixup ()  
mixup + dropout () 
One undesirable consequence of models trained using ERM is their fragility to adversarial examples (Szegedy et al., 2014). Adversarial examples are obtained by adding tiny (visually imperceptible) perturbations to legitimate examples in order to deteriorate the performance of the model. The adversarial noise is generated by ascending the gradient of the loss surface with respect to the legitimate example. Improving the robustness to adversarial examples is a topic of active research.
Among the several methods aiming to solve this problem, some have proposed to penalize the norm of the Jacobian of the model to control its Lipschitz constant (Drucker & Le Cun, 1992; Cisse et al., 2017; Bartlett et al., 2017; Hein & Andriushchenko, 2017). Other approaches perform data augmentation by producing and training on adversarial examples (Goodfellow et al., 2015). Unfortunately, all of these methods add significant computational overhead to ERM. Here, we show that mixup can significantly improve the robustness of neural networks without hindering the speed of ERM by penalizing the norm of the gradient of the loss w.r.t a given input along the most plausible directions (e.g. the directions to other training points). Indeed, Figure 2 shows that mixup results in models having a smaller loss and gradient norm between examples compared to vanilla ERM.
To assess the robustness of mixup models to adversarial examples, we use three ResNet101 models: two of them trained using ERM on ImageNet2012, and the third trained using mixup. In the first set of experiments, we study the robustness of one ERM model and the mixup model against white box attacks. That is, for each of the two models, we use the model itself to generate adversarial examples, either using the Fast Gradient Sign Method (FGSM) or the Iterative FGSM (IFGSM) methods (Goodfellow et al., 2015), allowing a maximum perturbation of for every pixel. For IFGSM, we use 10 iterations with equal step size. In the second set of experiments, we evaluate robustness against black box attacks. That is, we use the first ERM model to produce adversarial examples using FGSM and IFGSM. Then, we test the robustness of the second ERM model and the mixup model to these examples. The results of both settings are summarized in Table 3.
For the FGSM white box attack, the mixup model is times more robust than the ERM model in terms of Top1 error. For the FGSM black box attack, the mixup model is times more robust than the ERM model in terms of Top1 error. Also, while both mixup and ERM are not robust to white box IFGSM attacks, mixup is about more robust than ERM in the black box IFGSM setting. Overall, mixup produces neural networks that are significantly more robust than ERM against adversarial examples in white box and black settings without additional overhead compared to ERM.


To further explore the performance of mixup on nonimage data, we performed a series of experiments on six arbitrary classification problems drawn from the UCI dataset (Lichman, 2013). The neural networks in this section are fullyconnected, and have two hidden layers of 128 ReLU units. The parameters of these neural networks are learned using Adam (Kingma & Ba, 2015) with default hyperparameters, over 10 epochs of minibatches of size 16. Table 4 shows that mixup improves the average test error on four out of the six considered datasets, and never underperforms ERM.
Dataset  ERM  mixup 

Abalone  
Arcene  
Arrhythmia 
Dataset  ERM  mixup 

Htru2  
Iris  
Phishing 
Generative Adversarial Networks, also known as GANs (Goodfellow et al., 2014), are a powerful family of implicit generative models. In GANs, a generator and a discriminator compete against each other to model a distribution . On the one hand, the generator competes to transform noise vectors into fake samples that resemble real samples . On the other hand, the discriminator competes to distinguish between real samples and fake samples . Mathematically, training a GAN is equivalent to solving the optimization problem
where is the binary cross entropy loss. Unfortunately, solving the previous minmax equation is a notoriously difficult optimization problem (Goodfellow, 2016), since the discriminator often provides the generator with vanishing gradients. We argue that mixup
should stabilize GAN training because it acts as a regularizer on the gradients of the discriminator, akin to the binary classifier in Figure
0(b). Then, the smoothness of the discriminator guarantees a stable source of gradient information to the generator. The mixup formulation of GANs is:Figure 5 illustrates the stabilizing effect of mixup the training of GAN (orange samples) when modeling two toy datasets (blue samples). The neural networks in these experiments are fullyconnected and have three hidden layers of 512 ReLU units. The generator network accepts twodimensional Gaussian noise vectors. The networks are trained for 20,000 minibatches of size 128 using the Adam optimizer with default parameters, where the discriminator is trained for five iterations before every generator iteration. The training of mixup GANs seems promisingly robust to hyperparameter and architectural choices.
ERM GAN  mixup GAN () 

mixup is a data augmentation method that consists of only two parts: random convex combination of raw inputs, and correspondingly, convex combination of onehot label encodings. However, there are several design choices to make. For example, on how to augment the inputs, we could have chosen to interpolate the latent representations (i.e. feature maps) of a neural network, and we could have chosen to interpolate only between the nearest neighbors, or only between inputs of the same class. When the inputs to interpolate come from two different classes, we could have chosen to assign a single label to the synthetic input, for example using the label of the input that weights more in the convex combination. To compare mixup with these alternative possibilities, we run a set of ablation study experiments using the PreAct ResNet18 architecture on the CIFAR10 dataset.
Specifically, for each of the data augmentation methods, we test two weight decay settings ( which works well for mixup, and
which works well for ERM). All the other settings and hyperparameters are the same as reported in Section
3.2.Method  Specification  Modified  Weight decay  
Input  Target  
ERM  ✗  ✗  
mixup  AC + RP  ✓  ✓  
AC + KNN 
✓  ✓  
mix labels and latent  Layer 1  ✓  ✓  
representations  Layer 2  ✓  ✓  
(AC + RP)  Layer 3  ✓  ✓  
Layer 4  ✓  ✓  
Layer 5  ✓  ✓  
mix inputs only  SC + KNN (Chawla et al., 2002)  ✓  ✗  
AC + KNN  ✓  ✗  
SC + RP  ✓  ✗  
AC + RP  ✓  ✗  
label smoothing  ✗  ✓  
(Szegedy et al., 2016)  ✗  ✓  
✗  ✓  
mix inputs +  ✓  ✓  
label smoothing  ✓  ✓  
(AC + RP)  ✓  ✓  
✓  ✓  
add Gaussian noise  ✓  ✗  
to inputs  ✓  ✗  
✓  ✗ 
To compare interpolating raw inputs with interpolating latent representations, we test on random convex combination of the learned representations before each residual block (denoted Layer 14) or before the uppermost “average pooling + fully connected” layer (denoted Layer 5). To compare mixing random pairs of inputs (RP) with mixing nearest neighbors (KNN), we first compute the 200 nearest neighbors for each training sample, either from the same class (SC) or from all the classes (AC). Then during training, for each sample in a minibatch, we replace the sample with a synthetic sample by convex combination with a random draw from its nearest neighbors. To compare mixing all the classes (AC) with mixing within the same class (SC), we convex combine a minibatch with a random permutation of its sample index, where the permutation is done in a perbatch basis (AC) or a perclass basis (SC). To compare mixing inputs and labels with mixing inputs only, we either use a convex combination of the two onehot encodings as the target, or select the onehot encoding of the closer training sample as the target. For label smoothing, we follow
Szegedy et al. (2016) and use as the target for incorrect classes, and as the target for the correct class. Adding Gaussian noise to inputs is used as another baseline. We report the median test errors of the last 10 epochs. Results are shown in Table 5.From the ablation study experiments, we have the following observations. First, mixup is the best data augmentation method we test, and is significantly better than the second best method (mix input + label smoothing). Second, the effect of regularization can be seen by comparing the test error with a small weight decay () with a large one (). For example, for ERM a large weight decay works better, whereas for mixup a small weight decay is preferred, confirming its regularization effects. We also see an increasing advantage of large weight decay when interpolating in higher layers of latent representations, indicating decreasing strength of regularization. Among all the input interpolation methods, mixing random pairs from all classes (AC + RP) has the strongest regularization effect. Label smoothing and adding Gaussian noise have a relatively small regularization effect. Finally, we note that the SMOTE algorithm (Chawla et al., 2002) does not lead to a noticeable gain in performance.
Data augmentation lies at the heart of all successful applications of deep learning, ranging from image classification
(Krizhevsky et al., 2012) to speech recognition (Graves et al., 2013; Amodei et al., 2016). In all cases, substantial domain knowledge is leveraged to design suitable data transformations leading to improved generalization. In image classification, for example, one routinely uses rotation, translation, cropping, resizing, flipping (Lecun et al., 2001; Simonyan & Zisserman, 2015), and random erasing (Zhong et al., 2017) to enforce visually plausible invariances in the model through the training data. Similarly, in speech recognition, noise injection is a prevalent practice to improve the robustness and accuracy of the trained models (Amodei et al., 2016).More related to mixup, Chawla et al. (2002) propose to augment the rare class in an imbalanced dataset by interpolating the nearest neighbors; DeVries & Taylor (2017) show that interpolation and extrapolation the nearest neighbors of the same class in feature space can improve generalization. However, their proposals only operate among the nearest neighbors within a certain class at the input / feature level, and hence does not account for changes in the corresponding labels. Recent approaches have also proposed to regularize the output distribution of a neural network by label smoothing (Szegedy et al., 2016), or penalizing highconfidence softmax distributions (Pereyra et al., 2017). These methods bear similarities with mixup in the sense that supervision depends on multiple smooth labels, rather than on single hard labels as in traditional ERM. However, the label smoothing in these works is applied or regularized independently from the associated feature values.
mixup enjoys several desirable aspects of previous data augmentation and regularization schemes without suffering from their drawbacks. Like the method of DeVries & Taylor (2017), it does not require significant domain knowledge. Like label smoothing, the supervision of every example is not overly dominated by the groundtruth label. Unlike both of these approaches, the mixup transformation establishes a linear relationship between data augmentation and the supervision signal. We believe that this leads to a strong regularizer that improves generalization as demonstrated by our experiments. The linearity constraint, through its effect on the derivatives of the function approximated, also relates mixup to other methods such as Sobolev training of neural networks (Czarnecki et al., 2017) or WGANGP (Gulrajani et al., 2017).
We have proposed mixup, a dataagnostic and straightforward data augmentation principle. We have shown that mixup is a form of vicinal risk minimization, which trains on virtual examples constructed as the linear interpolation of two random examples from the training set and their labels. Incorporating mixup into existing training pipelines reduces to a few lines of code, and introduces little or no computational overhead. Throughout an extensive evaluation, we have shown that mixup improves the generalization error of stateoftheart models on ImageNet, CIFAR, speech, and tabular datasets. Furthermore, mixup helps to combat memorization of corrupt labels, sensitivity to adversarial examples, and instability in adversarial training.
In our experiments, the following trend is consistent: with increasingly large , the training error on real data increases, while the generalization gap decreases. This sustains our hypothesis that mixup
implicitly controls model complexity. However, we do not yet have a good theory for understanding the ‘sweet spot’ of this biasvariance tradeoff. For example, in CIFAR10 classification we can get very low training error on real data even when
(i.e., training only on averages of pairs of real examples), whereas in ImageNet classification, the training error on real data increases significantly with . Based on our ImageNet and Google commands experiments with different model architectures, we conjecture that increasing the model capacity would make training error less sensitive to large , hence giving mixup a more significant advantage.mixup also opens up several possibilities for further exploration. First, is it possible to make similar ideas work on other types of supervised learning problems, such as regression and structured prediction? While generalizing mixup to regression problems is straightforward, its application to structured prediction problems such as image segmentation remains less obvious. Second, can similar methods prove helpful beyond supervised learning? The interpolation principle seems like a reasonable inductive bias which might also help in unsupervised, semisupervised, and reinforcement learning. Can we extend mixup to featurelabel extrapolation to guarantee a robust model behavior far away from the training data? Although our discussion of these directions is still speculative, we are excited about the possibilities mixup opens up, and hope that our observations will prove useful for future development.
Journal of artificial intelligence research
, 16:321–357, 2002.Improving generalization performance using double backpropagation.
IEEE Transactions on Neural Networks, 3(6):991–997, 1992.Speech recognition with deep recurrent neural networks.
In ICASSP. IEEE, 2013.ImageNet classification with deep convolutional neural networks.
NIPS, 2012.UCI machine learning repository, 2013.
Transformation invariance in pattern recognition—tangent distance and tangent propagation.
Neural networks: tricks of the trade, 1998.