首页 > 其他分享 >机器学习模型监控清单

机器学习模型监控清单

时间:2022-11-12 19:36:25浏览次数:63  
标签:需要 模型 开源 跟踪 监控 清单 数据 我们


一旦在生产环境中部署了机器学习模型,就需要确保它的性能。在本文中,我们建议如何监视您的模型和要使用的开源工具。

建立机器学习模型并不容易。在生产环境中部署服务更加困难。但即使你成功地将所有流水线连接在一起,事情也不会就此停止。

一旦模型投入使用,我们就必须立即考虑平稳运行。毕竟,它现在正在交付业务价值!模型性能的任何中断都会直接导致实际业务损失。

我们需要确保模型交付。不仅作为一个返回API响应的软件,而且作为一个机器学习系统,我们可以信任它来做出决策。

这意味着我们需要监控我们的模型。



机器学习模型监控清单_大数据

image.png

如果ML在生产中让您措手不及,这里有一个清单,列出了需要注意的事项。

1.服务健康

机器学习服务仍然是一项服务。您的公司可能已经建立了一些可以重用的软件监控流程。如果模型实时运行,则需要适当的警报和负责人随时待命。

即使您只处理批处理模型,也不要例外!我们仍然需要跟踪内存利用率、CPU负载等标准健康指标。

我们的目标是确保服务是运作的,并遵守必要的限制条件,例如响应速度。

开源工具:​​Grafana​

2.数据质量和完整性

机器学习模型有什么问题吗?在绝大多数情况下,​​数据都是罪魁祸首​​。

上游流水线和模型中断。用户进行了未通知的schema更改。数据可能在源头消失,物理传感器失效,等等。

因此,验证输入数据是否符合我们的期望至关重要。检查可能包括范围合规性、数据分布、特征统计、相关性或我们认为数据集“正常”的任何行为

我们的目标是在它返回不可靠的响应之前,确认我们正在提供模型可以处理的数据。

开源工具:​​Great Expectations​

3. 数据和目标漂移

事情会改变的, 即使我们处理非常稳定的过程。 几乎每个机器学习模型都有这个不合适宜的特性:它会随着时间的推移而退化。

当模型接收到它在训练中没有看到的数据时,我们可能会遇到数据漂移。想象一下来自不同年龄组、营销渠道或地理区域的用户。

如果现实世界的模式发生变化,概念漂移就会开始。想想一些随意的事情,比如:影响所有客户行为的全球流行病。 或者市场上提供慷慨的免费套餐的新竞争产品。 它改变了用户对您的营销活动的反应方式。

两种漂移的最终衡量标准是模型质量的下降。 但有时,实际值尚不清楚,我们无法直接计算。 在这种情况下,需要跟踪最重要的指标。 我们可以监控输入数据或目标应变量的属性是否发生了变化

机器学习模型监控清单_大数据_02

例如,您可以跟踪主要的模型特征和模型预测的分布。 然后,如果它们与过去的时间范围有显着差异,则触发警报。

我们的目标是获得世界或数据发生变化的早期信号:是时候更新我们的模型了。

开源工具:​​Evidently​

4. 模型性能

了解您的模型是否运行良好的最直接方法是将您的预测与实际值进行对比。您可以在模型训练阶段使用相同的指标,例如:分类的 Precision/Recall、回归的 RMSE 等等。如果数据质量或现实世界模式出现问题,我们将看到指标逐渐下降。

这里有一些警告。

  • 首先, ground truth实际标签通常会有延迟。例如,如果你预测的时间很长,或者数据交付滞后。有时您需要额外的努力来标记新数据以检查您的预测是否正确。在这种情况下,首先跟踪数据和目标漂移作为预警是有意义的。
  • 其次,不仅需要跟踪模型质量,还需要跟踪相关的业务 KPI。 ROC AUC 的下降并不能直接说明它对营销转化的影响有多大。将模型质量与业务指标联系起来或找到一些可解释的代理至关重要。
  • 第三,您的质量指标应该适合用户场景。例如,如果您有不平衡的类,则准确度指标远非理想。对于回归问题,您可能会关心错误符号。因此,您不仅应该跟踪绝对值,还应该跟踪误差分布。区分偶然的异常值和真正的衰减也很重要。

所以,明智地选择你的指标!


机器学习模型监控清单_大数据_03

image.png

我们的目标是跟踪模型在多大程度上满足了其目的,以及在出现问题时如何调试它。

开源工具:​​Evidently​

5. 分段性能表现

对于许多模型,上述监控设置就足够了。 但是,如果您处理更关键的用户场景,还有更多的项目要检查。

例如,模型在哪里犯了更多的错误,它在哪里工作得最好?

