对于金融信贷产品,客户违约预测是始终是风控模型体系的关键任务,只有将客户群体的风险控制在合理范围内,才能有效实现业务的综合收益。围绕信贷业务的风控建模,最经典的算法莫过于逻辑回归,由于其理论依据明确,且业务解释性较好,一直是金融信贷业务数据建模的通用方法。以贷前风控的客户违约预测场景为例,模型目标为是否违约两种情况,选择逻辑回归二分类算法来构建模型是一个首要选项。
在采用逻辑回归建立模型的过程中,由于当模型训练的拟合效果达到最佳时,入模特征的数量往往集中在10~15个范围,因此为了较大程度保证模型拟合的效果,我们通常会采用特征工程的相关方法,来选取性能表现较好的变量作为模型训练变量池。例如特征的相关性、预测性、稳定性、重要性等维度,其中特征预测性指的是特征信息值IV(Information Value),即通过IV值大小来衡量特征对目标的区分度。但是,通过特征分箱输出指标IV只是我们习惯采用的一种特征分析方法,实际上随着特征分箱过程的实现,很容易得到特征各分箱区间的WOE值(Weight Of Evidence),而这个指标除了可用于分析特征分布趋势的单调性情况之外,还有一个非常重要的数据转化功能,那就是将原始数据进行WOE编码,可以有效提升模型训练的拟合效果。
为了更直观说明特征分箱的效果,这里举个样例进行描述,现有某特征经分箱处理后(分箱数量5),输出的特征分箱数据如图1所示。我们经常关注的是分箱iv列,取值越大说明对应分箱区间好坏差异越明显,通过对各区间iv求和可得到特征整体IV值(0.013)。对于前边3列(number、range、woe),若从样本数据的形式来讲,可以称为特征分箱后可输出的3种数据,分别为标签数据、原始数据、WOE数据。
图1 特征分箱数据分布
本文将要介绍的重点内容,并非“老生常谈”的特征IV值,而是以上描述的特征分箱后3种类型数据,对模型拟合效果的性能差异。为了便于大家对此内容的深入理解,我们围绕信贷业务常见的违约预测模型场景,通过建模来详细探究下特征分箱输出数据(原始、标签、WOE)的不同效果。
首先,我们简要介绍下建模场景,现有一批存量信贷用户样本,在一定观察点相应的观察期与表现期窗口提取了相关特征X与目标Y数据。其中,X数据是用户观察期的历史行为表现,Y数据是用户表现期的贷后还款状态,具体为是否违约。本文选取的建模数据包含6000条样本与6个字段,部分数据样例如图2所示,其中ID为样本主键,含义为用户订单号;Var01~Var4为特征变量,取值均为数值型;Target为目标变量,取值二分类(1/0),代表用户贷后是否出现违约,二者比例约为2:3,非样本不平衡情况。
图2 建模数据样例
现以样本其中一个特征为例(Var1),来介绍下特征分箱后可输出的3种类型数据,这里选用常见的等频分箱方式来实现特征离散,分箱数量设置为10,具体过程详见知识星球代码详情。,输出结果如图4所示。
图4 特征分箱结果
针对以上特征分箱结果,我们可以看到当前特征的IV值为0.099,说明此变量对目标的预测能力尚可,明显高于实际业务通常定义的阈值0.02,可将其选入模型拟合的变量池。我们再来看特征分箱索引值number与分箱编码值woe,若原始数据需转换为此类数据,可结合特征相应区间range生成具体规则,从而在源数据上应用即可。例如,当606<Var1<=611,则Var1_num=2,Var1_woe=0.253548。按照这样的数据转换逻辑,我们可以将特征Var1的数据转换规则编写详见知识星球代码详情。
对于其他特征Var2~Var4,与以上原理逻辑相同,这里不再重复赘述,所有特征的数据转换规则详见本文附带代码,转换后的建模数据包含3种类型,分别为原始数据data(无需转换)、分箱索引数据data_num、分箱WOE数据data_woe,最终生成的数据样例如图6、图7所示。
图6 特征分箱索引数据
图7 特征分箱WOE数据
接下来我们根据以上数据来分别建立逻辑回归模型,算法参数均采用统一默认值。同时,为了量化对比各模型的训练效果,我们输出模型评价指标Accuracy、AUC、KS,具体实现过程详见知识星球代码详情。。
通过以上模型训练与评估过程,输出3种不同类型数据情况下的模型性能指标结果(Accuracy、AUC、KS),模型具体效果表现如图9所示。
图9 模型效果对比
由上图可以看出,经过特征分箱的转换数据(索引数据、WOE数据),在相同模型算法参数的条件下,训练得到模型的效果均比原始数据表现较好。同时,WOE数据场景下的模型效果要优于索引数据,这个结论在Accuracy、AUC、KS各指标上都有体现。因此,采用逻辑回归构建风控模型时,例如本例的客户违约预测模型,我们通过特征分箱方式对变量进行分析时,根据输出的特征IV值用于字段筛选只是一种常用方法,而更重要的是对原始数据进行woe转换,这样有利于模型训练拟合效果的提升。
综合以上内容,我们围绕信贷违约预测的建模场景,通过特征分箱可输出的3种不同类型数据,来对比分析模型训练拟合的效果,最终也证明了WOE数据对模型性能有较明显的提升作用。为了便于大家对以上内容的进一步理解与熟悉,本文额外附带了Python代码与样本数据,详情请移至知识星球查看相关内容。
…
~原创文章