APP下载

期望损失代价敏感优化的借贷预测算法研究

2020-07-17孟志青

浙江工业大学学报 2020年4期
关键词:代价借贷账户

孟志青,姜 琦

(浙江工业大学 管理学院,浙江 杭州 310023)

在一个良性的个人借贷生态圈内,理想状态是平台、借款人、投资人能够各取所需、合作共赢。一旦控制不好违约率,借贷本金将产生较大损失,会严重导致投资人退出、借款平台成交量不断缩水以及更多借出人出走等现象发生。为维持好良性可持续的借贷生态圈,借贷预测模型显得尤为重要。分析借贷数据,会发现它是典型的不平衡数据——违约类为少数类。再加上它海量数据、纬度高、类型多(文本型、离散型、连续型)的特性,极大地影响分类精度[1-2]。在不平衡数据机器学习场景下,采用准确率(accuracy)来评估模型的策略不再适用[3]。以往的研究者为消除不平衡影响,提出一般性的代价敏感分类方法(P Domingos,1999)。Bahnsen等[4]提出基于代价敏感的逻辑斯蒂回归,并于2015年提出基于代价敏感的决策树[5-6]。但以往的代价敏感技术都使用单一分类器,应用于集成模型(例如Bagging和Boosting)很少被提及[7]。从借贷模型的业务角度出发研究,Serrano-Cinca等[8]提出利润评分方法而不是借贷的信用评分。Verbraken等剔除基于期望利润最大化思想,在预期损失和收益间进行权衡,进而给出允许向客户放贷的阈值。这给笔者以启发,重视预测的现实意义,引入期望损失的概念来量化借贷样本的代价敏感项。

Lending Club是美国最大规模的P2P个人借贷平台,成立于2007年,由美国Experian公司提供信用评分(社会保障号码的唯一性),美国证券交易委员会(SEC)进行监管。该平台对以往的历史借贷数据隐去隐私信息后公开发布供学者、业界研究。笔者将利用该平台公布的2014—2018年数据来进行借贷预测的研究,完整的借贷预测工作涉及数据预处理、特征工程、模型挑选优化、评估等工作。综上所述,将从算法角度出发,基于近年在分类任务上表现优秀的XGBoost和LightGBM集成算法模型,引入代价敏感项来更好地分类借贷数据,并根据借贷的现实交易意义,采用期望损失概念来量化代价敏感项,笔者提出的优化算法模型命名为ES-XGB和ES-LGB。笔者算法照顾到对少数样本的训练来提升违约类的检出率,并利用借贷业务场景中的有效信息来实现同时考虑类间差异和类内样本差异,将误判代价精细化,最后的数值结果证明所提出的ES-XGB和ES-LGB模型对于借贷预测更准确。

1 借贷预测算法提出

本研究对近年来在实际应用中表现较好的XGBoost和LightGBM集成算法模型进行优化,首先介绍两种算法的理论基础。XGBoost(Extreme gradient boosting)是增强梯度提升模型,根据文献[9]的算法解释如下:给出数据集D={(xi,yi)}(|D|=n,xi∈Rm,yi∈R),集成模型用K个弱分类器累加来预测输出,即

(1)

式中F={f(x)=ωq(x)}(q:Rm→T,ω∈RT)为回归树空间集合,其中q代表树的结构,T代表树的叶结点数量。每一个弱分类器fk由树结构q和叶子权重ω表示。为了学习到一系列的树结构,定义正则化目标为

(2)

(3)

(4)

LightGBM的目标函数推导过程与XGBoost相似。但较XGBoost具有更快的训练效率,低内存使用,支持并行学习,可处理大规模数据的优点[10]。该算法中提出两种新方法:Gradient-based One-Side Sampling(GOSS,基于梯度的one-side采样)和Exclusive Feature Bundling(EFB,互斥的特征捆绑)。克服了XGBoost需要通过预排序而造成的内存空间消耗大,时间代价大的问题。相对于XGBoost树level-wise的切分方式,LightGBM采用leaf-wise,是一种更为高效的策略。在分裂次数相同的情况下,leaf-wise可以降低更多的误差,得到更好的精度。leaf-wise的缺点是可能会长出比较深的决策树,产生过拟合。因此LightGBM在leaf-wise之上增加了一个最大深度的限制。

