探索数据标注在机器学习中的关键作用、流程、挑战以及在人工智能开发中的实际应用。
数据标注是识别原始数据(如图像、视频帧、文本或音频)并添加信息标签或元数据以提供上下文的基础过程。在机器学习(ML)领域,算法无法天生理解物理世界,它们需要"导师"的引导。这种引导以监督学习中使用的标注数据集形式呈现。 标签作为基准标准,代表着模型 努力预测的正确答案。无论是训练简单的分类器,还是像 Ultralytics 复杂的架构,这些标签的准确性、一致性和质量 都是决定模型成功与否的首要因素。
虽然在日常对话中这两个术语常被互换使用,但其中存在值得注意的微妙差异。 "数据标注"通常指为数据赋予类别或标签的广泛行为(例如将邮件标记为"垃圾邮件")。 相比之下, 数据标注更常特指计算机视觉(CV)领域, 涉及使用边界框、多边形或关键点 对物体进行精确划分。但在多数 机器学习运维(MLOps)工作流中, 这两个术语都描述了创建高质量 训练数据的过程。
标注方法会根据模型需要执行的任务而变化。常见类型包括:
数据标注的实用性几乎覆盖了所有采用人工智能的行业。
创建标注数据集通常是人工智能项目中最耗时的环节。该过程通常采用"人机协同"(HITL)方法,由人工标注员验证标签以确保高精度。 现代工作流Ultralytics 工具, 简化数据集管理并支持团队协作标注。 同时可采用主动学习等先进技术: 模型预先标注数据后,人类仅需修正低置信度预测结果, 从而显著提升处理效率。
以下示例演示了如何使用预训练的YOLO26模型为新图像自动生成标签(自动标注),这些标签随后可由人工进行修正:
from ultralytics import YOLO
# Load the YOLO26n model (nano version)
model = YOLO("yolo26n.pt")
# Run inference on an image to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Save the detection results to a text file in standard YOLO format
# This file can now be used as a starting point for data labeling
results[0].save_txt("bus_labels.txt")