Active Learning
了解主动学习如何优化 AI 训练。学习如何使用 Ultralytics YOLO26 识别信息量高的数据、降低标注成本并提升准确率。
主动学习是机器学习 (ML)中的一种策略性方法,算法会主动选择信息量最大的数据点进行标注,而不是被动接受预先标注好的数据集。在传统的监督学习中,模型通常需要大量带注释的数据,而创建这些数据可能成本高昂且耗时。主动学习通过识别“不确定”或“困难”的示例——即接近决策边界,或模型缺乏信心的示例——并请求人工标注者仅标注这些特定实例,从而优化这一过程。这种迭代循环使模型能够用显著更少的标注样本获得较高的准确率,因此非常适合预算或时间有限的项目。
主动学习循环的工作原理#
主动学习的核心是一个通常称为人在环中的反馈循环。模型不是在静态数据集上训练一次后就结束,而是通过查询和更新的循环不断演进。
-
初始化:该过程从一小组带标注的训练数据开始,用于训练初始模型,例如Ultralytics YOLO26。
-
查询选择:模型会评估大量未标注数据。通过使用查询策略——最常见的是不确定性采样——模型会选择其预测置信度最低的图像或文本。
-
重新训练:新标注的数据会被添加到训练集中,然后重新训练模型。更新后的模型能够更好地选择下一批容易混淆的样本。
实际应用#
在数据丰富,但标注需要专业知识或成本高昂的行业中,主动学习不可或缺。
- 医学图像分析:在放射学等领域,标注需要经过专业认证的专家,而他们的时间极其宝贵。与其让医生标注数千张一目了然的扫描图像,不如使用主动学习系统筛选出模棱两可的病例,例如早期肿瘤或罕见异常,让专家只专注于真正能够提升模型诊断能力的图像。
- 自动驾驶车辆:自动驾驶汽车会生成数 PB 的视频数据。为每一帧进行标注是不可能的。主动学习可以帮助工程师识别边缘案例,例如穿着服装的行人或在大雪中驾驶的场景,而标准的目标检测模型可能会漏检这些情况。通过优先处理这些罕见场景,企业无需在重复的高速公路视频上浪费资源,也能提升安全性。
Python 示例:筛选不确定的预测结果#
以下示例演示了如何使用Ultralytics YOLO26实现简单的“不确定性采样”逻辑。我们加载模型,对图像运行推理,并标记置信度分数低于特定阈值的图像,以便进行人工审核。
from ultralytics import YOLO
# Load the latest YOLO26 model
model = YOLO("yolo26n.pt")
# List of unlabeled image paths
unlabeled_images = ["https://ultralytics.com/images/bus.jpg", "https://ultralytics.com/images/zidane.jpg"]
# Run inference
results = model(unlabeled_images)
# Identify samples with low confidence for active learning
uncertain_threshold = 0.6
for result in results:
# Check if any detection confidence is below the threshold
if result.boxes.conf.numel() > 0 and result.boxes.conf.min() < uncertain_threshold:
print(f"Active Learning Query: {result.path} needs human labeling.")区分相关概念#
区分主动学习与类似的训练范式非常重要:
- 半监督学习:虽然这两种方法都会利用未标注数据,但半监督学习会根据模型的高置信度预测,自动为数据分配伪标签。相比之下,主动学习会针对低置信度预测,明确请求人工输入。
- 迁移学习:这种方法会采用一个预训练模型(例如在ImageNet上训练的模型),并将其适配到新任务。主动学习关注的是要标注哪些数据,而迁移学习关注的是复用已学习的特征。
- 强化学习:在这种方法中,智能体通过与环境交互并获得奖励来学习。主动学习则不同,它从预言者处获取静态的真实标签,而不是为了获得奖励而优化一系列动作。
与 MLOps 集成#
有效实施主动学习需要一套稳健的机器学习运维 (MLOps)流水线。你需要基础设施来管理数据版本、触发重新训练任务,并向人工标注者提供标注界面。与Ultralytics 生态系统集成的工具可以让用户在推理、数据整理和训练之间无缝切换。例如,使用自定义训练脚本可以让开发者快速将新的主动学习数据批次整合到其 YOLO 模型中。
如需进一步了解采样策略,研究人员通常会参考主动学习文献中的综合性综述。此外,理解模型评估指标对于验证主动学习循环是否确实提升了性能至关重要。









