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

模型监控

了解模型监控对于确保人工智能准确性、detect 数据漂移以及在动态真实环境中保持可靠性的重要性。

模型监控是对机器学习(ML)模型运行后的性能进行跟踪和评估的持续过程。 机器学习 (ML)模型部署到生产环境后的 部署到生产环境后对其性能进行跟踪和评估的过程。与软件监控不同,软件监控的重点是系统正常运行时间和响应时间、 模型监控专门审查预测质量和所处理数据的统计属性。 处理数据的统计属性。这种做法是 机器学习运营 (MLOps) 的重要组成部分,可确保智能系统在与动态真实世界数据交互时保持可靠、准确和公平。 数据交互时保持可靠、准确和公平。如果没有主动监控,模型经常会出现 "静默故障",即它们生成的预测 在这种情况下,模型生成的预测结果虽然没有错误,但准确性却大大降低。

生产监控的必要性

实施监控策略的主要原因是,现实世界的环境很少是一成不变的。一个 最终可能会遇到 数据漂移,即输入数据的统计分布随时间发生变化的现象。 这种现象是指输入数据的统计分布随着时间的推移而发生变化。例如,根据光线充足的工厂车间的图像训练的视觉检测模型可能会在以下情况下失效 例如,如果照明条件发生变化,即使摄像头硬件保持不变,根据光线充足的工厂车间图像训练的视觉检测模型也可能失效。

同样,当输入数据和目标变量之间的关系发生变化时,也会出现概念漂移。 输入数据与目标变量之间的关系发生变化时,也会出现概念漂移。这在欺诈检测中很常见,因为欺诈者会不断调整其策略,以逃避检测逻辑。 在欺诈检测中,不良行为者会不断调整其策略,以规避检测逻辑。有效的监控可以提醒工程师注意这些变化,让他们 触发模型再训练或更新训练数据 训练数据,以免对业务指标造成负面影响。 影响。

需要跟踪的关键指标

稳健的监测框架通常会观察三类不同的指标:

  1. 模型质量指标:这些指标track 模型的预测能力。虽然地面实况标签 在生产过程中往往会延迟,但团队可以监控代理指标,或使用人工在环采样来估计 精确度 召回率F1 分数
  2. 数据质量和漂移:这包括跟踪输入特征的分布。统计 测试,如 柯尔莫哥洛夫-斯米尔诺夫检验 等统计测试可以量化生产数据与验证过程中建立的参考基线之间的距离。 验证
  3. 运行效率:为确保系统满足服务水平协议,工程师会track 推理延迟、吞吐量和硬件 资源消耗,例如 GPU内存使用情况。

模型监测与可观测性

虽然模型监测和可观测性密切相关,但两者的目的不同。 可观测性的目的不同。监控 通常是被动的,侧重于预定义的指标和警报--告诉你了问题(例如,"准确率降到了 90% 以下")、 "准确率下降到 90% 以下")。相比之下,可观察性提供了工具和粒度数据,如 高维日志和轨迹等工具和粒度数据,以便 调查问题发生的原因。可观察性允许数据科学家调试复杂的行为,例如 了解为什么特定的预测子集在人工智能中会出现偏差。 人工智能中的偏差

实际应用

监控的实际应用保护了 人工智能(AI)投资的价值 的价值:

  • 智能制造:人工智能在制造业中的应用 系统可以监控其预测的平均置信度。 其预测的平均置信度。置信度的突然下降可能表明相机镜头脏了 或装配线上出现了新的产品变种,表明需要进行维护。
  • 零售库存管理:在零售业部署 在零售业部署人工智能来清点货架上的库存的系统必须监测 季节性。产品的视觉外观会随着节日包装的变化而改变,这也是一种漂移。 监控有助于确保库存清点在外观发生变化时仍能保持准确。

实施实例

为监控收集数据通常始于推理阶段。下面的Python 代码段演示了如何 中的YOLO11 模型提取和记录性能数据,特别是推理速度和置信度。 ultralytics 包装

from ultralytics import YOLO

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

# Perform inference on an image source
results = model("https://ultralytics.com/images/bus.jpg")

# Extract metrics for monitoring logs
for result in results:
    # Log operational metric: Inference speed in milliseconds
    print(f"Inference Latency: {result.speed['inference']:.2f}ms")

    # Log model quality proxy: Average confidence of detections
    if result.boxes:
        avg_conf = result.boxes.conf.mean().item()
        print(f"Average Confidence: {avg_conf:.4f}")

Prometheus等工具常用于汇总这些时间序列指标、 而Grafana等可视化仪表盘可让团队实时发现趋势和异常。 异常。通过整合这些实践,企业可以确保其 计算机视觉解决方案在初始部署后 价值。

加入Ultralytics 社区

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

立即加入