第 42 卷第 6 期2023年 11 月
Vol.42 No.6
Nov. 2023中南民族大学学报(自然科学版)
Journal of South-Central Minzu University(Natural Science Edition)
基于XGBoost机器学习模型的信用评分卡与
基于逻辑回归模型的对比
张利斌,吴宗文
(中南民族大学经济学院,武汉430074)
摘要分别基于逻辑回归模型和XGBoost机器学习模型构建了信用评分卡,比较了两种模型在个人信用评分上的表现,指出XGBoost机器学习模型在“AUC、KS、F1和Accuracy值”上表现更加优秀.首先,从数据的包容性、可解释性以及模型的准确性方面对两个模型进行了对比;其次,使用住房贷款违约风险预测的竞赛数据,分别构建了基于逻辑回归模型和XGBoost机器学习模型的信用评分卡,并使用了AUC、KS、F1
和Accuracy来评估这两个模型的分类效果和预测准确程度;最后,通过对比两个模型的评估结果,分析了XGBoost机器学习模型相较于逻辑回归模型更加优秀的原因.结论指出:XGBoost机器学习模型在测试集上的AUC、KS、F1和Accuracy值比逻辑回归模型分别提升了19.9%、17.5%、15.4%和11.9%,其原因在于XGBoost机器学习模型纳入了更多的维度信息、更加科学的缺失值处理方式以及考虑了正则化项的算法原理.
关键词逻辑回归模型;XGBoost机器学习模型;信用评分卡
中图分类号TP181;F832.51 文献标志码 A 文章编号1672-4321(2023)06-0846-07
doi:10.20056/jki.ZNMDZK.20230616
Credit scoring card based on XGBoost machine learning model
Compared with logistic regression model
ZHANG Libin,WU Zongwen
(School of Economics, South-Central Minzu University, Wuhan 430074, China)
Abstract A credit scoring card based on logistic regression model and XGBoost machine learning model are constructed respectively. The performance of the two models are compared in personal credit scoring,and it is pointed out that XGBoost machine learning model performs better in “AUC, KS, F1 and Accuracy values”. Firstly, a comparative analysis of the two models is made from the aspects of data inclusiveness, interpretability and model accuracy. Secondly, using the competition data of housing loan default risk prediction,credit scoring cards based on logistic regression model and XGBoost machine learning model are constructed respectively, and AUC, KS, F1 and Accuracy are used to evaluate the classification effect and prediction accuracy of the two models. Finally,by comparing the evaluation results of the two models,the reason why XGBoost machine learning model is better than logistic regression model is analyzed. The conclusion points out that the values of AUC, KS, F1 and Accuracy of XGBoost machine learning model in the test set are increased by 19.9%, 17.5%, 15.4% and 11.9% respectively compared with logistic regression model. The reason is that XGBoost machine learning model includes more dimensional information, more scientific missing value processing method and better algorithm principle considering regularization term.
Keywords logistic regression model; XGBoost machine learning model; credit score card
在金融风控领域,如何根据贷款客户的基本信息和行为数据等,利用一定的分类模型,将贷款客户区分为违约客户和非违约客户,从而减少贷款机构的信用风险,是金融贷款机构孜孜不倦的追求.
收稿日期2022-03-15
作者简介张利斌(1973-),男,教授,博士,研究方向:产业经济学,E-mail:*****************基金项目中南民族大学研究生创新基金项目资助项目(3212021sycxjj195)
第 6 期张利斌,等:基于XGBoost机器学习模型的信用评分卡与基于逻辑回归模型的对比
当前有两种主流分类模型——统计学模型和机器
学习模型.逻辑回归模型是最常用的统计学模型,正则化的回归分析
其优点主要体现在:第一,理论基础成熟,适合二分
类问题[1];第二,可解释性较强,易于理解[2];第三,
模型训练时间短[3].缺点主要体现在:第一,容易产生过拟合,泛化能力弱[4];第二,特征空间很大时,分
类性能不好[5].近年来,XGBoost机器学习模型在分类问题中表现优秀,受到越来越多风控人员的青睐,其优点主要体现在:第一,计算复杂度低,运行速度快,准确度高[6];第二,可处理数据量大[7].缺点主要体现在:第一,建模过程不透明,模型较难解释[8];第二,理论基础不够成熟,布置上线较困难[9].
在分类模型的评价方面,当前学者主要使用AUC、KS、F1和Accuracy值等来评价逻辑回归模型和XGBoost机器学习模型的效果,并指出XGBoost 机器学习模型比逻辑回归模型在AUC、KS、F1和Accuracy值上表现更加优秀,但是并未解释更加优秀的原因.本文拟从维度信息的损失程度、缺失值的处理方式以及模型的算法原理三方面来解释其中的原因.
1 模型对比
1.1 逻辑回归模型
逻辑回归模型[10]是线性回归模型的改进,是一
种“广义的线性回归模型”,该模型是分类问题中最
常用的统计学模型.逻辑回归模型的一般形式见
式(1)所示,如下:
f(x)=1
1+e-()
β0+β1x1+β2x2+⋯+βn x n,(1)其中,β0~βn为模型的估计参数,x1~x n为模型的变量.
在金融风控领域,以贷款客户的违约与否作为逻辑回归模型的因变量,一般称为“非违约客户”和“违约客户”,用0或1来表示,即f(x)<0.5为0;f(x)>0.5为1.
1.2 XGBoost机器学习模型
XGBoost机器学习模型[11]比传统的GBDT (Gradient Boosting Decision Tree,以下简称GBDT)更加进步的原因在于:传统的GBDT只利用了一阶的导数信息,而XGBoost机器学习模型对损失函数进行了二阶的泰勒展开,求得模型最优解的效率更高.具体如下:
将XGBoost机器学习模型进行t次迭代之后,此时的目标函数为:
L()t=∑i=1n l()
y
i
y
i
t-1+f t(x i)+Ω(f t),(2)将目标函数进行泰勒二阶展开可得:
L t≈∑i=1néëêêùûúú
l()
y
i
,y i(t-1)+g i f t(x i)+12h i f2t()x i+Ω(f t)
,(3)
g
i=∂y(t-1)l(y t,y
∧(t-1))为每个样本的一阶导数,1
2h i=
1
2∂2y(t-1)l(y i,y∧(t-1))为每个样本的二阶导数.
1.3 模型优缺点
逻辑回归模型和XGBoost机器学习模型的优缺点如表1所示.相较于XGBoost机器学习模型,逻辑回归模型更加方便实现,并且可解释强;XGBoost 机器学习模型在处理大数据时精度更高,并且可以有效防止过拟合.
2 实证分析
本文的实证分析思路如下:首先,分别运用逻辑回归模型和XGBoost机器学习模型来构建信用评分卡,并运用AUC、KS、F1和Accuracy这四个指标评估模型的效果.其次,从维度信息的损失程度、缺失值的处理方式以及模型的算法原理三个方面对比两个模型,分析XGBoost机器学习模型比逻辑回归
表1 逻辑回归模型和XGBoost机器学习模型的优缺点
Tab. 1 Advantages and disadvantages of logistic regression model and XGboost machine learning model
模型
逻辑回归模型XGBoost机器学习模型
优点
适用于二分类问题
简单易理解,可解释性强
训练速度快
精度高
能有效处理缺失值
能有效防止过拟合
缺点
对自变量的多重共线性表现敏感
特征空间很大时,分类性能不好
容易产生过拟合,分类精度不高
建模不透明,不易理解
处理低偏差、高方差的数据效果不好
847
第 42 卷
中南民族大学学报(自然科学版)模型更加优秀的原因.2.1 逻辑回归模型2.1.1 数据介绍
实验数据来自于kaggle (https ://www.
kaggle/c/home -credit -default -risk/overview )的住
房贷款违约风险预测的竞赛数据.本文的实验数据
集包括20000个训练数据和5000个测试数据,其中实验数据集共有121列,包括个人基本信息、所在地区情况、借贷信息状况以及公司相关状况等.本文为更好地解释实证部分,将实验数据集的英文变量翻译为中文变量,如表2所示.
2.1.2 数据预处理
(1) 无效值处理
原始数据表中的SK_ID_CURR 变量在实际建
模中的用处不大,且包含用户的隐私信息,故需直接删除.
(2) 缺失值处理
根据jupyter 分析软件可得,121个变量中共有
65个有缺失值.其中,共有57个变量的缺失比例大于10%,将其直接删除,对剩余的缺失变量做相应
的填充处理,具体处理方式如表3所示.2.1.3 入模变量筛选
对逻辑回归模型来说,入模变量的选择至关重
要.本文选择WOE 分箱、IV 值筛选法以及相关性检
测相结合的方法筛选入模变量,具体思路如下:首先,根据变量的阈值以及业务趋势进行WOE 分箱;其次,根据WOE 分箱计算变量的IV 值,筛选IV 值大于0.3的变量(IV 值大于0.3有较高的预测能力);最后,对IV 值大于0.3变量进行相关性检测,剔除相关性大于0.5中IV 值较小的那个变量.
一般来说,建立逻辑回归模型只需选择10~12
个变量[12].本文选择IV 值排名靠前且通过相关性检测的11个变量作为入模变量,具体如表4所示.2.1.4 逻辑回归模型的建立
根据SPSS 软件,确定x 1~x 11各变量的估计参
数,从而建立逻辑回归模型,具体表达式如(4)式所示:
f (x )
=
1
1+e -()-1.132+0.535x
1
+0.462x 2+0.769x 3+0.713x 4+0.976x 5+0.875x 6+0.568x 7+0.760x 8+0.375x 9+0.179x 10+0.268x 11
,
(4)
表2 变量解释表Tab. 2 Variable interpretation
英文变量名称TARGET
NAME_EDUCATION_TYPE AMT_INCOME_TOTAL DAYS_EMPLOYED DAYS_BIRTH FLAG_OWN_REALTY
REGION_RATING_CLIENT
REG_CITY_NOT_WORK_CITY
FLAG_OWN_CAR FLAG_MOBIL
NAME_INCOME_TYPE
NAME_FAMILY_STATUS
REGION_RATING_CLIENT_W_CITY
CODE_GENDER AMT_CREDIT
NAME_HOUSING_TYPE
DEF_30_CNT_SOCIAL_CIRCLE
…
DEF_60_CNT_SOCIAL_CIRCLE REG_CITY_NOT_LIVE_CITY BASEMENTAREA_AVG ORGANIZATION_TYPE
中文变量名称违约情况教育程度收入就业年数年龄不动产拥有情况所在地区评级
常驻地址和工作地址匹配情况
车辆情况家庭电话提供情况
收入类型家庭状况所在城市的评级
性别贷款金额住房情况违约60天的天数
…
违约30天的天数常驻地址和联系地址匹配情况
房屋的面积大小公司的组织情况
解释
0:正常还款;1:违约客户受教育程度客户的年总收入申请人就业年数客户申请贷款时的年龄Y :有;N :没有
1:最高;2:中等;3:较差
1:相同;0:不相同(城市级别匹配)
Y :有;N :没有1:有;0:没有客户的收入类型客户的家庭状况1:最高;2:中等;3:较差
F :女;M :男
客户的贷款金额
客户的住房情况(租房or 与父母同住)
客户违约30天的次数
…
客户违约60天的次数1:相同;0:不相同(城市级别匹配)
客户居住房屋的面积大小客户工作的组织类型
848
第 6 期
张利斌,等:基于XGBoost 机器学习模型的信用评分卡与基于逻辑回归模型的对比
其中x i (i =1⋯11)为11个入模变量;
f (x )
为预测结果.
2.1.5 信用评分卡的建立
根据传统的信用评分机制,可以制作信用评分卡,标准的信用评分卡如表5所示.
表中,A 、B 为假设的基础分值,本文设为500和
50,
θ0~θn 为x 1~x n 的估计参数,ω11~ωnk n
为x 1~x n 各分量的WOE 值.
根据评分转换原理,计算出11个入模变量的各分量得分值,具体结果如表6所示.
利用表6的信用评分卡对5000个测试集样本进行评分转换,得测试集样本的最终得分情况
见表7.
从表7的得分情况可以看出,随着用户得分的上升,高分段的坏样本占比呈现出不断下降的趋势,这也说明了信用评分卡可以较好地识别信用风险.
2.1.6 模型的效果评价
对于分类模型而言,可以从分类能力和预测的
准确程度来评价模型的效果.一般来说,使用AUC 和KS 来评估模型的分类能力以及F1和Accuracy 来评估模型的预测准确程度[13].通过对训练集和测试
集的样本测试,得到相关的评价指标如表8所示.从表8可以看出该模型在测试集上拥有0.7294的AUC 和0.5378的KS ,这表示模型具有较好的分类能力.同时该模型在测试集上拥有0.8218的F1和0.8325的Accuracy ,这表示模型具有较高的预测准确程度.
2.2 XGBoost 机器学习模型2.2.1 朴素的XGBoost 机器学习模型
首先,用训练数据来建立默认参数下的
XGBoost 机器学习模型;其次,对所构建的XGBoost 机器学习模型进行效果评价.具体结果如表9所示.由表9可知,在没有超参数约束的情况下,
XGBoost 机器学习模型在训练集上完全拟合,而在测试集上的表现相对一般,这表明该模型的泛化能
力较弱.造成这种现象的原因是XGBoost 机器学习模型是基于决策树的集成模型,如果不限制其增
表3 缺失变量处理表
Tab. 3 Missing variable processing table 变量名称
COMMONAREA_AVG
COMMONAREA_MODE COMMONAREA_MEDI
NONLIVINGAPARTMENTS_AVG
NONLIVINGAPARTMENTS_MODE …
AMT_REQ_CREDIT_BUREAU_HOUR AMT_REQ_CREDIT_BUREAU_DAY
AMT_REQ_CREDIT_BUREAU_WEEK NAME_TYPE_SUITE
OBS_30_CNT_SOCIAL_CIRCLE DEF_30_CNT_SOCIAL_CIRCLE OBS_60_CNT_SOCIAL_CIRCLE
DEF_60_CNT_SOCIAL_CIRCLE
EXT_SOURCE_2AMT_GOODS_PRICE
DAYS_LAST_PHONE_CHANGE
缺失比例0.699250.699250.699250.693550.69355…0.134700.134700.134700.004150.003600.003600.003600.003600.002500.000750.00005
处理方式删除变量删除变量删除变量删除变量删除变量
…删除变量删除变量删除变量众数填充中位数填充中位数填充中位数填充中位数填充中位数填充中位数填充中位数填充
表5 标准评分卡Table. 5 Standard score card
变量基准点
x 1
x 2…x n WOE 分箱
—12
…k 1
12
…k 2
(12)
…k n
分值
(A -Bθ0)
-(Bθ1ω11)-(Bθ1
ω12
)
…
-(
Bθ1ω1k
)
-(Bθ2ω21
)-(Bθ2
ω22
)
-(
Bθ2ω2k
)
…
-(Bθn ωn 1
)-(Bθn
ωn 2
)
…
-(
Bθn ωnk
)
表4 入模变量表
Table. 4 Molding variables
变量教育程度(x 1)收入(x 2)就业年数(x 3)年龄(x 4)不动产拥有情况(x 5)所在地区评级(x 6)常驻地址和工作地址
匹配情况(x 7)车辆情况(x 8)家庭电话提供情况(x 9)
收入类型(x 10)家庭状况(x 11)
IV
0.96300.92130.89760.84320.81340.75030.74180.72120.70190.68180.6745
相关性检测
全部变量均通过相关性检测
849
第 42 卷中南民族大学学报(自然科学版)
长,它可以学习到适应所有训练样本的规则.但是如何提高该模型在测试集上的表现,才是我们真正所关心的,因此需要对模型进行调参优化.
2.2.2 调优的XGBoost机器学习模型XGBoost的超参数可以归为三个核心部分:通用参数,Booster参数和任务参数[14].本文在通用参数、Booster参数以及学习目标参数这三类参数的具体选择如表10所
示.
本文使用网格搜索交叉验证得到的最优超参数为:eta为0.02,min_child_weight为2,gamma=0.2,max_depth为5,num_boost_round为110.使用该参数组合的XGBoost机器学习模型对训练数据和测试数据进行效果评价,具体结果如表11所示.
从表11可以看出,该模型在测试集上拥有0.8746的AUC和0.6318的KS,这表示模型具有很好的分类能力.同时该模型在测试集上拥有0.9487的F1和0.9318的Accuracy,这表示模型具有很高的预测准确程度.
将该模型与朴素的XGBoost机器学习模型在测试集上的表现进行对比,得到的结果如表12所示.
从表12可知,调优的XGBoost机器学习模型相
表8 模型结果评估Tab. 8 Evaluation of model results
数据集
训练集测试集
分类能力评价
AUC
0.7682
0.7294
KS
0.5536
0.5378
预测准确程度评价
F1
0.8379
0.8218
Accuracy
0.8419
0.8325表9 朴素的XGBoost机器学习模型结果
Tab. 9 Results of simple XGBoost machine learning model
数据集
训练集测试集
分类能力评价
AUC
0.9962
0.8362
KS
0.9974
0.5546
预测准确程度评价
F1
0.9954
0.8871
Accuracy
0.9913
0.8916
表6 基于逻辑回归模型的信用评分卡
Tab. 6 Credit scoring card based on logistic regression model
变量名称
基础分值
教育程度
年龄
常驻地址和工作地址
收入类型
WOE分箱
—
Lower secondary
Secondary /secondary special
Incomplete higher
Higher education
20~40
40~60
60~80
不相同
相同
Working
Commercial associate
Pensioner
State servant
Else
分值
557
6
11
14
19
5
10
13
3
9
3
5
3
2
1
变量名称
基础分值
收入
不动产拥有情况
车辆情况
家庭状况
WOE分箱
—
<100000
100000~200000
200000~300000
>300000
有
无
无
有
Married
Single / not married
Civil marriage
Separated
Widow
分值
557
7
10
13
15
4
11
2
8
4
2
4
3
1
变量名称
基础分值
就业年数
所在地区评级
家庭电话提供情况
WOE分箱
—
0~10
10~20
20~30
30~50
1
2
3
否
是
分值
557
6
10
12
14
4
9
10
3
7
表7 测试集样本得分情况统计
Tab. 7 Statistics of sample scores of test set
得分区间[599,609)[609,619)[619,629)[629,639)[639,649)[649,659)[659,669)[669,672]好样本
132
140
645
712
865
778
712
678
坏样本
35
25
53
56
63
47
35
24
总计
167
165
698
768
928
825
747
702
好样本占比
79%
84.8%
92.4%
92.7%
93.2%
94.3%
95.3%
96.6%
坏样本占比
21%
15.2%
7.6%
7.3%
6.8%
5.7%
4.7%
3.4%
总体占比
3.34%
3.3%
13.96%
15.36%
18.56%
16.5%
14.94%
14.04%
信用等级
D
C
B
A
说明
信用风险很高,不建议贷款
有一定的信用风险,需要对资产和
信誉做进一步评估后考虑是否贷款
信用风险较低,需要对贷款的流向
关注后考虑贷款
信用风险极低,建议贷款
850
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论