同事的推荐模型刚上线第二周,点击率就像坐滑梯一样往下掉。他抱着脑袋怀疑人生,怀疑特征工程没做对,或者超参数调错了。其实模型上线后效果衰减,几乎是一个必然事件——消费品位变了、传感器换了新版、连经济大环境都在波动,训练时学到的规律在真实世界面前,保质期比你想象的要短得多。
与其事后救火,不如提前布防。这篇内容会梳理一个思路:怎样主动监控那些用于分类和回归的判别式机器学习模型,在精度下降惹出麻烦之前先发现问题。重点放在两件事上:数据漂移和模型漂移,同时会拆解一个基于开源Evidently库和Amazon SageMaker AI加MLflow的监控方案,让监控结果能直接喂给你的看板、告警渠道,甚至自动触发重新训练。
![]()
先分清两个“漂移”,才不会乱投医。
- 数据漂移:输入数据的统计特征变了。上游数据源突然把某个列从整数改成浮点类型,或者公司推出了一条完全没有过的新产品线,都会让模型“看到”从来没见过的数据分布。测量它的办法不复杂:给训练数据集算一份基线统计量,再对生产环境中定期采集的数据算同样的统计量,前后一比,差值就是漂移幅度。
- 模型漂移:预测准确度自己往下掉。哪怕输入数据的结构没怎么变,模型学到的概率模式也可能已经和现实脱节。比如经济回暖,消费者的下单习惯一下子变了,原来的购买概率曲线就失效了。要检测它,得想办法收集真实标签,算出模型质量指标,再跟训练阶段的指标做个对比。这个比较会直白地告诉你:模型是不是悄悄变笨了。
全托管的SageMaker AI很香,但有时候你需要自己掌勺。Amazon SageMaker AI作为全托管平台,从构建、训练到部署都能一条龙搞定。然而,直接用它内置的监控功能未必能满足所有场景。比如你想对整个建模生命周期做更精打细算的成本控制,需要监控一些托管服务还没覆盖的特殊用例,或者想把模型监控无缝塞进公司已有的统一界面和可观测性管线里——这时就得换个思路,自己动手做定制化的监控管道。
于是就有了开源的Evidently加SageMaker与MLflow的组合拳。这篇文章原本介绍的架构正是这么个方向:用Evidently这个Python库来计算数据和模型漂移指标,再结合Amazon SageMaker AI和MLflow,把指标的计算、追踪和可视化的流程串起来。监控产出的结果可以被推送到任何你习惯的仪表板上,也可以设定规则主动通知相关人员,甚至更进一步,直接触发模型重新训练的流水线,让人不需要守在屏幕前盯着一堆图表叹气。
没有一种监控方案能一劳永逸,但弄清楚数据怎么变、模型怎么退化,至少能让整个团队把精力花在真正该修的地方,而不是在每周三的复盘会上对着几张模糊的曲线图互相甩锅。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.