二分类场景中成本代价可以使用2×2矩阵[11]来表示,它引入了与两种类型的正确分类相关的常量成本为真阳性成本CTP与真阴性成本CTN,以及两种类型的误分类常量成本为假阳性成本CFP与假阴性成本CFN,如表1所示。进一步多分类的成本矩阵可以基于表1进行扩增行和列得到。

表1 成本矩阵ⅠTable 1 Cost matrix Ⅰ

通过对XGBoost、LightGBM算法中的目标函数中的损失项l乘上惩罚成本代价项,可以重新定义目标函数,让代价敏感作用于算法迭代中。调整后的初始目标函数式为

(5)

期望损失是衡量损失风险的常用指标,意为在可能发生概率下的损失程度。在借贷活动中,投资人所遭受的损失有两种:坏账违约本金收不回和不投资而错失利息收益。在许多金融活动决策中,投资者会以期望损失作为衡量指标[12]。假设能提前获取借贷申请人违约的概率p,偿还的概率(1-p),本金记为a,利率记为b。那么发放该笔贷款的损失为L1=p×a,不发放该笔贷款的损失为L2=(1-p)×a×b。比较L1,L2大小,可以辅助投资者进行风险规避型决策。集成模型可以迭代学习历史多维度特征值,如果能将期望损失的决策方式考虑进迭代中,可以放大对违约损失的考量,使得分类器更加灵敏。

表2 成本矩阵ⅡTable 2 Cost matrixⅡ

根据期望损失量化的成本矩阵,笔者提出ES-XGB和ES-LGB算法中的目标函数为

优化算法ES-XGB和ES-LGB的训练过程伪代码可用基于期望损失代价敏感优化的XGBoost(LightGBM)算法描述为

Input:训练集D={(xi,yi)}(|D|=n,xi∈Rm,

yi∈R);可容误差ε

Begin:

Fort=1 toMdo:

Ifgi≤ε:跳出循环,返回F(x)

Fori=1 toNdo:

Ifyi=1:

Else:

F(x)=F(x)+ft(x);

End for

End for

End

Output:F(x)

此次进博会汇丰除了在服务贸易展区设置占地100平米的展台,还在进博会期间举办客户专题研讨会,重点探讨中国市场和中国消费者在全球贸易中的重要性,为全球企业开拓中国新兴消费市场提供支持。汇丰还借助首届进博会的平台,陆续发布贸易相关的报告和产品,包括:全球首发、配合进博会专门定制的有关中国市场消费前景的调查报告,以及面向贸易企业推出的数字化解决方案。

笔者提出的优化算法属于Boosting算法家族,为可加性模型,在每一轮迭代中学习拟合当前目标的负梯度方向进行搜索,当给定误差情形下,在有限步内是收敛的。ES-XGB和ES-LGB算法运行大部分时间开销仍然在每一轮分类树的学习上,分裂节点搜寻采用直方图算法(Histogram-basedalgorithm)[13-14],对比于以往计算排序每个特征的可能分裂节点,该方法事先将连续特征分箱处理并构造特征直方图,能够减少内存消耗并加速运算。若训练数据集合的个数为D,特征集合的个数为H,特征直方图集合个数为B,则每一轮分类树学习复杂度为O((D+B)×H)。

2 数据预处理

选择Lending Club平台上2014—2018年共5 年的全部借贷数据。目标特征为“贷款状态”,剔除所有中间状态,仅保留“偿还”和“违约”两种终结状态超过500 000 条借贷记录。根据借贷场景的现实意义筛选特征最终保留78项特征并分为4类:个人信息、信用信息、银行账户信息、贷款信息共4个维度,每个维度选取个别特征项目列出,如表3所示。

表3 特征类型Table 3 Feature types

如图1(a)所示,通过Lending Club借贷申请的贷款数目在不断攀升,在2015年后放缓了增长幅度。在近4年中,有大量“进行中”状态贷款,这也解释“偿还”和“违约”的贷款总量和从2015年到2018年会不断降低。故在实验验证阶段,2018年可用于训练的数据量最少。