您可能已经知道要跟踪的一些特定分段(segments),例如:您的高级客户与整体基数的模型准确性。 它需要一个自定义质量指标,仅为您定义的段内的对象计算。

在其他情况下,主动搜索性能低下的段是有意义的。想象一下,您的房地产定价模型始终建议特定地理区域的报价高于实际报价。这是您要注意的事情!

根据场景,我们可以通过在模型输出之上添加后处理或业务逻辑来解决它。 或者通过重建模型来解决表现不佳的段。

机器学习模型监控清单_大数据_04

我们的目标是超越总体性能并了解特定数据切片的模型质量。

6. 偏见/公平

当涉及到金融、医疗保健、教育和其他模型决策可能产生严重影响的领域时,我们需要更仔细地审查我们的模型。

例如,模型性能可能会因不同人口群体在训练数据中的表现而异。 模型创建者需要意识到这种影响,并与监管机构和利益相关者一起拥有减轻不公平的工具。

为此,我们需要跟踪合适的指标,例如准确率中的奇偶校验。它适用于模型验证和持续的生产监控。因此,仪表板上还有一些指标!

我们的目标是确保公平对待所有子群体并跟踪合规性。

开源工具:​​Fairlearn​

7.异常值

我们知道模型会出错。 在某些用户场景中,例如广告定位,我们可能不在乎个别输入是否显得奇怪或平常。 只要它们不构成有意义的部分,模型就会失败!

在其他应用程序中,我们可能想了解每个此类情况。 为了最大限度地减少错误,我们可以设计一组规则来处理异常值。 例如,将它们发送给人工审核,而不是自动做出决定。 在这种情况下,我们需要一种方法来相应地检测和标记它们。

我们的目标是标记模型预测可能不可信的异常数据输入。

开源工具:​​Seldon Alibi-Detect​


机器学习模型监控清单_数据_05

image.png

监控听起来可能很无聊。 但是,让机器学习在现实世界中发挥作用至关重要。 不要等到模型失败时才创建第一个仪表板!



标签:需要,模型,开源,跟踪,监控,清单,数据,我们
From: https://blog.51cto.com/liguodong/5846762

相关文章

  • MLOps:模型监控
    使用模型度量堆栈进行模型监视,对于将已部署的ML模型的反馈回路放回模型构建阶段至关重要,这样ML模型可以在不同的场景下不断改进自己。image.png图1.MLWorkflow背......
  • Nginx整体结构、进程模型
    1. 整体图解         2. master进程和worker进程简介/***Nginx采用的是一个master进程、多个worker进程的方式1.master进程(1)监控进程、不......
  • 基于arx模型的MPC预测控制器simulink建模与仿真实现
    目录​​一、理论基础​​​​二、核心程序​​​​三、测试结果​​一、理论基础MPC的优点模型预测控制善于处理多输入多输出系统    对于MIMO系统,PID需要为每个......
  • JUC学习笔记——共享模型之管程
    JUC学习笔记——共享模型之管程在本系列内容中我们会对JUC做一个系统的学习,本片将会介绍JUC的管程部分我们会分为以下几部分进行介绍:共享问题共享问题解决方案线程安......
  • Linux 运行进程实时监控pidstat命…
    简介pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等。pidstat首次运行时显示自系统启动开始的各项统计信息,之后运行pidstat将显......
  • 教你使用monit监控Linux系统
    Monit是用于对系统中的进程、文件、目录、以及设备等进行监视和管理的工具。当你所指定的server宕机或者没有反应,monit会将该进程杀死并重启该server。并通过邮件进行通......
  • 【S-V信道】基于毫米波的5G通信S-V信道模型仿真
    1.软件版本MATLAB2021a2.本算法理论知识由于大气中存在一定含量的极化氧分子和水汽(如图3.1所示),因此毫米波在传输过程中容易被大气吸收,从而导致信号衰减,影响通信质量[13,......
  • 博迪投资学·投资组合:第六七章的模型总结
    风险资产的占比问题从经济学上讲,赌博是为了享受冒险的乐趣而承担风险,而投机则指为了风险溢价而承担风险。把赌博变成投机需要有足够的风险溢价来补偿风险厌恶投资者。......
  • OSI参考模型
    OSI参考模型OSI参考模型是怎么来的?为了解决计算机网络复杂的大问题==》分层结构(按功能)目的:支持异构网络系统的互联互通。国际标准化组织(ISO)与1984年提出开放系统......
  • 旋转门数据压缩算法在PostgreSQL中的实现 - 流式压缩在物联网、监控、传感器等场景的
      背景在物联网、监控、传感器、金融等应用领域,数据在时间维度上流式的产生,而且数据量非常庞大。例如我们经常看到的性能监控视图,就是很多点在时间维度上描绘的曲线......