监控生产中的ML系统,您应该跟踪哪些指标?(下)

简介: 当提到“ML监控”时,这可能意味着很多事情。您是否在跟踪服务延迟?模型精度?数据质量?点击推荐栏的访问者占比?‍这个博客将所有指标组织到一个框架中。这是高水平的,但我们希望一个全面的概述。如果您是ML监视的新手,并且希望快速掌握它,请继续阅读。

4. 业务指标和KPI

终于到了来讨论商业价值了!

要判断 ML 模型的性能,您最终需要将其与业务 KPI 联系起来。 ML 模型是否完成了它所构建的工作?

网络异常,图片无法展示
|


业务指标监控的目标是什么

估计 ML 系统的商业价值,并在事情偏离轨道时进行调整。 ML 模型质量和商业价值之间总是存在不匹配的风险。这可能是由于不断变化的现实或模型未按设计方式使用(或根本未使用!)

这对机器学习监控有多具体

这部分是严格特定于业务的。指标和衡量它们的方式无处不在。它的范围可以从跟踪 Web 应用程序中的参与度指标到评估工业工厂中原材料的节省。这一切都归结为业务用例。‍

谁通常随叫随到

产品经理、企业主或运营团队与数据科学家一起弥合差距。

你能监控什么?‍

  • 直接业务 KPI。您可能会密切关注直接的业务和产品指标。例如,页面上的点击率或生产过程中使用的原材料数量(如果这是 ML 系统帮助优化的!)。如果幸运的话,您也许可以通过查看这些指标来跟踪 ML 解决方案的业务影响。例如,如果 ML 系统作为独立应用程序存在,您可以直接将一些收入或节省归因于它。‍
  • A/B 测试性能。目标业务指标通常受多种因素影响。一个好的旧 A/B 测试可以帮助衡量 ML 系统的孤立影响。例如,您可以拆分流量以将基于 ML 的推荐块的性能与基线进行比较。 ML 系统是否比简单地推荐前 10 名最受欢迎的商品带来更多的销售?如果你有足够的流量,你甚至可以连续运行它,让一小部分远离 ML。如果您正在处理一个新的高风险区域并关注长期模型影响(例如:影响环境的模型),这可能是合理的。‍
  • 间接指标。有时很难将 ML 性能与收入或转化等主要业务指标联系起来。在这种情况下,您仍然可以评估反映 ML 模型质量的辅助指标。如果您有启用 ML 的特征,您可以跟踪它的使用频率。如果您向用户推荐内容,您可以跟踪参与度以及点击推荐块后他们在页面上停留的时间。您还可以引入一些可解释的检查,以帮助企业主了解模型在做什么,例如,批准了多少贷款。

Nubank ML 团队关于监控策略层的一些建议:

监控使用该模型做出的决策。例如:每天有多少人获得风险模型批准的贷款?每天有多少人的账户被欺诈模型封锁?在这里监控绝对值和相对值通常很有用。

资料来源:ML Model Monitoring – 9 Tips From the Trenches,Nubank 博客。

监控业务 KPI 有什么技巧

  • 你不能总是测量它们。进行 A/B 测试可能过于昂贵、复杂或不可行。通常,您无法隔离 ML 系统的影响,因为有多种因素会影响目标 KPI。在信用评分等情况下,评估做出贷款决定的业务影响可能需要数月或数年的时间。您应该始终尝试找到一些代理,或者至少是业务利益相关者可以解释的健全性检查。但是你不能总是快速获得美元和美分的价值。
  • 在模型退化的情况下,业务指标给出的上下文最少。如果指标下降,您必须遍历每个金字塔层以对其进行排序。是模型吗?是数据吗?是软件吗?业务指标是最关键的价值指标(它们位于金字塔顶端是有原因的)。尽管如此,您仍需要更多的可观察性才能获得及时的警报并有效地调试系统。

如果可以的话,跟踪它们,但也要跟踪其他的东西。


你需要所有这些吗?

我们知道,这是很多!

本概述的目的是介绍生产 ML 系统的所有不同方面。一旦部署了 ML 应用程序,它就不再只是一个模型,而是一个由数据、代码、基础设施和周围环境组成的复杂系统。您需要对其进行整体监控。

这并不意味着您应该一直查看数十个指标和图表。

网络异常,图片无法展示
|


首先,团队中的不同人员可能使用多个仪表板或视图。

您可以在现有的后端监控工具中进行操作监控。 您可以在业务利益相关者已经使用的 BI 仪表板中可视化产品指标。 根据设置,您可以将 ML 监控指标添加到同一个 Grafana 仪表板,通过 Airflow 编排的管道测试检查它们,或者启动 ML 团队使用的独立仪表板。 ML 监控的不同方面有不同的内部用户(和问题解决者)。 拥有多个仪表板很好。

以下是 Monzo 的案例:

了解模型的实时性能是模型开发过程的关键部分。 在这个阶段,我们依靠重用而非重建原则,并采用了在整个公司中使用的工具。 我们希望我们的监控工具可供所有人使用,包括机器学习以外的人。

来源:Monzo's machine learning stack,Monzo 博客。

其次,你应该区分监控和调试。 您可能只针对最能反映服务性能的少数指标主动监控和引入警报。 您的目标是了解潜在问题。 其余的指标和图表在调试过程中会很有帮助,因为它们提供了必要的上下文。 但是您不会主动设置警报或为其定义特定阈值。

例如,如果您快速获得模型反馈,您可能会跳过有关特征漂移的警报。 毕竟,您可以评估模型质量本身。 但是,如果您注意到性能下降,则需要确定原因并决定如何处理漂移。 为重要特征预先构建分布可视化或有一种简单的方法来按需旋转它可能是有意义的。 在其他情况下,您可能更喜欢监控数据漂移,即使您获得了标签

