使用SAS Enterprise Miner进行数据挖掘:信用评分构建评分卡模型

信用记分卡一直是信用评分的标准模型,因为它们易于理解,使您能够轻松评分新数据-即计算新客户的信用评分。

由Kaizong Ye,Qian Lv撰写

本文将指导您完成使用Credit Scoring for SAS® EnterpriseMiner™开发的信用记分卡的基本步骤,这是我将在信用评分中发布的一系列技巧中的第一个。

标签:

  • 数据挖掘
  • 风险管理
  • 技巧和窍门

×

评分卡的类型

在风控领域,根据评分卡使用场景的不同,一般分为申请评分卡(A卡)、行为评分卡(B卡)和催收评分卡(C卡)。其中,A卡用于信贷申请(贷前)阶段,用于评估借款人的风险水平,从而决定是否放款;B卡用于还款(贷中)阶段,根据借款人的还款行为来预测借款人的风险变化;C卡用于催收(贷后)阶段,针对已经出现不良的贷款,评估其回收的可能性。

这三种评分卡在算法上区别不大,主要区别在于数据方面。其中A卡和另外两者的区别会更大一些,因为构建A卡时无法使用借款人的还款行为数据(贷款还没放,哪来的还款行为),也不需要对不同时间段的合同进行采样,这一点后面会详细解释。因此A卡相对于后两者更简单一些,相应地,准确性也会差一些。

常用算法

刚才我们提到了算法。在信贷领域,构建评分卡最常用的算法是逻辑回归算法。逻辑回归的优点是原理简单、调参简单,且模型结果的可解释性很强,可以很好地转化为量化的分数。

建模数据集

现在,假定各位看官已经了解了逻辑回归。

那么我们来思考一个问题:在开始建模之前,我们第一步需要做什么?

当然是把数据搞到手。至于这个数据是谁提供过来的、怎么提供的,里面的坑只有做的人才能体会。

第二步就是明确模型的目标变量,即模型要预测什么。逻辑回归模型属于分类模型,用来预测样本属于什么类型。在金融领域,我们一般使用到的都是二分类的逻辑回归,它的目标变量是类别标签,即“0”和“1”。根据场景不同,它可以表示”是/否“、”好/坏“或”有/无“。

以A卡为例,它预测的是用户在申请贷款通过以后发生不良行为的概率,因此目标变量就是”贷款正常/出现不良“。我们一般把目标变量命名为“bad”,如果一条样本的bad等于1,就表示这条样本出现了不良行为,属于“坏”样本;bad等于0,表示这是一条“好”样本。

不良行为的标准是什么呢?这个我们留着以后再聊。

在确定了目标变量以后,我们还需要选择自变量。通常情况下,原始数据集中的变量几乎都不能直接入模,需要进行数据清洗。


特征工程

完成数据清洗后,我们是否就可以开始模型训练啦?并不是。在训练模型之前非常重要的一步叫做特征工程。特征工程是对原始数据进行进一步的处理、运算并生成新的变量,目的是帮助模型更好地识别数据中包含的统计规律。

另外,特征工程中还有一步非常重要,即变量分箱(Binning)。变量分箱是对连续变量进行离散化,即将连续变量划分为若干个区间,每个区间赋予相同的值。这句话可以拆解为三个问题。

首先,为什么要离散化?离散化最重要的作用是增加模型的鲁棒性,提高模型的泛化能力。连续型变量往往内部存在异常值,通过变量分箱可以消除异常值的干扰。而且变量分箱可以把缺失值划为单独的类进行处理,降低了缺失值对模型的影响。

其次,若干个区间该怎么划分?业界常用的方法是卡方分箱和决策树分箱。关于两者的原理,这里不多做解释,网上有许多成熟的代码可以直接引用。多说一句,作为数据从业人员,最重要的能力就是信息获取,不然会累死的。

最后,分箱后每个区间该赋什么值?在这里需要掌握两个概念,WOE值IV值。受篇幅所限,这两者以后我们再详细解释。

模型训练

训练模型时,我们需要将输入的数据集划分为训练集和测试集两部分。它们分别占原数据集的70%或30%(按60%、40%分也可以)。其中,训练集用于训练模型,得出模型参数;测试集用于检验模型的拟合能力,防止过拟合或欠拟合。

