真实面经题目 · 原创解析
线上模型效果变差时,如何从数据漂移、特征、模型版本、评估集和服务链路排查?
这道题考模型线上效果诊断。关键是先确认指标和影响范围,再按数据、特征、模型、评估、服务链路和实验版本逐层排查,避免一上来只怪模型。
真实面经题目 · 原创解析
这道题考模型线上效果诊断。关键是先确认指标和影响范围,再按数据、特征、模型、评估、服务链路和实验版本逐层排查,避免一上来只怪模型。
线上模型效果变差,我会先确认“变差”具体体现在哪个指标、从什么时候开始、影响哪些人群和场景,例如 CTR、转化、准确率、召回率、NDCG、投诉率或人工抽检。然后做时间线和切片分析,对比模型版本、prompt 或特征版本、实验组、流量入口、地区、设备、品类和新老用户。数据侧查输入分布漂移、缺失率、异常值、日志埋点、标签延迟和样本选择偏差;特征侧查训练和线上口径是否一致、特征服务是否延迟、默认值是否增多、schema 是否变化。模型侧查版本发布、参数、阈值、校准、召回候选和排序分数分布。服务侧查是否走了降级、缓存、超时、错误 fallback 或错误路由。最后用离线回放、影子流量、A/B 对比和人工 badcase 归因确定根因,必要时先回滚止血,再修复数据或模型。
效果变差不能只说“用户反馈不好”。要明确指标、时间点、幅度和影响面:是点击下降、转化下降、准确率下降、召回下降、投诉或退货上升,还是某类请求空结果增多。然后按模型版本、实验桶、渠道、用户分层、品类、地域、设备、时间段和流量入口切片,检查是否有 A/B 分桶污染、流量结构变化或下游业务策略变化。如果只有某个实验组或某个品类下降,排查方向和全局下降完全不同。
线上模型依赖输入分布稳定和特征口径一致。要检查数据漂移,例如类目分布、文本长度、图像质量、用户行为频率、价格区间、季节流量是否变化;也要查特征缺失率、默认值比例、异常值、枚举新值、schema 变更、特征延迟和训练线上不一致。常用方法包括 PSI、KL 散度、分布直方图、缺失率对比、特征重要性变化和 badcase 样本回放。
模型侧要确认是否发布了新模型、新阈值、新校准策略、新 prompt、新召回策略、新排序权重或新后处理规则。离线评估集如果过旧、分布单一或存在数据泄漏,可能无法预警线上下降。应拿线上近期样本做回放,对比新旧模型输出分布、置信度校准、阈值命中率、AUC、logloss、TopK 变化和关键切片指标。对于推荐或排序,还要拆召回、粗排、精排和重排,确认是候选集变少、排序错位,还是业务规则把好结果过滤掉。
线上请求不一定都走到预期模型。超时、缓存、降级、小模型 fallback、错误路由、版本灰度、特征读取失败和后处理异常都可能让真实结果和离线评估不一致。排查时要抽取 trace,确认每个请求的模型版本、特征版本、缓存命中、候选数量、耗时、错误码、降级原因和最终返回。处理策略上,严重下降先回滚或扩大保守降级,再修复根因;修复后通过离线回放、影子流量和小流量 A/B 验证。
可以先看代理指标,例如点击、停留、负反馈、空结果率、预测分数分布、人工抽检和短周期转化。等真实标签回来后再校准结论。标签延迟场景下不能只等最终指标,否则止血太慢。
可以用同一批近期线上输入分别跑新旧模型。如果旧模型也变差,优先查数据和特征;如果只有新模型变差,查模型版本、阈值和训练过程。再结合特征分布和实验桶切片,可以进一步定位。
对同一批样本同时记录训练特征生成结果和线上实时特征,比较字段值、缺失率、默认值、时间窗口和枚举映射。也可以做 feature parity test,把线上请求回放到离线 pipeline,检查差异来源。
如果影响范围大且业务损失明显,应先回滚或降级止血,同时保留日志和样本用于复盘。根因明确且修复风险小可以热修,但仍要小流量验证。不要在全量事故中边猜边改模型。