网络异常,图片无法展示
|


总而言之,监控的目标是让人们确信系统运行良好,如果不是,则发出警报。如果发生故障,您需要必要的上下文来诊断和解决问题,这就是额外指标派上用场的地方,但您不需要一直查看它们。


总结

机器学习监控意味着监控机器学习系统。要观察和评估其性能,您通常需要一组描述系统状态的指标。该系统有几个方面值得关注。

我们可以将它们分组为:

  • 软件系统运行状况。您可以像其他后端服务一样监控它。它并非特定于数据科学和机器学习,但仍需要适当的设置。
  • 数据质量和完整性。应该查看流经特定 ML 预测管道的数据。目标是检查它没有错误或损坏,并且您仍然可以相信这些数据成为您的模型输入。您通常可以在生成预测之前引入管道测试来验证输入数据。
  • ML 模型质量。这是最特定于 ML 的监控组件。您希望密切关注模型相关性,以确保它适合任务。如果您有延迟反馈,您可能会求助于监控数据和预测漂移作为模型质量的代理。
  • 业务 KPI。业务或产品指标是模型投资回报率和价值的最终衡量标准,但通常是最难衡量的。

您可能不需要详细查看每个金字塔层。他们可能在后端工程师、数据工程、ML 团队和业务利益相关者之间有不同的内部消费者。

确切的监控策略还取决于模型是批处理还是实时模型、获得ground truth标签的速度、模型的重要性以及相关风险。您可能会使用一些指标进行实际监控(对它们设置警报),同时让其他指标可用于报告和调试目的(例如,预先计算并存储在某处)。

以下是一些指标示例的摘要:

网络异常,图片无法展示
|


相关文章
BJT放大电路的小信号模型分析法
BJT放大电路的小信号模型分析法是一种常用的分析方法,用于研究BJT放大电路在小信号条件下的放大特性。该方法基于线性化假设,将非线性的BJT放大电路近似为线性的小信号模型,以便进行分析和计算。
560 0
J3
|
存储 前端开发 JavaScript
个人开发的小破站,居然把掘金的文本编辑组件给搬上来了
个人开发的小破站,居然把掘金的文本编辑组件给搬上来了
J3
782 0
个人开发的小破站,居然把掘金的文本编辑组件给搬上来了
|
11月前
|
人工智能 缓存 异构计算
云原生AI加速生成式人工智能应用的部署构建
本文探讨了云原生技术背景下,尤其是Kubernetes和容器技术的发展,对模型推理服务带来的挑战与优化策略。文中详细介绍了Knative的弹性扩展机制,包括HPA和CronHPA,以及针对传统弹性扩展“滞后”问题提出的AHPA(高级弹性预测)。此外,文章重点介绍了Fluid项目,它通过分布式缓存优化了模型加载的I/O操作,显著缩短了推理服务的冷启动时间,特别是在处理大规模并发请求时表现出色。通过实际案例,展示了Fluid在vLLM和Qwen模型推理中的应用效果,证明了其在提高模型推理效率和响应速度方面的优势。
云原生AI加速生成式人工智能应用的部署构建
|
11月前
|
C语言
【C语言】原码、反码、补码详解 -《码上有道 ! 》
在计算机科学中,整数的表示方式有多种,包括原码、反码和补码。这些表示方式主要用于解决整数的二进制表示和计算问题。本文将详细介绍这三种表示方法,并通过示例来说明它们的原理和应用,特别是它们在C语言中的应用。
1652 5
|
消息中间件 搜索推荐 UED
Elasticsearch 作为推荐系统后端的技术架构设计
【8月更文第28天】在现代互联网应用中,推荐系统已经成为提高用户体验和增加用户粘性的重要手段之一。Elasticsearch 作为一个高性能的搜索和分析引擎,不仅能够提供快速的全文检索能力,还可以通过其强大的数据处理和聚合功能来支持推荐系统的实现。本文将探讨如何利用 Elasticsearch 构建一个高效且可扩展的推荐系统后端架构,并提供一些具体的代码示例。
874 0
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的小型房屋租赁系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的小型房屋租赁系统附带文章源码部署视频讲解等
143 1
|
机器学习/深度学习 监控 安全
深度学习驱动下的智能监控系统:图像识别技术的创新应用
【4月更文挑战第4天】 在智能监控领域,基于深度学习的图像识别技术已成为提升系统智能化水平的关键。本文旨在探讨该技术如何优化智能监控系统,并分析其在实际应用中的性能和挑战。通过对当前深度学习模型与算法的研究,我们着重于图像识别技术在实时监控、异常行为检测和人脸识别等方面的应用。进一步地,本文将讨论这些技术在实际部署时所面临的数据隐私、模型泛化能力和计算资源要求等问题,并提出相应的解决策略。
318 1
|
关系型数据库 数据安全/隐私保护 PostgreSQL
基于Docker快速搭建 PostgreSQL 高可用方案
基于Docker快速搭建 PostgreSQL 高可用方案
|
SQL JavaScript 前端开发
【Node.js实战】一文带你开发博客项目(API 对接 MySQL)
【Node.js实战】一文带你开发博客项目(API 对接 MySQL)
466 0
|
机器学习/深度学习 人工智能 监控
ML 模型监控最佳工具(下)
如果您迟早将模型部署到生产环境,那么您将开始寻找 ML 模型监控工具。 当您的 ML 模型影响业务时,您只需要了解“事物是如何工作的”。 当事物停止工作时,你真正感受到这一点的第一刻。如果没有设置模型监控,您可能不知道哪里出了问题以及从哪里开始寻找问题和解决方案。