图1 各年份不同状态的借贷数量和比例Fig.1 The amount and proportion of loans in different states in each year

筛选出上述两个最终状态的贷款量并绘制其百分比图,如图1(b)所示,“违约”类型的借贷量在20%附近上下浮动。“偿还”类数量约为“违约”类数量的4倍之多。

本研究对数值型变量进行标准化处理,避免量纲带来的影响[15]。类别型的数据转换成哑变量,使用数值替换,如表4所示。

表4 分类变量转换Table 4 Category variable conversion

在缺失值的处理工作中,本研究遵循业务场景意义来进行填充或删除。虽然部分字段有较大的缺失率,但分析发现都是属于“信用信息”维度中的失信类别的记录特征,空缺值有其现实含义。例如特征项“距最近一次银行卡违约的月数”缺失率高达74%。但在现实场景,大多数人的银行记录是良好的,空值表明没有银行卡违约的行为,则其对应的数值应该是无限大(1表示上个月发生了一次违约行为,0表示该月发生了一次违约行为)。采取使用该特征值最大值加60月的填充策略。使用最大值填充策略的还有其他代表违约、失信记录类型的特征项。

特征项“工作年限”的空缺值代表申请者不能或不愿意提供自己的工作年限,倾向于认为该类型申请人工作时长对于申请到贷款没有竞争力,用最小值填充。类似的还有特征项“距离最早开通的分期账户月数”等。

特征项il_util、revol_util、bc_util、all_utill是属于二次加工字段,分别代表分期信用卡、循环账户信用卡、银行卡、所有账户对应于各自最高信用额度的比率,采取使用其原始特征值计算加工填补。

依据数据分析结果,将构造2个新特征。原始特征“最早报告信用额度开通时间”是时间型变量。根据该变量和申请贷款的时间点来构造第一个新特征——“信用活动持续月数”,以月为单位使用SQL中的Month Between(时间点1,时间点2)函数加工获得。构造第二个新特征——“月收入与月还款额比率”,即用月收入除以月还款额获得,该特征起到可以将不同借款金额,不同还款时长,不同的年收入多个指标归一化的作用。

3 数值结果

实验中选取的对比模型包括Linear Regression,Random Forest,AdaBoost(后分别记为LR,RF,Ada);未优化的集成算法模型XGBoost和LightGBM(后分别记为XGB,LGB);采用固定成本优化XGBoost和LightGBM模型(后分别记为CS-XGB,CS-LGB)。其中CS-XGB,CS-LGB的代价参数设置为CFN=1,CFP=2,CTP=0,CTN=0,即误判为“偿还”类的代价为误判为“违约”类的2倍。

以上模型的参数均采用第3方开源模块Scikit-learn(sklearn),模块XGBoost和模型LightGBM提供的方法中的默认参数,方便实验复现,其中random_state值设置为42。

3.1 不同算法预测结果对比

对预处理和特征工程后的2014—2018年数据,以年为单位,按照7︰3比例拆分为训练数据集、预测数据集并进行交叉验证学习,其数据量如表5所示,实验结果如表6所示。

表5 实验中各年份数据量Table 5 Amountof data in experiment in each year

表6 各年份多模型多指标借贷预测实验结果Table 6 Loan forecasting results of multi-model and multi-index ineach year

分析表6中的数据可得到5个结果:

1) ES-XGB和ES-LGB模型有明显的综合提升效果,所有年份中,在G-mean和Precision指标上一致优于其他模型。

2) ES-LGB表现最为优异,在5个年份中AUC值都领先。ES-LGB在G-mean和Precision指标上被ES-XGB在一些年份上超越过,但全部优于除ES-XGB模型外的其他模型。

3) ES-LGB模型相比ES-XGB模型表现更为稳定,ES-LGB模型在所有指标上都优于自己的基础模型LGB和固定成本模型CS-LGB,且AUC值是所有模型中最高的。但ES-XGB在2014年和2017年的数据上在AUC指标上表现略低于XGB或CS-XGB,虽然同时在G-mean和Precision指标上表现比后两者高。

