2023年9月,某金融风控模型离线AUC 0.81、KS 0.42,指标漂亮,上线首月逾期率却比规则策略高0.9个百分点。复盘发现训练集是2022年数据,2023年客群结构变了——新客占比从35%升到58%,模型对新客区分度只有0.63。离线评估没过"时间外样本"这一关。
评估要分三层看。第一层区分度:AUC、KS、Gini;第二层校准度:预测概率和实际发生率的偏差,常用可靠性曲线和Brier分数;第三层稳定性:PSI(群体稳定性指数),PSI超过0.25说明分布漂移严重,超过0.1要预警。很多团队只报AUC,校准和稳定性一概不看,线上必翻车。
分类阈值不是0.5。某营销模型预测"是否购买",AUC 0.76,用0.5做阈值时精确率只有31%、召回率68%。把阈值调到0.72后,精确率升到52%、召回降到41%,按每次触达成本0.3元、单次成交利润45元算,整体收益反而高23%。阈值要按业务成本矩阵算,不是拍脑袋。
类别不平衡的处理要小心。正样本占比1.2%时,重采样把正样本过采样到10%,模型AUC涨了0.04,但预测概率整体偏高约8倍,校准全坏。折中方案:训练时用重采样,评估和上线前用原始分布做概率校准(Platt缩放或等渗回归),两者分开处理。
交叉验证也有坑。时间序列数据不能随机K折,要用前向滚动验证:用1-6月训练、7月验证,再用1-7月训练、8月验证。某销量预测团队随机5折CV的RMSE是12.3,前向验证RMSE是19.8,差了60%,上线后预测偏差确实大。
线上评估要有对照组。模型上线先切10%流量跑两周,对比实验组和对照组的核心指标,同时监控特征覆盖率(低于95%要报警)和打分分布(PSI周环比)。某推荐团队上线首日特征覆盖率只有87%,原因是新类目缺历史数据,及时发现后补了兜底规则,避免了较大损失。
一条经验:离线指标涨了不等于线上涨。上线前问三个问题——评估集和线上分布一致吗?阈值按业务成本算过吗?有对照组和回滚方案吗?三个都答"是",再放量。