在算法选择方面,我们通常使用二分类逻辑回归。逻辑回归的好处是可以输出概率值,这个概率值可以通过一定的运算转化为评分卡分数。



建立记分卡用于构建信用记分卡的基本流程图中的节点包括:输入数据源,数据分区,交互式分组和记分卡。在本例中,您可以使用SAS Enterprise Miner的“帮助”菜单中提供的德语信用数据集。单击Help-> Generate Sample Data Source – > German Credit。该数据集具有二元目标good_bad,其指示客户是否默认其每月付款(指定为值’BAD’),以及与作为输入或特征的人口统计和信用局相关的若干其他变量。

交互式分组节点简而言之,交互式分组节点是一个非常灵活的工具,用于对变量进行分箱或分组。这个节点:


课程

R语言数据分析挖掘必知必会

从数据获取和清理开始,有目的的进行探索性分析与可视化。让数据从生涩的资料,摇身成为有温度的故事。

立即参加

  • 使用您可以轻松调整的选项来分类输入变量
  • 计算每个输入变量的箱的证据权重
  • 计算基尼和信息值,并拒绝具有这些统计值的低值的输入变量

在幕后运行的过程可以根据您可以轻松定制的某些约束找到相对于目标的输入的最佳分级。确保使用节点的交互式应用程序直观地确认事件计数和证据权重趋势对您的分箱有意义。如有必要,您可以合并箱,创建新组或手动调整证据权重。

手动调整证据权重

对于某些变量输入,您可能需要手动调整证据权重(WOE)。例如,可变采用总结了信用申请人在当前工作中受雇的年数。一般而言,当前工作的年数往往与信用违约成反比。对于该数据集,证据权重不会因第1组至第5组单调减少这一事实可能是由于多种原因。例如,这个数据集可能是样本偏向的,因为许多使用<2的应用程序是手动选择或“挑选”,并且它们的良好行为反映在低事件数和低权重证据中。

要防止此样本偏差影响您的记分卡,您可以使用交互式应用程序中“分组”选项卡的“粗略详细信息”视图上的“手动WOE”列。对于组1,将WOE从0.1283更改为0.7,对于组2,将WOE从-0.13131更改为-0.5。新的WOE和信息值被重新计算为新信息值

记分卡节点对使用“交互式分组”节点找到的箱或组感到满意后,运行“记分卡”节点以使用分组输入对逻辑回归进行建模。然后,它将创建每个输入组或属性的赔率的预测日志的线性变换,使其更易于解释。

默认情况下,每增加20个得分点,事件的几率就会翻倍。您正在建模的事件是付款默认值,这意味着例如,与得分为150的应用程序相比,得分为130分的应用程序的违约几率要高一倍。

在结果中,有几个有用的图表和表格,包括记分卡,分数分布,KS图,权衡图和许多其他。

​​


机器学习:在SAS中运行随机森林

阅读文章


输出变量和不利特征请注意,从导出的数据集中,记分卡节点会创建多个变量。带有前缀SCR_的变量是记分卡中每个变量的记分卡点,SCORECARD_POINTS是每个应用程序的总点数。

当您指定记分卡属性生成报告=是以输出不良特征时,您的结果还将包括每个观察结果降低得分最多的变量。您最多可以选择5种不利特征。作为如何解释此列的示例,对于下面数据集的第一次观察,扣除了14个得分点,因为贷款的目的标记为1,3,8,缺失或未知。



可下载资源

关于作者

Kaizong Ye拓端研究室(TRL)的研究员。在此对他对本文所作的贡献表示诚挚感谢,他在上海财经大学完成了统计学专业的硕士学位,专注人工智能领域。擅长Python.Matlab仿真、视觉处理、神经网络、数据分析。

本文借鉴了作者最近为《R语言数据分析挖掘必知必会 》课堂做的准备。

​非常感谢您阅读本文,如需帮助请联系我们!

 
QQ在线咨询
售前咨询热线
15121130882
售后咨询热线
0571-63341498

关注有关新文章的微信公众号


永远不要错过任何见解。当新文章发表时,我们会通过微信公众号向您推送。

技术干货

最新洞察

This will close in 0 seconds