详细内容或原文请订阅后点击阅览
构建稳健的信用评分模型(第 3 部分)
使用 Python 处理借款人数据中的异常值和缺失值。构建稳健的信用评分模型(第 3 部分)一文首先出现在 Towards Data Science 上。
来源:走向数据科学本文是我决定撰写的关于如何随着时间的推移构建强大且稳定的信用评分模型的系列文章的第三部分。
第一篇文章重点介绍了如何构建信用评分数据集,而第二篇文章则探讨了探索性数据分析 (EDA) 以及如何在建模之前更好地了解借款人和贷款特征。
,我在工程学校的最后一年。作为信用评分项目的一部分,一家银行向我们提供了有关个人客户的数据。在上一篇文章中,我解释了这种类型的数据集通常是如何构建的。
该项目的目标是开发一种评分模型,可以预测借款人一个月内的信用风险。我们收到数据后,第一步就是进行探索性数据分析。在上一篇文章中,我简要解释了为什么探索性数据分析对于理解数据集的结构和质量至关重要。
该银行提供的数据集包含 300 多个变量和超过 100 万个观测值,涵盖两年的历史数据。变量既是连续变量又是分类变量。正如现实世界的数据集所常见的那样,一些变量包含缺失值,一些变量具有异常值,还有一些变量表现出严重不平衡的分布。
由于我们当时缺乏建模经验,很快就出现了一些方法论问题。
第一个问题是关于数据准备过程。我们是否应该首先对整个数据集应用预处理步骤,然后将其分为训练集、测试集和 OOT(超时)集?或者我们应该先分割数据,然后单独应用所有预处理步骤?
这个问题很重要。评分模型是为预测而构建的,这意味着它必须能够推广到新的观察结果,例如新的银行客户。因此,数据准备流程中的每个步骤(包括变量预选)在设计时都必须牢记这一目标。
创建时间变量
训练和验证数据集
[1]
