简要回答
原理:在标注成本固定下,增强 = 对输入施加已知不变性变换,使模型见到更多「等价」样本,降低泛化误差;
常见增强
- 几何:水平翻转、旋转、缩放裁剪、仿射、弹性形变(医学)
- 颜色:亮度、对比度、饱和度、色调抖动
标准回答
原理:在标注成本固定下,增强 = 对输入施加已知不变性变换,使模型见到更多「等价」样本,降低泛化误差。
常见增强
- 几何:水平翻转、旋转、缩放裁剪、仿射、弹性形变(医学)
- 颜色:亮度、对比度、饱和度、色调抖动;Grayscale
- 遮挡:Cutout、Random Erasing、CutMix(局部替换)
- 混合:Mixup、Mosaic(检测多图拼接)
收益
- 缓解过拟合,尤其小数据集
- 提升光照、尺度、遮挡鲁棒性
- 隐式正则,等效更大 batch 多样性
实现:OpenCV、Albumentations、PyTorch transforms.v2、TensorFlow image 模块。
注意
- 语义保持:文字识别不宜剧烈扭曲
- 检测/分割需 同步变换 bbox/mask
- 过强增强会损害收敛;AutoAugment/RandAugment 学策略
详见 数据增强。
常见误区
⚠️ 常见踩坑
检测不同步变换标注框;分类任务盲目上下翻转;把增强当成测试时必做步骤(TTA 除外)。
追问
追问 1:Mixup 和 CutMix 区别?
Mixup 线性混合两图及标签;CutMix 剪贴一块区域替换,标签按面积混合。CutMix 保留局部完整语义,分类检测都常用。
追问 2:增强能否替代更多真实数据?
不能完全替代。增强覆盖已知变换,难模拟新域(新相机、新场景)。真实多样性数据 + 适度增强最佳。
追问 3:测试时增强 TTA 有用吗?
有用但有代价。对同一张图做翻转、多尺度、多裁剪等多次推理再融合结果,通常能稳定提升一两个点精度,常用于比赛和高精度离线场景。代价是推理成本翻几倍,实时/边缘部署一般不用。注意施加的变换要与训练时的不变性一致,否则反而掉点。
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。
📰 AI 资讯
🛠️ AI 工具
- OpenCV
开源计算机视觉库,87,181+ stars。全球最广泛使用的计算机视觉库,提供 2500+ 优化算法,涵盖图像处理、目标检测、人脸识别、相机标定等领域。支持 C++、Python、Java,是 AI 视觉应用的基石。
- Tensorflow
全球最流行的机器学习框架之一,195K+ stars。Google 开源的端到端 ML 平台,支持 TensorFlow、Keras 等多种 API,覆盖深度学习、强化学习、移动端部署等全场景,是 AI 工程师的必备工具
- Pytorch
Meta 开源的深度学习框架,100K+ stars。以动态计算图和 Pythonic 风格著称,在学术界和工业界都有广泛应用,支持分布式训练、移动端部署和 ONNX 导出