在本页阅读时间 9 分钟
概述
Mixup averages two whole images and their labels; CutMix pastes a rectangle from one image onto another and mixes labels by area. Both cost almost nothing to add, reduce overfitting, and are standard in modern image classifier training recipes.
主要要点
- Mixup trains on weighted averages of two images and their labels, with the mixing weight drawn from a Beta distribution controlled by alpha.
- CutMix pastes a random rectangle from one image onto another and sets the label weights in proportion to each image's visible area.
- In the CutMix paper, ResNet-50 ImageNet top-1 error fell from 23.68% to 21.40%, better than both Cutout and mixup in the same comparison.
- The mixup authors found alpha between 0.1 and 0.4 helped on ImageNet while larger values caused underfitting, so alpha needs tuning.
- Both methods add negligible compute because they mix examples already in the current batch, and torchvision ships ready-made MixUp and CutMix transforms.
深入探讨
Data augmentation creates new training examples from existing ones so a model sees more variety and memorizes less. Classic image augmentations transform one picture at a time: flip it, crop it, shift its colors. Mixup and CutMix take a different approach and combine two pictures, along with their labels, into one training example. The label is no longer a single class but a weighted mix, such as 60% dog and 40% cat. This encourages the network to make smooth, proportionate predictions rather than overconfident ones.
Mixup was introduced by Hongyi Zhang of MIT with Moustapha Cisse, Yann Dauphin and David Lopez-Paz of Facebook AI Research in "mixup: Beyond Empirical Risk Minimization" (arXiv October 2017, ICLR 2018). Empirical risk minimization (ERM) is the standard practice of minimizing average loss on the training examples themselves. Mixup instead trains on points in between examples. The procedure has four steps. First, draw a random mixing weight lambda from a Beta distribution with parameter alpha. Second, take two random training examples, often a batch and a shuffled copy of the same batch. Third, form the new input as lambda times the first input plus one minus lambda times the second. Fourth, form the new label the same way from the two one-hot label vectors, and train on that pair with ordinary cross-entropy loss. The authors note it takes a few lines of code and adds minimal computation.
The mixup paper reported gains across several domains. On ImageNet-2012, with 1.3 million training images in 1,000 classes, top-1 error for ResNet-50 trained for 200 epochs fell from 23.6% to 22.1%, and for ResNet-101 from 22.0% to 20.8%. The authors found that alpha between 0.1 and 0.4 helped on ImageNet while larger alpha caused underfitting, and that bigger models and longer training benefited most. They also showed mixup reduced memorization of deliberately corrupted labels, improved robustness to adversarial examples, and stabilized the training of generative adversarial networks.
CutMix came from Sangdoo Yun and colleagues at Naver's Clova AI Research and was published at ICCV 2019. It addressed a weakness the authors saw in two earlier methods. Cutout, from 2017, erases a random square of an image, forcing the model to look beyond the most obvious feature, but wastes those pixels. Mixup uses every pixel, but blended images look unnatural and locally ambiguous, and the CutMix paper reports that mixup lowered weakly supervised localization accuracy on ImageNet and object detection performance after transfer. CutMix replaces the erased rectangle with the matching patch from a second image and sets the label weights in proportion to the area each image occupies. The rectangle's size is drawn from the same Beta distribution, with alpha set to 1 so the area ratio is uniform between 0 and 1, and its position is drawn uniformly.
CutMix's results were strong across tasks. On ImageNet with ResNet-50, top-1 error fell from 23.68% to 21.40%, against 22.93% for Cutout, 22.58% for mixup and 22.50% for Manifold Mixup, a variant that mixes hidden-layer features. ResNet-101 improved by 1.70 percentage points. On CIFAR-100 it reached 14.47% top-1 error, a state-of-the-art result at the time. The paper also reported better weakly supervised object localization, gains when the pretrained network was fine-tuned for detection and captioning, improved robustness and reduced overconfidence.
Compared with alternatives, the two methods complement single-image augmentations rather than replacing them. Flips, crops and color jitter teach invariance to transformations of one image. Cutout and random erasing teach the model to use partial evidence. Mixup and CutMix additionally soften labels in a data-dependent way, which is related to label smoothing, a technique that replaces hard one-hot targets with slightly softened ones; the mixup paper's ablations found mixup beat combinations of input mixing and label smoothing. In practice, training recipes often apply both: libraries such as torchvision provide CutMix and MixUp transforms that can be randomly alternated per batch, and the DeiT recipe for vision transformers used both together with RandAugment and random erasing.
The methods have trade-offs. Because labels become fractional, training accuracy is no longer directly comparable to the usual metric, and the mixup authors found that longer training runs and larger models benefited most, so gains may be small on short schedules. Too strong a mix underfits, which is why alpha is tuned. Mixed images are not realistic, so mixup can hurt tasks that depend on precise spatial evidence, as the CutMix paper's localization and detection numbers show for mixup. CutMix can paste a patch that contains none of the second image's object, such as a patch of background, while the label still assigns that class weight in proportion to area. Both assume label mixing is meaningful, which is natural for classification but needs care for tasks such as segmentation or detection.
The cost is minimal. Both methods operate on a batch already in memory and add only a few tensor operations and a random draw per batch, so training time barely changes; the CutMix authors describe the overhead as negligible. The real cost is tuning: choosing alpha, the probability of applying each method, and the number of training epochs. Labels must be represented as probability vectors over classes rather than integer class indices, which torchvision's transforms handle by converting labels to a batch size by number of classes tensor.
04工作示例
Mixing one CIFAR-10 batch by hand
Load a batch of 8 CIFAR-10 images of size 32 by 32 with their integer labels, and convert labels to one-hot vectors of length 10.
Create a shuffled copy of the batch by applying a random permutation, so each image is paired with another image from the same batch.
For mixup, sample lambda from Beta(0.2, 0.2), say 0.7, and compute 0.7 times each image plus 0.3 times its partner, and the same weighting for the labels.
For CutMix, sample lambda from Beta(1, 1), say 0.75, giving a box of side 32 times sqrt(0.25), or 16 pixels, at a random center.
Paste that 16 by 16 region from each partner image into the original, clip it at the border, and recompute lambda as 1 minus the pasted area divided by 1,024.
Display both mixed batches with their soft labels and feed either one to a model trained with cross-entropy on soft targets.
它显示了什么
You get two augmented batches: blended, ghost-like images labeled for example 0.7 airplane and 0.3 ship, and patched images whose label weights equal the visible areas. Check correctness by confirming each soft label sums to 1 and that the CutMix weight matches the fraction of pixels from each source image.
现实世界的实施
On ImageNet, the original 2017 mixup paper reduced ResNeXt-101 32x4d top-1 error from 21.3% to 20.1% when training for 200 epochs, using a blending strength alpha of 0.4.
CutMix (ICCV 2019) cut ResNet-50's ImageNet top-1 error from 23.68% to 21.40%, beating Cutout at 22.93% and mixup at 22.58% in the same comparison.
Models pretrained with CutMix transferred better to other tasks: the CutMix authors report about 1 mAP gain on Pascal VOC object detection and 2 BLEU points on MS-COCO image captioning.
Facebook AI's DeiT recipe for training vision transformers on ImageNet alone (2021) includes both mixup and CutMix and notes that these regularizers improve performance.
Mixup is not limited to images: its authors also applied it to the Google Speech Commands dataset of 65,000 one-second spoken commands and to tabular UCI datasets.
Mixup 和 CutMix 增强的未来
Since 2019, research has produced many mixing variants. Manifold Mixup mixes hidden-layer features rather than pixels, and the CutMix paper itself tested a feature-level CutMix that scored 21.80% top-1 error on ImageNet against 21.40% for pixel CutMix. Transformer-era recipes such as DeiT (2021) combine mixup and CutMix with other augmentations such as RandAugment and random erasing. Open questions remain about why and when mixing works. Mixed labels interact with calibration, how well predicted probabilities match real accuracy; the CutMix authors reported reduced overconfidence, and how far that holds across models and datasets is still studied. Extending label mixing to dense tasks like segmentation and detection, to text, and to multimodal models requires deciding what a mixed label should mean. As training increasingly uses very large datasets and self-supervised pretraining, the relative value of mixing augmentations compared with simply adding more data is an active area of study, and practical guidance still relies heavily on tuning per task.
付诸实践
为什么这很重要
- 成本与预算. 多年来,架构决策决定着性能和运营成本。
- 更清晰的判决. 技术教育帮助团队选择正确的堆栈,而不仅仅是最新的堆栈。
- 质量控制. 更好的工程选择可以减少生产中的可靠性事故。
留意
- 优化一项基准测试可以隐藏更广泛的系统弱点。
- 基础设施和维护成本常常被低估。
- 随着系统变得更加复杂,安全性和可观察性差距可能会扩大。
后续步骤
- 在实施之前定义延迟、质量和成本目标。
- 在实际负载和数据条件下进行基准测试。
- 仪器监控错误、漂移和用户影响。
- 在扩展之前准备回滚和事件响应路径。
资料来源与延伸阅读
- arXiv (ICLR 2018)mixup: Beyond Empirical Risk Minimization
- arXiv (ICCV 2019)CutMix: Regularization Strategy to Train Strong Classifiers with Localizable Features
- arXivTraining data-efficient image transformers and distillation through attention
- PyTorch torchvision documentationHow to use CutMix and MixUp
不断探索
常见问题
What is Mixup and CutMix Augmentation?
Mixup and CutMix are data augmentation techniques that train a neural network on blends of two examples instead of single ones. Mixup averages two whole images and their labels; CutMix pastes a rectangle from one image onto another and mixes labels by area. Both cost almost nothing to add, reduce overfitting, and are standard in modern image classifier training recipes.
Mixup 如何创建新的训练示例?
混合形式 x̃ = λx_a + (1−λ)x_b 并将标签与从 Beta 分布中提取的相同 λ 混合。
CutMix 和 Mixup 的核心区别是什么?
CutMix 将一个矩形区域从一个图像复制到另一个图像中,保持局部连贯的内容,而不是将两个图像重影在一起。
在 CutMix 中,如何确定标签的混合权重 (lambda)?
CutMix 中的标签比例是根据粘贴框相对于整个图像的面积来设置的,使标签与可见像素保持一致。
除了输入图像之外,Mixup 和 CutMix 还修改什么?
这两种方法也混合标签,产生软目标,其作用类似于依赖于数据的标签平滑形式。
哪种分布通常用于对混合系数 lambda 进行采样?
Mixup 和 CutMix 通常从 Beta 分布中提取 λ,该分布控制两个示例混合的强度。