数据清洗
掌握用于 AI 和 ML 项目的数据清洗。学习修复错误、提高数据质量并有效提升模型性能的技术!
数据清洗是从数据集中识别并纠正或删除损坏、不准确、不完整或不一致数据的过程。这是任何机器学习(ML)工作流程中至关重要的第一步,因为训练数据的质量直接决定了结果模型的性能和可靠性。遵循“垃圾进,垃圾出”的原则,数据清洗确保像Ultralytics YOLO这样的模型在准确和一致的信息上进行训练,从而获得更好的准确率和更可信的预测。如果没有适当的清洗,数据中的潜在问题可能会导致结果偏差和较差的模型泛化能力。
关键数据清洗任务
数据清理过程涉及多个不同的任务,旨在解决不同类型的数据质量问题。这些任务通常是迭代的,可能需要特定领域的知识。
- 处理缺失值:数据集通常包含缺失条目,可以通过删除不完整的记录或使用统计方法(如平均值、中位数或更高级的预测模型)估算(填充)缺失值来解决。有关处理缺失数据的指南可以提供进一步的见解。
- 更正不准确的数据: 这包括修复印刷错误、测量不一致(例如,磅与千克)以及事实上不正确的信息。 通常应用数据验证规则来标记这些错误。
- 移除重复项:重复记录会通过对某些数据点赋予不适当的权重,从而给模型引入偏差。识别和移除这些冗余条目是一个标准步骤。
- 管理异常值:异常值是与其他观测值显着不同的数据点。根据其原因,可以删除、更正或转换它们,以防止它们对模型训练过程产生负面影响。 异常值检测技术被广泛用于此目的。
- 标准化数据:这包括确保数据符合一致的格式。示例包括标准化日期格式、文本大小写(例如,将所有文本转换为小写)和单位转换。一致的数据质量标准对于成功至关重要。
真实世界的AI/ML应用
- 医学图像分析: 在目标检测模型上训练脑肿瘤数据集等数据集时,数据清洗至关重要。该过程包括删除损坏或低质量的图像文件,将所有图像标准化为一致的分辨率和格式,并验证患者标签和注释是否正确。这确保了模型从清晰、可靠的信息中学习,这对于在医疗保健领域的人工智能中开发可靠的诊断工具至关重要。美国国家生物医学成像和生物工程研究所 (NIBIB)强调了高质量数据在医学研究中的重要性。
- 零售库存管理人工智能: 在人工智能驱动的零售中,计算机视觉模型使用摄像头监控货架库存。数据清理对于过滤掉模糊图像、删除购物者遮挡产品的帧以及消除来自多个摄像头角度的产品计数重复是必要的。纠正这些问题可确保库存系统准确了解库存水平,从而实现更智能的补货并减少浪费。Google Cloud 等公司提供分析解决方案,其中数据质量至关重要。
数据清洗与相关概念
区分数据清洗与相关的数据准备步骤非常重要:
- 数据预处理: 这是一个更广泛的术语,包括数据清洗,但也包括其他转换,以便为 ML 模型准备数据,例如归一化(缩放数值特征)、编码分类变量和特征提取。虽然清洗侧重于修复错误,但预处理侧重于格式化算法数据。有关更多详细信息,请参阅Ultralytics 关于预处理标注数据的指南。
- 数据标注: 这是向原始数据添加信息性标签或注释(标签)的过程,例如在图像中的对象周围绘制边界框以进行监督学习。数据清洗可能涉及更正在质量检查期间发现的不正确标签,但它与初始标注行为不同。数据收集和标注指南提供了有关标注的见解。
- 数据增强: 此技术通过创建现有数据的修改副本(例如,旋转图像、更改亮度)来人为地增加训练数据集的大小和多样性。数据增强旨在提高模型的泛化能力和鲁棒性,而数据清洗则侧重于提高原始数据的质量。请在数据增强终极指南中了解更多信息。
数据清洗是一项基础性的、通常是迭代性的实践,它通过确保底层数据的可靠性,从而显著提高AI系统的可靠性和性能。诸如Pandas库之类的工具通常用于基于Python的ML工作流程中的数据操作和清洗任务。通过严格的清洗来确保数据质量对于开发可信赖的AI至关重要,尤其是在处理复杂的计算机视觉(CV)任务或大规模基准数据集(如COCO或ImageNet)时。诸如Ultralytics HUB之类的平台可以帮助在整个项目生命周期中管理和维护高质量的数据集。