智能风控:Python金融风险管理与评分卡建模
上QQ阅读APP看书,第一时间看更新

2.3.3 数据集切分

在时间窗口确定之后,数据集也随之固定下来。数据集在建模前需要划分为3个子集:开发样本(Develop)、验证样本(Valuation)、时间外样本(Out Of Time,OOT)。其中开发样本与验证样本使用分层抽样进行划分,以保证两个数据集中的负样本占比相同。通常开发样本与验证样本的比值为6:4。而时间外验证样本通常使用整个建模样本中时间切片最后的一段样本。开发样本对应于机器学习训练过程中的训练样本集(Train),而验证样本与时间外样本充当测试样本集(Test)的角色,用于检验模型的拟合程度、泛化能力及稳定性。有关机器学习的知识将在第3章介绍。

预测模型的本质是使用历史数据对未来的数据做预测,因此在实际应用中,应该更关注模型对未来样本的预测能力,以及模型的跨时间稳定性。在保证样本充足的前提下,通常使用观测点前的最后1个月的样本作为时间外验证样本。因为模型检测指标需要大量数据,以使得统计结果满足基本统计学假设,所以通常以每月度数据的整体进行统计和呈现。建模人员期望的模型预估表现应与模型上线后的第一次报表呈现有最大的相似度,因此使用与其时间距离最近的一整个月份的数据进行评测。

当然,时间外样本的选择也不是固定的。部分从业者认为,当贷款平台的样本随时间变化较快时,应选择较早的时间切片作为时间外样本。这是因为,较新的样本更符合模型上线后所应用的客群分布,应该将较新的样本放入开发样本中。

事实上,最终模型上线前,通常需要将开发样本、验证样本、时间外样本三者合并重新训练,对模型的参数进一步调整。具体原因可参考3.1.3节中有关于模型评价的介绍。