基于改进BS-Stacking模型的个人信用风险评估方法研究

2023-09-25 02:02顾清华宋思远张新生暴子旗
运筹与管理 2023年8期
关键词:信用风险分类器分类

顾清华, 宋思远, 张新生, 暴子旗

(1.西安建筑科技大学 资源工程学院,陕西 西安 710055; 2.西安市智慧工业感知计算与决策重点实验室,陕西 西安 710055; 3.西安建筑科技大学 管理学院,陕西 西安 710055)

0 引言

随着我国经济快速发展,良好的信用经济环境是我国社会发展的经济基础。从商业银行的视角来看,随着个人信贷业务的快速扩张,个人信用风险已成为商业银行面临的重要风险,也是导致国家金融体系不稳定的重要原因之一,因此如何更好评价个人信用风险成为当务之急。

在个人信用风险预测问题中,分析以往的金融借贷数据可知,借贷行为产生后,最终可以如期还款的用户占大部分,仅有少数违约用户由于其还款能力有限不能按时还款,因此形成不平衡的风险数据。不平衡数据会使得样本分类准确率急速下降,不能满足模型对分类效果的要求[1,2]。为了降低不平衡数据的倾斜度,现有研究对不平衡数据的处理主要包括过采样[3]、欠采样[4]以及混合采样[5]三种方式。由于个人信用风险数据极度不平衡,违约样本数量远远大于非违约样本,而被错分的违约样本会造成银行企业的利润损失,欠采样容易造成信息损失,为了保证分类模型的样本数量以及足够的训练,大都采用过采样技术[6]。

信用风险评估的方法有很多, FERNANDES和ARTES[7]使用LR衡量客户违约风险,模型简单好解释,但信用评价准确度不高。BUTARU等[8]在信用卡拖欠问题上,发现决策树和随机森林的预测效果优于逻辑回归。程砚秋[9]使用违约样本正确识别率代替以往的非违约样本识别率的度量指标,并采用不均衡支持向量机对信用风险评价指标进行赋权,从而有效区分样本。个人信用风险数据维度较大,传统单模型受到变量维度的限制,不能在大环境下使用,且客户数据情况复杂,使用单一分类器可能不能很好将其区分开,而集成学习的应用大大改善了这一缺点。陈舒期和梁雪春[10]提出基于AR-SKB的SVM集成模型大大提高了支持向量机的分类识别性能。ZHU等[11]比较了信用风险预测的六种方法,显示集成学习有更高的准确性。柳向东和李凤[12]通过对比RF,ANN,CART算法,实验表明RF适合处理不平衡数据集,且对信用风险的识别能力较好。ZHANG等[13]和NIU等[14]使用Bagging对数据类别进行有效识别,获得了良好的信用预测性能。上述研究表明,集成算法可以更好地保证模型的稳健性,在信用风险评估上也可以表现出更好的性能。而本文使用的Stacking方法是一种新颖的集成算法,通过组合不同性能的学习器来更好的预测信用风险,将集成的知识迁移到简单分类器上,显著提升预测效果。虽然Stacking方法已被广泛用于其他领域[15-17],但是目前在信用风险评估的相关研究工作还很少。

基于此,本文提出了改进BS-Stacking集成模型,首先对Borderline SMOTE-2算法进行改进,在强化小众样本边界区域识别的基础上,进一步对噪声点进行去除,从而保证对违约样本的精确预测;此外,针对Stacking集成算法中分类器存在冗余情况、可能会降低预测性能的问题,使用网格搜索进行调参,并提出使用LR对个体学习器进行贡献度分析,从而得到最优个体学习器组合,使得整个模型达到最优性能。通过与单分类器以及不同堆叠方式的比较,验证了所提出集成模型的有效性。

1 改进BS-Stacking模型

1.1 模型流程图

本文提出一种基于改进BS-Stacking模型的个人信用风险评估方法,其中改进后的模型用于处理不平衡的个人信用风险评估数据。模型主要包括5个部分:(1)使用改进后的Borderline SMOTE-2对不平衡个人信用风险数据进行采样;(2)网格搜索调参;(3)利用采样后的数据与寻优后的参数对个体学习器进行训练;(4)利用个体学习器训练生成的新特征对元模型进行训练;(5)利用元模型LR对各个体学习器进行贡献度分析;(6)得出最终模型以及性能测试结果。模型流程见图1。

图1 模型流程图

1.2 改进后的Borderline SMOTE-2采样

Borderline-SMOTE[18]是一种自适应综合过采样方法,主要思想是找到小众样本的边界区域,对边界区域的小众样本采用SMOTE方法进行样本生成。该算法有两个变种:Borderline SMOTE-1和Borderline SMOTE-2,这两种方法都可以加强边界处模糊样本的存在感,而Borderline SMOTE-2是在方法1的基础上,在生成样本点时考虑将K近邻中的任意一个样本进行线性插值,使新增样本更加靠近真实值。

