交叉验证(Cross Validation)是常用的一种用来评估模型效果的方法。
当样本分布发生变化时,交叉验证无法准确评估模型在测试集上的效果,这导致模型在测试集上的效果远低于训练集。
通过本文,你将通过一个kaggle的比赛实例了解到,样本分布变化如何影响建模,如何通过对抗验证辨别样本的分布变化,以及有哪些应对方法。
目录
- 什么是样本分布变化
- 为什么样本分布变化的时候,交叉验证不适用?
- 什么是对抗验证?
- 分布变化时,有哪些优于交叉验证的方法?
- Kaggle比赛实例(lightgbm模型;Python)
1 什么是「样本分布变化」?
在真实的业务场景中,我们经常会遇到「样本分布变化」的问题。
主要体现在训练集和测试集的分布存在的差异。比如,在化妆品或者医美市场,男性的比例越来越多。基于过去的数据构建的模型,渐渐不适用于现在。
2 为什么「样本分布变化」的时候,交叉验证不适用?
当我们要做一个模型