You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何交叉验证后ROC_AUC得分下降?测试集表现远低于交叉验证结果

问题排查及解决方案
  • 首先核对模型选型与任务匹配度:你当前使用的是CatBoostRegressor回归模型,而ROC_AUC是分类任务专属评估指标。如果你的任务是分类场景,应替换为CatBoostClassifier,用回归模型输出连续值计算分类指标本身就会存在离线和在线得分偏差大的问题。
  • 排查超参数调优阶段的数据泄露:你当前的调优流程没有做数据隔离,Optuna调参时已经见过全量数据的分布,后续再用全量数据做交叉验证得到的0.95得分属于乐观估计,本质是超参数过拟合到了调参用的验证集上。正确做法是采用嵌套交叉验证:外层K折拆分出独立的验证模拟集,内层K折仅在训练子集上做Optuna超参数搜索,完全避免数据泄露。
  • 交叉验证方法选型错误:StratifiedKFold是分类场景下的分层折切分工具,目的是保证每折内标签分布和全量一致,回归场景没有分层逻辑,应使用普通KFold做交叉验证。如果是时序任务,不能用随机折切分,必须按时间窗口做拆分,否则会出现用未来数据训练的问题,导致离线得分虚高、线上得分暴跌。
  • 核对数据集分布一致性:检查训练集和提交后测试集的特征分布、标签分布是否存在明显漂移,比如训练集正负样本比为1:1,测试集正负比为1:9的情况下,就算模型逻辑完全正确,ROC_AUC也会出现大幅下跌。
  • 你的调优阶段最优参数得分0.92,交叉验证反而升高到0.95不符合常规模型评估逻辑,可优先核查交叉验证的切分逻辑是否存在标签泄露、是否未做乱序、是否和调优阶段的验证集存在重叠。

内容的提问来源于stack exchange,提问作者Sukharkov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 22:54:05