高风险银行贷款识别
2017-06-09刘阳阳
刘阳阳
摘要:本文利用C5.0决策树算法建立高风险贷款识别模型,并且利用自适用增强算法(adaptive boosting)和代价矩阵算法对该模型进行了优化,根据已有贷款者的履约情况,构建了潜在违约客户的识别模型。研究发现,贷款期限短、储蓄账户余额小,信用记录差和贷款金额高的客户可能是潜在的违约者。
关键词:数据挖掘;C5.0决策树;代价矩阵算法
一、引言
对贷款进行风险分类是商业银行信贷管理中的重要环节,其目的是对客户信贷风险状态具有一定了解。目前,实施风险分类法的主要障碍在于借款人的资料不健全,企业的信息披露不规范,各商业银行现有借款人的信息不全面且存在完整性问题,这些情况将直接影响历史数据的利用效率。此外,和信贷分类相关的指标一般淹没于企业的定性和定量数据指标中,因而加大了分类工作时的不确定性和难度。而鉴于一般统计方法的缺点,比如容错性较差和参数方法的局限性等。
本文引入数据挖掘技术,利用决策树C5.0算法,对高风险的银行信贷进行识别。
二、实证分析
(一)数据准备
本文利用德国人信贷的数据集,通过对高风险的银行信贷进行识别,为银行的信贷服务提供决策支持。数据中包含1000个过去申请者的、有17个变量的信用记录,每个申请者被分为“信用好”(700个例子)和“信用差”(300个例子)。建模的目的是希望得出一套信用评分规则,基于一个或多个预测变量的值,能确定一个新的申请者的信用好或差的风险。数据来源:芝加哥大学尔湾分校知识发现数据档案库UCI Knowledge Discovery inDatabases Archive。
(二)变量选取
本文利用17个预测变量评估新的信贷申请者,数据中的变量分别为:支票账户余额,贷款期限,信用记录,贷款用途,贷款金额,储蓄≠≠账户余额,工作年限,贷款/收入比,居住年限,年龄,其他信用记录,房产,现有贷款账户,工作类型,受抚养人,电话,违约情况。
(三)決策树C5.0模型建立
基于C5.0决策树算法,首先,模型的输入变量为checking balance、monthsloanduration、credithistory…default,该属性集合输入模型的数据集包括一个目标属性,该属性将记录分为两类:无违约和违约。其次,采用随机方法选取数据创建训练集和测试集,将数据集中90%的数据作为训练集,用来构造模型,确定模型参数权重值,其余数据集10%的数据作为测试集,对模型的预测能力进行检验。
在建立模型前首先查看目标属性变量分布是否均匀,否则需要进行再平衡,本文数据中无违约与违约的比为7:3,因此不需要再平衡。并且随机选择数据后的训练集和测试集中的无违约与违约的比接近7:3,即表明数据被平均分割了。
建立训练集模型,得到训练结果,且由结果可知,模型错误率13.9%,其中102人实际违约,但预测没有违约,23人实际没有违约但预测违约。该模型看似不错,预测准确率86.1%,但是仔细观察会发现,实际102+166=268人违约,但模型只识别出了166人,还有102人近38%的人预测错误。对于银行来说,给一个不合格的客户贷款比不给一个合格的客户贷款风险要大的多,所以该模型的不足显而易见,将这个模型应用到测试数据检验模型的效果。
由测试集的结果可看出,该模型正确率73%,只识别了实际违约贷款32人中的50%显然不够理想。使用自适用增强算法(adaptive boosting)对模型进行优化,可以看出,模型正确率77%,但仍只识别了32个实际违约中的17个,仍不能达到要求。所以采用代价矩阵法,避免更严重的错误发生,行代表预测值,列代表实际值。行名和列名1代表no,2代表yes。由结果可知,虽然模型正确率只有66%,相比前两个显著降低。但是,该模型识别处理实际违约32人中的26人,识别率到81%。在这个过程中,虽然牺牲了模型的整体预测正确率,但是提高了对违约贷款者的识别精度,对于银行来说,给一个不合格的客户发放贷款比不给一个合恪客户贷款损失要大的多。
画出决策树图,如下:
结论:通过以上研究发现,贷款期限短、储蓄账户余额小,信用记录差和贷款金额高的客户可能是潜在的违约者,并且比较以上算法发现,代价矩阵法在对高风险的银行信贷进行识别时,对违约贷款者的识别精度更高。