4) 借贷预测应用中,集成Boosting模型XGB和LGB优于一般的机器学习模型,而典型的Bagging算法RF和典型的提升算法Ada也优于广义线性模型LR。

5) CS-XGB和CS-XGB优于除ES-XGB和ES-LGB模型外的其他模型,说明目标函数中代入成本项可以有效消除样本极度不平衡影响。进一步的,以期望损失量化为成本代价项进行预测效果更佳。

3.2 不同算法借贷损失对比

(6)

使用模型后产生的损失表示误判为“偿还”的本金损失加上误判为“违约”的利息损失,其计算式为

(7)

用式(6)减去式(7),可计算出使用相应模型规避减少的损失金额,结果如表7所示。

表7 使用不同算法模型可减少损失金额

显而易见:在不同年份借贷申请中,应用笔者所提出的ES-XGB和ES-LGB模型可避免减少的损失金额最为可观。尤其在2015年分别贡献高达147.0,148.9 百万美元的金额,远远超出其他模型。使用固定成本集成模型CS-XGB和CS-LGB相对于原集成模型也可以避免约3~4倍的损失金额。

说明在借贷场景训练样本失衡的情况下,对少类别样本增加成本权重有其现实意义和贡献:可以规避更多的违约损失。应用笔者提出的期望损失来量化代价敏感项的策略可以使得模型在分类中更为敏感,可识别出更多的违约项目,增强风险控制能力。

3.3 模型特征分析

筛选出模型ES-LGB中贡献率排名前20的特征值,绘制权重比图,如图2所示。特征所对应的横向直方图越长代表在模型中分类贡献性越强。

1—借贷利率;2—月收入与月还款额比率;3—月还款金额;4—距离最早开通分期账户月数;5—最大账户余额;6—最大循环账户余额; 7—借贷金额;8—距最早开通循环账户月数;9—循环账户余额与循环账户最高信贷额度比率;10—普通账户余额与最高信贷额度比率; 11—距最近开通银行账户月数;12—所有账户的总余额;13—借贷目的;14—分期账户余额与分期账户最高信贷额度比; 15—距最近开通循环账户的月数;16—银行账户余额与最高信贷额度比率;17—最高信用额度; 18—信用活动持续月数;19—距最近征信查询的月数;20—循环账户的最高借贷额度。图2 模型ES-LGB中前20个重要特征权重比Fig.2 Weight ratio of the first 20 important features in ES-LGB model

特征项2和特征项18为本研究根据借贷场景创建的特征,其中特征项2“月收入与月还款额比率”排名第二,说明特征工程创建的特征项可以很好帮助划分借贷人的类别。根据ES-LGB建模还可以学习到属于“银行账户信息”“信用记录”的特征因素对借贷申请人的还款行为有较大影响,而属于“个人信息”维度的特征项没有进入重要特征的前20位,对模型分类能力影响较弱。

4 结 论

选用Lending Club借贷平台脱敏后公开的海量借贷数据进行研究,根据借贷业务场景的现实意义,来合理清洗、筛选数据,其中构造的特征值“月收入与月还款额比率”对模型有较强贡献性。对2014—2018年共5年的数据选取多种机器学习算法进行比较,并设置了固定成本的CS-XGB和CS-EGB模型作为对照,实验结果显示:加入量化的期望损失值作为代价敏感项进行优化后的模型ES-XGB和ES-LGB可以使得模型的综合分类能力更强,预测精度更高,可避免的损失金额最为可观。不足之处在于只适用于误判损失刻画出的场景,而类似疾病预测场景则不能量化出每个样例的损失成本。笔者提出的模型适合应用在经济活动场景。

猜你喜欢

代价借贷账户
民间借贷纠纷频发 诚信为本依法融资
如何切换Windows 10本地账户与微软账户
探索自由贸易账户体系创新应用
Windows10账户的删除、禁用与启用
外汇账户相关业务
爱的代价
幸灾乐祸的代价
让民间借贷驶入法治轨道
代价
一张图看懂民间借贷“防火墙”