在Borderline SMOTE-2中,算法将处于大小样本分类边界的样本点进行线性插值生成新的样本点,未对安全区的样本点以及噪声点进行处理。噪声点的出现有两种情况:输出错误与输入错误,个人信用风险数据数据量大,管理规范不统一,容易出现以上两种情况。而噪声点的存在势必会影响算法学习的性能与效果,因此本研究在Borderline SMOTE-2的基础上,将噪声点进行过滤,可以使算法更好地学习数据。图2为原理图,算法流程如下:

图2 Borderline SMOTE-2 原理图

输入:小众样本P,大众样本N,训练集T

输出:生成后的新数据集

Step1对于少数类P中的每一个样本P′,从整个训练集中计算其m个最近邻,其中m个最近邻中多数类样本的数量为m′(0≤m′≤m);

Step2对于若0≤m′≤m/2,则该样本点为安全点,不对其做任何改动;

Step3对于若m′=m,即m个最近邻均为多数类样本,则该样本点为噪声点,在该步骤中去除该类点;

Step4对于若m/2≤m′≤m,则该样本点为危险点,即容易被误分类的点,设置集合Danger={P′},并进行下一步操作;

本研究所用数据集是基于UCI公开的德国个人信用数据集,其中包含1000个样本,24个特征,为二分类数据。其中好坏样本占比700:300,为不平衡数据集,因此对其使用改进后的Borderline SMOTE-2方法对数据进行处理。通过算法处理后的数据集正负样本比为700:661,共1361条数据,共有噪声点39个。

1.3 Stacking堆叠模型

Stacking是一种分层模型集成框架,通常使用异质弱学习器,并行的学习他们,并通过一个元模型将其组合起来,根据不同弱模型的预测结果作为新特征集合供元模型训练使用,并输出一个最终的预测结果。Stacking算法的并行计算在于学习模型的稳定性,并且分层预测的计算结果远远优于向量均值化和投票机制。

本文使用两个堆叠层进行了实验。第一层由8种不同的基础模型组成(SVC,GBDT,RF,AdaBoost,XGBoost,LightGBM,KNN,LR),第二层只包含一个最终模型或元模型(LR)。该框架如图3所示。

图3 堆叠概要图

在第一层模型中,以Adaboost为代表的Boosting在训练过程中对于错分数据给予较大的权重,从而提升整体模型的准确率;以RF为代表的Bagging使用有放回随机抽样,数据集之间相互独立,可以提高不稳定模型的准确率,并降低过拟合的程度;其他单算法则保证了模型输出数据的多样性。Stacking能够成功的关键在于第一层模型能针对原始训练数据得出有差异性且预测能力好的输出值,第二层模型继续学习后,进一步提升整体模型预测的准确度和稳定性。

1.4 个体学习器贡献度分析

逻辑回归在个人信用评估领域的应用已经相当成熟,具有良好的适用性和稳健性。假设具有p个独立变量的观测向量x=(x1,x2,…,xp),根据观测值某件事情发生的条件概率为P(Y=1|x)。逻辑回归模型采用如下方法计算该条件概率:首先将特征线性求和,然后使用逻辑函数进行映射,求得条件概率。

特征向量各个分量线性求和公式为:hθ(x)=z=θTx。其中θ是模型中体现贡献度的参数,x是输入。逻辑函数(也称sigmoid函数)的表达式为公式(1),样本特征向量和权值线性求和,之后依据sigmoid函数的形式求出公式(1),根据决策边界可以进行两类样本的分类。

(1)

函数图像如图4所示。

图4 Sigmoid函数图

逻辑回归损失函数为公式(2),在求解参数θ的过程中利用梯度下降法可以得到θ的更新公式,见公式(3)。

(2)

(3)

其中m:训练样本的个数;y:原训练样本中的y值;上角标i:第i个样本;α:步长;下标j:参数θ的第j个元素。

2 基于改进BS-Stacking模型的个人信用风险评估

2.1 数据描述与数据处理

2.1.1 数据描述

