时间:2024-05-04
唐婷 黎明
(1.四川职业技术学院计算机工程学院 四川省遂宁市 629000)
(2.四川省农村信用社联合社 四川省成都市 610096)
目前,随着计算机技术的不断发展,给整个社会生活以及产业发展带来新的生机,产业技术的提升更新迫在眉睫。我们处于信息大爆发的时代,大数据中蕴含着丰富的资源,如何对数据进行科学的处理,提取其中有价值的信息,从而形成标准的可应用模型。逻辑回归算法是大数据中常用的数据分析方法之一,它具有模型简单、训练速度快等特点,在产业技术中有着广泛的应用。
本文主要介绍逻辑回归算法的原理,以及对大数据环境下的逻辑回归算法进行详细的分析与研究,最后通过实践案例的分析来验证逻辑回归算法的可行性。本文的实践案例为银行消费贷款中信用评分模型的建立,可以通过数据分析来预测还款人的还款能力、还款意愿,以及欺诈风险,在行内交易数据和行外征信数据的基础上,建立信用评分模型。
消费信贷近年来的增长令人瞩目,根据人民银行发布的《中国普惠金融指标分析报告(2018年) 》,截至2018年末,全国人均个人消费贷款余额为27089.4元,同比增长19.54%。大力发展消费信贷,是银行向专业零售银行转型的关键点。
个人消费贷款单笔金额小、笔数多,对比起大额贷款,个人消费贷款的人工管理笔均成本高、单位资金收益低。在我社传统个人消费信贷处理流程中,主要依靠人工营销和人工审查审批。即使在有业务规范条款的情况下,也由于量化条款不够,导致审查审批的标准不统一,由此延伸也容易出现操作风险和道德风险。
大数据下的金融风控模型是利用数据分析和模型进行风险评估,依据评估分数,预测还款人的还款能力、还款意愿,以及欺诈风险,从而利用数据实施科学风控。同时,大数据可以利用海量数据进行计算,分析其中内在规律,通过逻辑回归算法等建模方法,在行内交易数据和行外征信数据的基础上,建立信用评分模型,优化审批,在得出更加有效的规律后,再进一步优化评分模型、优化审批,从而形成良性循环。本论文的目的是基于银行内部大数据的环境下,通过对逻辑回归算法的分析与研究,建立适合消费贷款使用的逻辑回归评分模型。
逻辑回归模型不仅本身具有很高的预测精度,同时便于理解,符合监管对可解释性的要求。该模型的许多前提假设比较符合经济现实和金融数据的分布规律,譬如它不要求模型变量间具有线性的相关关系,不要求变量服从协方差矩阵相等和残差服从正态分布等,这使得模型的适用性和灵活性都很好。
建立模型可选用的方法非常多,如区别分析、线性回归、逻辑回归及分类树等统计方法,或是人工神经网络、基因演算法及专家系统等非统计方法。本文采用逻辑回归的方法来建立数据驱动的评分模型。如表1所示。
通常,逻辑回归可以用于一个名义或顺序因变量的建模。
首先,假设有n个包含违约状态变量y的观测值。违约状态变量y有两种取值:0表示正常事件,1表示违约事件。同时,假设收集到r个预测变量,或自变量,也被称为协变量,x1,…,xr。第i个观测值的自变量和因变量的取值分别表示为xi1,…,xir和yi。具体符号详见表1:
表1
用逻辑回归模型计算事件(y=1)的概率为:
常数β0,β1,…,βr称为模型参数。第一个常数β0称为截距项。同时将自变量x和模型参数β定义为r+1维的向量,如下:
xT=[1 x1… xr]和βT=[β0β1… βr]
结合上述两个向量,则概率公式可以重新整理为:
也可以写为另外一种替代形式:
即:
其中,z=βTx,或者z=β0+β1x1+…+βrxr
对概率公式进行简单的转换,可以得到:
上式左边的转换式被称为logit函数。需要注意的是,p是违约的概率,而(1-p)是正常的概率。
比例p/(1-p)被称为比率,即违约事件概率与正常事件概率的比值。因此,logit函数仅仅是比率的自然对数。而逻辑回归模型是用比率的对数作为因变量的线性回归模型。用给定数据拟合逻辑回归模型,首先从似然函数和似然方程开始。最大似然法则(ML)通过构建一个代表从建议的模型得到的数据的似然值而发生作用。然后,如果给定的参数数据最大化了似然函数的值,则该法认为得到了最优模型。
逻辑回归的因变量可以是二分类的,也可以是多分类的,但是二分类的更为常用,也更加容易解释,此次模型开发的因变量就是二分类的(好/坏账户)。逻辑回归对自变量类型一般不做规定,但它要求自变量与因变量的逻辑转换之间应符合线性关系。当自变量为分类变量时,可不必考虑线性关系,但当自变量为连续型变量时,则需要检验二者之间的线性关系是否成立。如果不成立,应进行相应的变量变换,如对数变换、指数变换、多项式变换等,使其以恰当的形式进入模型。由于此次开发采用分箱型模型的方法,所有的自变量属于分类变量,所以不需要检验线性关系。
模型最终变量需要进行检测,包括业务逻辑检查、稳定性检查、回归结果检查、评估方差膨胀系数和变量特征分析。上面描述的几种统计测试便是判断在最终模型中,变量是否被包括或被排除的基础。
逻辑回归算法在实践应用中重要的步骤就是建立特征工程,特征工程的目的是最大限度地从原始数据中提取特征以供算法和模型使用。在实践应用中,大部分复杂模型的算法精进都是由数据科学家完成,我们能做的主要是数据获取、变量预处理、征信特征矢量提取、变量特征分析和信用评分分组开发。以消费贷款信用评分模型为例,建立特征工程的过程如下步骤:
在消费贷款评分卡模型这个场景中,所用到的数据按照数据来源可以分为内部数据和外部数据。建模使用的内部数据主要是贷款申请信息、还款计划与还款明细、存款流水明细等数据,这些数据包括了客户在贷款申请时以及放款之后的还款表现。所用到的外部数据主要为人行征信数据(银行版),提取的信息数据包括征信查询类变量、征信信贷产品类变量、征信基本信息类变量、征信信贷使用类等几大类变量,例如:申请日前2年逾期次数、申请日前6个月查询次数、上次逾期距今月份数、征信报告记录的信用产品数,正在使用的信用产品数,上次登记公共记录距今月份数,公共信息中的不良记录数,公共信息中的破产记录数等。
课题组按季度提取农商行2017年1月到2018年12月的小额农贷客户,根据账龄分析与迁徙矩阵分析给出好坏客户的风险标识,在建模过程中对样本进行抽样。基于此构建模型训练样本,通常按照一定比例将模型训练样本随机划分为模型的训练样本与验证样本。由于模型需具有解释性,因此采取逻辑回归算法进行模型构建。
评分模型是将所有能预测客户未来是否会发生目标事件(不同评分卡有不同的定义,通常申请评分卡指是否审批通过,行为评分卡指是否会出现违约,催收评分卡指是否催收恢复等)的变量,进行最优化的排列组合,并予以适当的权重后,给予目标客户群体一个客观的信用评价,所以,模型变量的质量对评分模型的评价预测结果会产生显著的影响。
因此,在进入模型开发过程之前,根据不同零售金融业务的场景和需求,构建具有通用性和标准化的客户信用评分模型及评级体系,提出可能影响目标达成的潜在因素,进而列举未来开发程序所需要的各种变量逻辑与样本期间长度,获得变量清单,供模型开发使用。
在获取数据后,需要对数据进行统计性分析工作,随后对数据进行预处理的工作。通常情况下数据预处理包含了:极端值的识别和处理、缺失值的计算和处理、关键变量的列联表及相关统计量的计算、稳定性指标的计算、相关系数检验和特征矢量提取和变量特征分析。
由于异常值、缺失值处理,统计量计算、稳定性指标计算步骤通常是作为数据挖掘过程的标准步骤,并且受限于篇幅的限制,此处仅以特征矢量提取和变量特征分析为例进行详细说明。
在贷前申请阶段,由于对客户的其他信息了解的很有限,所以客户的征信报告是获取客户信息与数据的主要来源。征信报告中有着丰富的客户的历史信贷信息与逾期情况,这些对于信用评分模型来说有着非常大的作用。征信报告中的信息可以分成四个大类,分别为查询日志、个人信息、查询信息和信贷信息。
不过因为征信报告中的信息和数据是无法直接使用的,所以需要依据一定的逻辑对征信报告中的数据进行提取,这就涉及到征信特征的矢量提取。通过对征信报告中丰富的历史信息进行多维度矢量提取,可以为之后的预筛选模型做建模矢量准备,也可以为贷后部分做策略矢量准备。
提取征信特征矢量的作用:快速高效地解读征信报告;便捷有效地了解客户的个性化档案;人群对比、时间对比简单易行;单变量分析的基础;作为模型的输入变量。
在消费贷款评分卡建过程中,我们对征信报告进行了详细的分析和特征矢量提取。累计从征信报告中提取出300个常用字段,并基于常用字段进行了高维征信特征矢量的衍生。从图1可以看出部分衍生的特征矢量,为已提取的征信矢量类别。
图1:已提取的征信矢量类别示例
下面以图2为例对地址类变量的映射以及矢量加工逻辑进行说明。
图2:矢量(以地址类变量为例)
变量特性分析的目的是检查变量对于好坏客户的区分度,采用的方法是根据客户在该变量上的取值进行分段,目标是在每个分段中尽可能最大化好坏客户的比例差异,因此,在各个分段中好坏比例差异越大,该变量对好坏客户预测的能力也越强,体现在指标信息熵中,信息熵越大,该变量的预测能力越强。
如表2所示,以“CRVNBNKVALLV9003 最近3个月查询获贷比”为例来说明CA表格中各栏的含义。
此变量的含义为最近3个月内该客户征信查询笔数与最近3个月内所有获贷笔数的比值。从经验来说,此变量越大,说明该客户在最近3个月被银行拒绝的比例越高,因此违约的概率也越大。从上表中该变量的特性分析可以看到,这个值越大,的确坏客户的占比越高,与业务经验相符。该变量的总信息熵为5.59,说明该变量具有很好的预测性。
分组模型是指评分卡模型开发中的一种技术,由于评分卡模型的线性特点,很难描述贷款行为数据中的非线性关系,分组模型是一种很有价值的技术,使得评分卡模型能够充分描述和说明数据中的非线性关系。分组模型需要两个关键的阶段:分组模型的分组选择,分组模型的分组测试,分析和评定。分组选择是将模型开发贷款样本进行逻辑的分类。而逻辑的分类可以是通过经验的方法,也可以是通过统计学的方法。最常用也最有效的方法则是两种方法的有机结合,是基于评分卡开发经验,业务知识和统计学分析的全面综合结论。
根据客户的过往信贷历史,根据人群特征差异性,比如征信丰富程度和逾期情况,将人群分为多个人群组别。根据人群分组,信用评分模型将由不同的多个子模型组成,一次申请只会进入一个子模型进行评分,最终再进行分数校准。
评分卡的设计是首先根据征信报告计算客户信贷产品的逾期情况,同时还要计算客户的正常和历史信贷产品的丰富情况,然后根据逾期情况和信贷产品的丰富情况进行分组,共分成五组,征信缺失或极少组;无逾期少征信组;无逾期多征信组;普通逾期组;重度逾期组,每组对应不同的征信特征矢量。
通常在建模数据量足够的情况下,建模样本分成估计样本和验证样本。前者被用于变量的选择和模型预测。后者将被用于验证模型的稳定性。一个好的风险模型应该对两类样本显示出一致的排序能力。瑞天将预留样本验证作为标准评分卡开发过程的一部分。估计样本通过用随机抽样随机选取80%的群体进行评分卡开发,与用其余的20%群体进行检验来验证是否同样有效。
对验证样本20%应用评分卡的目的是,用未在任何建模过程使用的独立样本来判断评分卡的识别力。如果独立样本的评分与开发群体不同,这个回归就基于对开发样本的模型产生过度拟合(over-fitted),评分卡在业务环境中就不能很好地工作。
区分能力验证,采用Kolmogorov-Smirnov (K-S)统计值和基尼系数(Gini)进行检测。 需要对比开发样本和验证样本的K-S统计值和基尼系数来判断模型好坏区分能力是否发生大的变化。
一般申请的K-S值在20以上,Gini在30以上说明有区分能力。如表3所示。
表3
从验证情况来看,个别组测试集性能比验证集性能低,原因是本次训练采用随机抽样的方法进行训练集和验证集的选取,从统计学角度可能存在这种情况。其次,模型中的个别变量最终分值不完全是数据驱动的结果,有叠加业务经验以保证变量有一定的逻辑性。如学历变量,由于历史数据中研究生学历的客户很少,导致数据驱动结果显示研究生学历的评分低于大学本科、大学专科等。因此不能严格使用数据驱动的结果,需要结合业务经验进行分数调整。
虽然高的KS表示模型更具预测能力。同时也要小心KS造成过度拟合,由上表可知模型的区分能力非常稳定,无较大变化,至少说明评分卡开发样本与验证样本保持一致。在模型使用过程中也要注意监控群体稳定性,持续进行模型的跟踪和优化。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!