数据增强
通过数据增强来增强您的机器学习模型。 探索提高准确性、减少过拟合和提高鲁棒性的技术。
数据增强是机器学习(ML)中一项关键技术,用于人为地增加训练数据集的大小和多样性。其实现方式是创建现有数据样本的修改版本,但仍保持其真实性。主要目标是提高AI模型的性能和鲁棒性,尤其是在计算机视觉(CV)领域,通过在训练期间让模型接触更广泛的条件。这有助于防止过拟合,即模型过度学习训练数据,但无法泛化到新的、未见过的数据,最终导致模型准确率降低。
数据增强的工作原理
在计算机视觉中,数据增强涉及对图像应用一系列变换。这些变换旨在模拟模型在部署后可能遇到的真实世界的变化。常用技术包括:
- 几何变换:这些会改变图像的空间方向。示例包括随机旋转、缩放、平移(移动)、裁剪和翻转(水平或垂直)。这些教会模型对物体的位置和方向保持不变。
- 色彩空间转换:这些转换会修改图像的颜色属性。 调整亮度、对比度、饱和度和色调可以使模型更能适应光照条件的变化。
- 高级技术: 更复杂的方法涉及更显著地改变图像内容。这些方法包括添加随机噪声(如高斯噪声)、应用模糊效果,或使用 Mixup(通过线性组合两个现有图像来创建新图像)和 Cutout(随机移除图像区域)等方法。您可以在数据增强终极指南中了解有关这些方法的更多信息。
许多深度学习框架,如PyTorch和TensorFlow,都提供了数据增强工具。诸如Albumentations之类的专用库提供了大量高性能的增强技术,并与Ultralytics YOLO11等模型集成,以无缝地多样化训练数据。
实际应用
数据增强是许多领域构建更可靠的AI系统的标准做法。
- 医疗保健中的人工智能: 在医学图像分析中,由于患者隐私法规和某些疾病的罕见性,数据集通常很小。为了训练用于检测扫描中的肿瘤的模型,旋转、缩放和亮度变化等增强技术创建了更多样化的训练示例。这有助于模型准确识别异常,而不管成像设备或患者定位的变化如何,从而提高诊断可靠性。
- 汽车人工智能:为自动驾驶汽车开发强大的目标检测系统需要来自无数驾驶场景的数据。无需收集每种可能条件下的数据,数据增强可以模拟不同的天气(例如,添加合成的雨或雪)、照明(白天、黄昏、夜晚)和遮挡(例如,行人被另一辆汽车部分遮挡)。这使得车辆的感知系统在不可预测的现实世界环境中更加可靠。
其他重要的应用包括制造业中的人工智能,用于质量控制,以及农业中的人工智能,用于检测不同田间条件下的作物病害。
数据增强与相关概念
区分数据增强与其他数据相关技术非常重要。
- 合成数据:虽然这两种方法都增强了数据集,但它们的操作方式不同。数据增强修改现有的真实数据。相比之下,合成数据生成从头开始使用模拟或像 GAN 这样的生成模型创建全新的、人工数据。虽然增强会扩大观察到的数据周围的方差,但合成数据可以创建原始数据集中不存在的新颖场景,这是本计算机视觉中合成数据概述中探讨的一个概念。
- 数据清洗:数据清洗是更广泛的数据预处理流程的一部分,专注于识别和纠正数据集中的错误、不一致和不准确之处。其目标是提高数据质量。另一方面,数据增强是关于增加数据数量和多样性。在应用增强之前,干净的数据集是理想的起点。
- 迁移学习:此技术涉及使用在大型基准数据集(如 ImageNet)上预训练的模型,然后在较小的、特定于任务的数据集上微调它。数据增强通常在微调阶段使用,以进一步提高性能并防止在新数据上过度拟合。
诸如 Ultralytics HUB 这样的平台简化了整个模型训练过程,将数据增强作为关键步骤,以帮助用户构建强大的、最先进的视觉 AI 模型。