模型监控是对部署到生产中的机器学习(ML)模型的性能进行跟踪和评估的持续过程。它包括观察与模型准确性、运行健康状况和数据特征相关的关键指标,以确保模型随着时间的推移表现符合预期。这种做法是机器学习运营(MLOps)生命周期的重要组成部分,可确保部署的人工智能(AI)系统在真实环境中保持可靠、有效和可信。如果不进行监控,模型的性能就会无声无息地下降,从而导致糟糕的预测和负面的业务结果。
为什么模型监测很重要?
ML 模型是根据历史数据训练出来的,但现实世界是动态的。数据模式、用户行为或环境的变化会导致模型在部署后性能下降。进行监控的主要原因包括
- 检测性能下降:随着时间的推移,模型的准确性会降低。监控有助于识别精确度、召回率或F1 分数等性能指标的下降。您可以在我们的指南中了解有关YOLO 性能指标的更多信息。
- 识别数据漂移:输入数据的统计属性可能会发生变化,这种现象被称为数据漂移。当模型在生产中看到的数据与训练数据有很大差异时,就会发生这种情况。监控输入特征有助于检测这种偏移。
- 发现概念漂移:输入特征与目标变量之间的关系会随着时间的推移而改变(概念漂移)。例如,客户的偏好可能会发生变化,从而使旧的预测模式变得过时。概念漂移需要对模型进行重新训练或调整。
- 确保运行健康:监控跟踪推理延迟、吞吐量和错误率等运行指标,确保模型服务基础设施(模型服务)运行平稳。
- 维护公平与道德:通过跟踪不同人口群体或数据片段的表现,监控有助于发现和减少人工智能中的偏见,从而促进人工智能伦理。
监测哪些方面?
有效的模型监测通常需要跟踪几类指标:
- 预测性能:准确率、平均精度(mAP)、AUC 和错误率等指标,通常与验证过程中设定的基准进行比较。
- 数据质量和完整性:跟踪输入数据中的缺失值、数据类型不匹配和范围违规。
- 输入数据漂移:统计量(如群体稳定指数、Kolmogorov-Smirnov 检验),用于比较生产输入特征的分布与训练数据的分布。
- 预测/输出漂移:监测模型预测的分布情况,以发现重大变化。
- 运行指标:系统级指标,如 CPU/GPU利用率、内存使用率、请求延迟和吞吐量等系统级指标。普罗米修斯(Prometheus)等平台通常用于此目的。
- 公平性和偏差度量:使用人口统计学均等或均等几率等指标,评估不同敏感属性(如年龄、性别、种族)的模型性能差异。
模型监控与相关概念
重要的是要将模式监控与类似术语区分开来:
- 可观察性:监控侧重于跟踪预定义的指标以评估已知的故障模式,而可观察性则提供工具(日志、指标、轨迹)以探索和了解未知的系统状态和行为。当监控发现异常时,可观察性可以进行更深入的调查。
- MLOps:MLOps 是一套更广泛的实践,涵盖整个 ML 生命周期,包括数据管理、模型培训、部署、治理和监控。模型监控是 MLOps 框架中的一个重要组成部分,特别关注部署后的模型健康状况。
- 模型评估:评估通常在部署前进行,使用静态验证数据或测试数据来评估模型的质量。监测是在部署后对实时生产数据执行的一个持续过程。在此了解有关模型评估和微调的见解。
实际应用
- 电子商务推荐系统:电子商务平台使用 ML 模型进行产品推荐(推荐系统)。模型监控跟踪推荐商品的点击率(CTR)和转换率。如果监控发现点击率突然下降(性能下降)或购买的产品类型发生变化(新趋势导致的概念漂移),就会触发警报。这将促使进行调查,并可能利用更新的交互数据重新训练模型。Amazon Personalize包括监控推荐有效性的功能。
- 自动驾驶汽车感知: 自动驾驶汽车在很大程度上依赖于计算机视觉模型,例如 Ultralytics YOLO等计算机视觉模型进行物体检测。模型监控可持续跟踪行人、骑车人和其他车辆等物体的检测准确度YOLO 性能指标)和置信度分数。它还监控输入数据特征(如图像亮度、天气条件),以检测漂移。如果模型的性能在特定条件下(如暴雨、光线不足)明显下降,系统可能会切换到更安全的运行模式,或提示需要更新在更多样化数据上训练的模型(数据增强)。Waymo等公司在监控感知系统方面投入了大量资金。