产生原因

  1. 样本选择偏差
  2. 环境不平稳(时间和空间差别)

主要体现在:

  1. 协变量偏移
  2. 先验概率偏移
  3. 概念偏移

判断方法

  1. KDE分布图
  2. KS检验
  3. 对抗验证

解决方法

  1. 构造合适的验证集
    1. 人工划分验证集
    2. 选择和测试集最相似的样本作为验证集
    3. 有权重的交叉验证
  2. 删除分布不一致的特征
  3. 修正分布不一致的特征输入
  4. 修正分布不一致的预测输出
  5. 伪标签

参考文献

  1. 浅谈训练集和测试集分布不一致
  2. Dataset Shift in Classification: Approaches and Problems - Francisco Herrera, PPT:
  3. 2021“AI Earth”人工智能创新挑战赛 - 阿里天池, 比赛:
  4. Kernel Distribution - MathWorks, 文档:
  5. seaborn.kdeplot(), 文档:
  6. KS-检验(Kolmogorov-Smirnov test)— 检验数据是否符合某种分布 - Arkenstone, 博客:
  7. scipy.stats.ks_2samp(), 文档:
  8. Adversarial_Validation - Qiuyuan918, 代码:
  9. lightgbm.Dataset(), 文档:
  10. 蚂蚁金服ATEC风险大脑-支付风险识别—TOP2方案 - 吊车尾学院-E哥, 文章:
  11. 工业大数据之注塑成型虚拟量测Top5分享 - 公众号: Coggle数据科学
  12. 数据敏感度:以AI earth为栗子 - 公众号: YueTan
  13. 伪标签(Pseudo-Labelling)——锋利的匕首 - TripleLift, 文章:
  14. 训练集和测试集的分布差距太大有好的处理方法吗?- 知乎, 文章: