深圳Yolo 视觉
深圳
立即加入
词汇表

主动学习

探索主动学习,这是一种经济高效的机器学习方法,可以通过更少的标签提高准确性。了解它如何改变 AI 训练!

主动学习是机器学习(ML)中的一种动态方法 主动学习机器学习 (ML)中的一种动态方法,旨在通过有选择地选择信息量最大的数据点进行标注来优化训练过程。 主动学习是机器学习(ML)中的一种动态方法,旨在通过有选择性地选择信息量最大的数据点进行标注来优化训练过程。在标准监督 学习中,模型被动地输入一个预先标注的大型数据集。 如果数据中包含冗余或无信息的示例,则效率会很低,成本也会很高。主动学习改变了这种模式,它允许模型 交互式地查询信息源--通常是人类专家或 "甲骨文"--为特定的、模棱两可的实例请求标签、 模糊实例的标签。这种有针对性的策略大大减少了 这种有针对性的策略大大减少了实现高准确度所需的训练数据量 因此非常适合预算有限或时间紧迫项目。 预算或严格时间限制的项目的理想选择。

主动学习周期

主动学习过程是一个迭代循环,通常被描述为 人在回路中的工作流程。这种 这种循环可确保人力只专注于对改进模型贡献最大的数据。典型的工作流程包括 典型的工作流程包括

  1. 初始化:一个模型,如 Ultralytics YOLO11等模型,在一个小型、初始 标注的种子数据集进行训练。
  2. 查询:该模型对大量未标记数据进行预测。它使用查询策略 找出置信度较低或 预测不确定的样本。
  3. 注释:这些优先级较高的 "不确定 "样本将被发送给人工标注员进行标注。 标记。
  4. 更新:将新标注的样本添加到训练集中,并重复模型训练过程,以完善算法。 重复模型训练过程,以完善算法。

这种方法的有效性在很大程度上取决于取样策略。不确定性采样是 不确定性抽样是最常见的技术,算法会选择最接近其决策边界的实例。关于这些策略的 关于这些策略的 主动学习文献调查中都有关于这些策略的详细介绍

Python 示例:使用YOLO11进行不确定性采样

下面的代码片段演示了如何实现基本的不确定性采样循环。它加载一个模型,预测 对图像进行预测,并识别低置信度检测的图像,将其标记为需要人工审核的图像。

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on a list or directory of unlabeled images
results = model.predict(["image1.jpg", "image2.jpg"])

# Identify images where the model is uncertain
uncertain_samples = []
for result in results:
    # Check if detections exist and if the maximum confidence is below a threshold
    if result.boxes.conf.numel() > 0 and result.boxes.conf.max() < 0.6:
        uncertain_samples.append(result.path)
        print(f"Flagging {result.path} for manual labeling.")

print(f"Total uncertain images found: {len(uncertain_samples)}")

实际应用

主动学习在以下领域尤为重要 数据标注成本高昂或需要专 专业知识。

  • 医学影像分析:在医疗保健领域,为完成脑肿瘤检测等任务获取标记数据 脑肿瘤检测等任务时,往往需要 时间。主动学习系统可以识别罕见或不明确的异常情况,供专家审查。 识别罕见或模糊的异常情况,供专家审查。在 生物医学图像分割方面的研究表明,这种 方法可以在保持诊断精确度的同时大幅减少标注工作量。
  • 自动驾驶汽车:自动驾驶汽车会收集大量视频数据。为每个帧贴标签是不切实际的。主动学习 帮助工程师找到 "边缘情况"--例如异常的天气条件或身着服装的行人--而目前的物体检测模型很难识别这些情况。 目前的物体检测模型难以 classify。通过优先处理这些具有挑战性的场景,公司如 NVIDIA这样的公司 感知系统的安全性和稳健性。

与相关概念的区别

虽然主动学习涉及使用无标记数据,但它与其他机器学习范式不同:

  • 半监督学习:这种方法在训练过程中同时使用已标记和未标记的数据,但通常是被动使用。它通常 数据分布的假设来传播标签,而主动学习则明确地查询新信息。 信息。
  • 自我监督学习:在这种方法中,模型会根据数据结构创建自己的监督信号(例如,预测图像的 缺失的部分)。它不需要人工交互来为未标记部分生成标签,这也是谷歌人工智能实验室的一个关键研究领域。 Google 人工智能等实验室的主要研究领域。
  • 强化学习:这涉及到代理通过从环境中获得奖励或惩罚来学习决策。与 主动学习为数据点寻找静态标签,而强化学习则侧重于优化一连串的 行动序列。

纳入 MLOps

实施主动学习需要强大的 机器学习操作 (MLOps) 管道来管理模型、数据集和注释接口之间的数据流。支持数据 版本和管理的工具对于跟踪哪些样本已被查询至关重要。虽然通用库 如 scikit-learn 等通用库提供了一些实用工具,但计算机视觉工作流程通常需要与图像数据集进行定制集成,以便对所选样本进行可视化和注释。 图像数据集进行自定义集成,以便有效地对所选图像进行可视化和注释。 有效。高级用户可以访问 Ultralytics GitHub 存储库,了解如何将预测结果 的结构,以便为这些数据整理循环提供数据。

加入Ultralytics 社区

加入人工智能的未来。与全球创新者联系、协作和共同成长

立即加入