数据集是银行真实的数据,来自UCI公开的德国信用数据集(网址http://archive.ics.uci.edu/ml/datasets/Statlog+%28German+Credit+Data%29),该数据集有1000个样本,属于小型数据集,正类样本(非违约,标签为1)有700个,负类样本(违约,标签为2)有300个,每个原始样本有20个指标属性,便于数据分析,该数据集被增加至24个属性,表1是20个数据特征描述。

表1 样本特征描述

2.1.2 数据预处理

数据集中包括定性指标与定量指标,定性指标即表示类别的指标,对于定性指标之间的数学计算是没有意义的,因此不能直接使用。通常有两种方法进行处理:一是处理只作为分类的指标,二是处理有区域划分的有序指标,表2为基于这两种方法对定性指标的处理结果,定量化处理后的指标与余下的指标进行归一化处理,保证数据分析的结果不受到量纲的影响,最终得到我们最终的评价指标体系数据。

表2 定性指标处理

2.2 分类指标选择

本研究是基于Stacking的个人信用风险预测,选用准确率(Accuracy)和AUC值来衡量预测的准确性,利用精准率(Precision)、召回率(Recall)、F1得分、特异度(Specificity)来衡量模型的有效性。

2.3 实验结果分析

2.3.1 改进后的Borderline SMOTE-2测试结果比较

在最初算法中,选用SVC,GBDT,RF,AdaBoost,XGBoost,LightGBM,KNN,LR共8个模型作为个体学习器,选择LR作为元模型训练个体学习器的输出,采用5折交叉验证结合网格搜索的方式确定分类器参数,训练集与测试集划分比例为7:3,从而进行实验,结果如表3、表4所示,表3、表4数据均为10次试验之后的平均值,meta1为未进行删减的8个基模型。

表3 使用不平衡处理算法对数据进行处理的准确率实验结果对比

表4 堆叠模型在个人信用风险数据上测试结果比较

表3为使用各种不平衡算法以及本文算法处理前后的模型结果对比,数据表明改进后的算法对比其他算法表现最佳,集成分类器相比单分类器增加效果显著,且Stacking集成后的模型与Bagging、Boosting算法性能相比较,性能最少提升3%,也由此验证了Stacking模型的有效性,也可以看出改进后的不平衡数据处理方法对提升模型性能有着重要的作用。

图5为各不平衡算法处理后的准确率变化图,可以看出RF,LightGBM,GBDT,XGBoost,AdaBoost涨幅最为明显,其次是KNN,而SVC,LR浮动不明显,更有下降的趋势,一方面说明结合改进后的BS算法使用时,集成算法较传统单分类器可以更好的处理信用风险数据,对数据集的适应能力很强,从而实现精准分类;另一方面LR这种单分类器容易欠拟合,可能会影响整体模型的精度,因此需要对分类器进行筛选,确定最优组合模型。

图5 各不平衡处理算法的准确率结果

2.3.2 基模型贡献度排序

图6是基于元模型对基模型做的贡献度分析,整体算法将基于图6来进行模型的最终确定。

图6 基模型贡献度

在所提出的模型中,基模型的输出预测结果作为元模型的新特征使用,那么在训练完成后,LR分类器依据公式(2)和公式(3)得出一组权值θo,θ1,…,θp。在本模型中,可以得到各分类器的权值并进行排序,从而起到筛选的效果,使得整体Stacking模型达到最优。

2.3.3 整体测试结果说明

表4为各堆叠组合在个人信用风险数据上测试结果的比较,由数据可知,使用堆叠模型比单纯使用单模型的各项指标都要好,meta1在精度上比最高的RF提高了1%,对违约样本识别的指标上提高了1%。meta2为通过表3分析删去LR的集成模型,meta(3-6)为通过贡献度排序来进行逐步删除分类器的集成模型。

图7是每个指标的变化趋势,Accuracy,Precision,F1与Specificity均是在meta3之后开始降低,说明在meta3模型组合时,整体精确度、特异度与稳定性达到最高,而Recall与删减前相比变化不大,说明对非违约样本的识别没有变化。在个人信用风险评估中,更需要识别的是违约样本,因此特异度指标更值得考虑,最终以meta3组合作为最终模型,即以GBDT,RF,AdaBoost,XGBoost,LightGBM,KNN为基模型,LR为元模型构建改进BS-Stacking模型。

(a)Accuracy

(b)Precision

(c)F1-Score

(d)Recall

(e)Specificity

2.3.4Roc-Auc指标说明

图8是meta3堆叠模型在训练集上的测试效果。

图8 模型的ROC曲线图

图8中,ROC曲线下的面积为0.8811,和第一层模型的6个分类器相比在表现最优,可以表明Stacking模型使用基模型组成新特征方式的分类性能要优于单分类器,所提出的模型在个人信用风险评估问题上分类效果精确且稳定,可以更好的识别违约样本。

3 结论

个人信用风险评估对于企业识别用户风险至关重要,能否准确识别违约用户对于社会经济发展具有重要的影响。本研究所用数据集由1000个样本、24个特征组成,根据个人信用风险数据特点对Borderline SMOTE-2算法进行改进,在生成边界区域样本的基础上对噪声点进行有针对性的去除,大大提高了预测性能,然后选用Stacking堆叠模型对处理后的数据进行分类预测,整合八种有差异化的分类器形成一种新的集成框架,并创新性的使用了LR对基模型进行贡献度分析从而对个体学习器进行筛选,得到最优组合模型,使得集成模型性能达到最优状态。

实验结果显示,提出的模型准确度为88.2%,ROC为88.1%,Recall为92.4%,F1为89%,各项指标均有提升,特别是在对违约样本的识别率上,所提出模型表现最好。试验从多个角度证明了不平衡算法以及集成算法的有效性,也表明本算法在个人信用风险评估上可以实现较高的精度与稳健性。

猜你喜欢
信用风险分类器分类
分类算一算
分类讨论求坐标
数据分析中的分类讨论
BP-GA光照分类器在车道线识别中的应用
教你一招:数的分类
浅析我国商业银行信用风险管理
加权空-谱与最近邻分类器相结合的高光谱图像分类
结合模糊(C+P)均值聚类和SP-V-支持向量机的TSK分类器
京东商城电子商务信用风险防范策略
个人信用风险评分的指标选择研究