商业银行信贷客户违约量化评估与预测方法--Python/SPSS机器学习

商业银行作为经营风险的金融机构,经营特色在于通过承担适当风险,获取与风险相匹配的收益。常见的盈利途径,比如通过承担信用风险,吸收存款、发放贷款来获取收益;又比如通过承担流动性风险,借短放长、期限错配来获取收益。本文简要介绍一下实务中常用的、在开展客户违约评估与预测方面的量化分析方法。

一、模型构建的基本思路

客户违约问题,本质上还是一种对客户的分类问题。基本逻辑是把客户是否守约作为响应变量(被解释变量),这一响应变量在测量方式上属于二分类变量,把客户分为“违约”和“守约”两类;把客户特征作为特征变量(解释变量),客户特征包括客户的经营能力、盈利能力、偿债能力、发展潜力、现有负债及担保情况等等,这些解释变量既可以是生产经营指标、财务指标等连续变量,也可以是是否对外担保、是否存在历史违约记录等分类变量。

当然,这一概念可以扩展,比如针对单笔债项进行预测,响应变量(被解释变量)可能是多分类的,按资产质量五级分类,正常、关注、次级、可疑、损失等,或者划分为高风险客户、一般风险客户、低风险客户等。特征变量(解释变量)也可能会扩展到除客户资质之外的影响因子,比如针对贸易融资业务,因为需要考虑贸易背景的真实性、贸易融资的自偿性,那么除了考虑借款人,还应该充分考虑交易对手的资质、担保货品的特征、应收账款的特征、供应链整体运营状况等因子的影响。

二、常见的统计分析建模技术

从分类模型的角度出发,常用的统计分析方法包括判别分析、Logistic回归分析等传统分析以及决策树分析、神经网络分析等相对较新的分析方法。

(一)Logistic回归分析

Logistic回归分析包括二元Logistic回归分析、多元Logistic回归分析和有序Logistic回归分析,三者区别在于因变量是二分类还是多分类、分类有无排序依据。如果因变量是0、1分类(如预测是否违约),则应使用二元Logistic回归分析;如果是因变量是多分类且无顺序(如预测客户可能选取的贷款品种),则使用多元Logistic回归分析;如果是因变量是多分类且有顺序(如预测单笔债项资产质量),则使用有序Logistic回归分析。限于篇幅,以二元Logistic回归分析为例介绍,其他方法类似。大家对于经典的普通最小二乘回归分析可能比较熟悉,事实上,同普通最小二乘类似,Logistic回归分析本质上也是回归分析。因为一般的普通最小二乘回归分析要求因变量呈现正态分布,并且各组中具有相同的方差—协方差矩阵,所以直接用来为二值因变量进行回归估计是不恰当的。二元Logistic回归分析的基本原理是考虑因变量(0,1)发生的概率,用发生概率除以没有发生概率再取对数。通过这一变换改变了“回归方程左侧因变量估计值取值范围为0-1,而右侧取值范围是无穷大或者无穷小”这一取值区间的矛盾,也使得因变量和自变量之间呈线性关系。当然正是由于这一变换,使得Logistic回归自变量系数不同于一般回归分析自变量系数,而是模型中每个自变量几率比的概念。Logistic模型的公式如下:

其中,p为发生的概率;α为模型的截距项;β为待估计系数;X为自变量,最后面是误差项。Logistic回归系数的估计通常采用最大似然法,最大似然法的基本思想是先建立似然函数与对数似然函数,再通过使对数似然函数最大求解相应的系数值,所得到的估计值称为系数的最大似然估计值。

(二)判别分析

判别分析的基本原理是按照一定的判别准则,建立一个或多个判别函数,用现有研究对象中的大量样本观测值确定判别函数中的待定系数,并计算判别指标,从而确定出判别函数的具体形式,然后可以用来进行预测,即对于一个未确定类别的样本观测值,只要将其代入判别函数就可以判断它属于哪一类总体。

(三)决策树分析

决策树建模技术通过创建基于树的分类模型,为探索性和证实性分类分析提供验证工具。它既可以有效的将参与分析的样本分为若干类,也可以根据特征变量的值预测响应变量的值。

示例:

商业银行信贷客户违约量化评估与预测方法--Python/SPSS机器学习_第1张图片

决策树分析通常可以完成以下功能:一是在所有参与分析的样本中,找出可能成为目标组的成员,比如购买者或优质客户的样本。二是针对所有参与分析的样本,划分为几个不同的类别,比如高、中和低风险组。三是创建模型规则并使用它来预测将来的事件,如某小额快贷申请者将来发生违约或某新注册会员将来成为VIP客户的可能性。四是数据降维和变量筛选,从总体的大变量集中选择有用的预测变量子集,以用于构建正式的参数模型。五是交互确定,确定仅与特定子组有关的关系,并在正式的参数模型中指定这些关系。六是类别合并或将连续变量进行离散化,以最小的损失信息对组预测类别或连续变量进行重新编码。比如将连续的年龄值分为小孩、年轻人、中年人、老年人等。

(四)神经网络

神经网络建模技术的最大特色是对模型结构和假设施加最小需求,可以应用到因变量和自变量之间关系不明确的情形中。

神经网络建模技术可以接近多种统计模型,并不需要先假设因变量和自变量间的特定关系,因变量和自变量间的特定关系在学习过程中确定。如果因变量和自变量间的线性关系更为适合,那么神经网络结果将接近线性回归模型的结果;如果因变量和自变量间的非线性关系更为适合,神经网络将自动接近非线性回归模型的结果。

就“商业银行授信客户的信用风险评估”而言,神经网络分析方法应用于信用风险评估的优点在于其对模型结构和假设施加最小需求,无严格的假设限制,且具有处理非线性问题的能力。它能有效解决非正态分布、非线性的信用评估问题,信用评估结果介于0与1之间,在信用风险的衡量下,即为违约概率。

三、关于模型的选择及质量评价

我们构建模型的根本目的在于预测。通过对历史数据的深度挖掘,找出其中存在的规律性结论,并将之应用于未来的获客活客或风险防控。比如通过分析发现某些细分行业违约概率较高,那么在授信客户行业结构方面就要出台一些差异化政策进行适当限制;又比如通过分析某些因素交互作用较大,典型如从事XX职业的XX性别客户在XX时间段申请的贷款违约较多,那么可能就需要对该类贷款实行再次审批机制,补充更多的证明性资料,施加更加严苛的贷款条件等等。

从方法角度,判别分析和Logistic回归分析本质上都属于线性分析的范畴,如果我们能够较为合理的判定信用风险和各个解释变量是一种线性关系,那么我们完全可以选择这些传统的建模技术。但是如果我们无法较为合理的判定信用风险和各个解释变量之间的关系,那么就使用神经网络、决策树建模技术就是一种不错的选择。

从技术角度,我们在评价模型的优劣好坏时,通常从两个维度去评判,一是模型预测的准确性,二是模型预测的稳健性,两者相辅相成、缺一不可。关于模型预测的准确性,如果模型能够尽可能的拟合了历史数据信息,拟合优度很高,损失的信息量很小,而且对于未来的预测都很接近真实的实际发生值,那么模型一般是被认为是质量较高的。而关于模型的稳健性,简要解释一下,我们在构建模型时,模型样本一般分为训练样本、坚持样本和检验样本,其中训练样本包含用于训练模型的数据记录,训练样本不能为空,数据集中的某些样本观测值必须分配给训练样本以获得一个模型;检验样本是一个用于跟踪训练过程中的误差以防止超额训练的独立数据记录集,通常情况下,用户创建训练样本后,检验样本数量要小于训练样本数量,神经网络训练才是最高效的;坚持样本不用于构建模型,是一个用于评估最终模型的独立数据记录集;坚持样本的误差给出一个模型预测能力的“真实”估计值。我们期望的是模型在对训练样本以外的样本进行预测时,模型的预测精度不应该有较大幅度的下降,这就是所谓的稳健性。一般来说,神经网络、决策树的预测准确性要优于判别分析和Logistic回归分析等线性分析,但是其稳健性弱于线性分析。

从实务角度,我们还应该关注模型的价值导向,理解模型背后的业务逻辑,紧密围绕业务目标、改善商业表现去评价模型,而不应该就建模而建模。一个简单的例子,我们基于客户行为画像建立一个客户流失度模型,该模型的预测准确性比较高,如果我们的业务目标导向是要尽可能留住老客户,那么我们的模型质量还是不错的,通过预测可以做出前瞻性的安排,比如提供优惠政策、提供增值服务等等;但如果我们的业务目标是要获取更多的利润,而这些流失的客户在很大程度上对于公司的利润贡献是很低的甚至是负值(获取收入不能弥补维系成本),那么我们构建一个包括客户流失度和客户利润贡献度双目标变量的预测模型可能更为合适。

四、模型的实现途径(编程语言 or 统计分析软件)

机器学习在实务中都是通过Python编程语言(R语言也常用)或SPSS等统计分析软件来实现的,而不需要自己去计算。用Python开展机器学习,基本上就是学会调用相应的模块(使用import语句或from…import语句导入模块),然后合理设置相应参数,会对运行结果进行解读,就可以了。用SPSS等统计分析软件开展机器学习,基本上就是会操作相关的菜单,在对话框中进行合理设置,会对运行结果进行解读,就可以了。

用Python编程语言的好处是:1.非常灵活,可以实现很多很多机器学习算法(理论上只要有可调用的模块就可以);2.免费开源,用户众多,不用花钱,遇到问题可以在网上一搜,往往就可以找打答案;3.学习的延展性好,Python除了可以用来进行机器学习,还可以进行爬虫、开发游戏、实现办公自动化等,实现一学多用。缺点在于:因为没有专业公司运营,所以在安装、调用等各个环节,很容易出错,而且不同的模块的版本之间很多时候出现升级不兼容等问题,需要一定的程序调试能力。

用SPSS统计分析软件也可以开展机器学习,其中包括多层感知器、径向基函数、神经网络、决策树、判别分析、线性回归、logistic回归、聚类分析、ROC曲线等很多种方法。其优势在于:1.操作更为简单,只需要点点鼠标操作菜单,在对话框中设定选项,输入参数就可以;2.由于是由SPSS公司专业运营所以基本上不会有bug,不需要任何编程和程序调试能力;3.SPSS不仅可以用于机器学习,还可以用来进行统计分析,不仅可以搞应用还可以搞学术。缺点在于:1.方法不全,没有随机森林、支持向量机、提升法等较为常用的机器学习算法;2.不够灵活,无法根据实际研究需要向编程语言那样做到“量身定制”;3.正版软件需要收费,对于很多用户来说比较昂贵。

根据我多年的教学经验,大家无论是学数据分析中的机器学习还是统计学、计量经济学,都建议结合着具体的软件或编程语言来学,对于不想走纯科研路线或者想成为理论大牛的大多数朋友来说,不建议过多研究数学公式,而是应一边学习知识原理,一遍上手操作,不然就会在复杂的数学公式推导面前耗尽了所有的学习热情。

五、学习资料推荐

(一)用Python编程语言实现机器学习书目推荐

如果是用Python编程语言,针对数据分析或机器学习推荐两本入门级的图书:《Python机器学习原理与算法实现》(杨维忠 张甜 著 2023年2月新书 清华大学出版社)《Python数据科学应用从入门到精通》(张甜 杨维忠 著 2023年11月新书 清华大学出版社)。这两本书的特色是在数据分析、机器学习各种算法的介绍方面通俗易懂,较少涉及数学推导,对数学基础要求相对不高,在python代码方面讲的很细致,看了以后根据自身需要选取算法、优化代码、科学调参。

1.《Python机器学习原理与算法实现》

《Python机器学习原理与算法实现》(杨维忠 张甜 著 2023年2月新书 清华大学出版社)内容非常详实,包含了Python和机器学习,相当于一次获得了两本书。在讲解各类机器学习算法时,逐一详解用到的各种Python代码,针对每行代码均有恰当注释(这一点基本上是大多数书目做不到的)。《Python机器学习原理与算法实现》一书创作完成后,在正式出版之前,已经开发成一套系统课程,分9次授课,在某全国性股份制商业银行内部开展了培训,490人根据行内组织统一学习,授课完成后放在知鸟平台供回放学习,9次课程累计回放量近3万次,得到参训学员的一致好评,广泛应用于各位学员的工作实践。(所以,这是一本避雷避坑、已经被亲测可行的网红书,只要用心学,都没问题哦)。

商业银行信贷客户违约量化评估与预测方法--Python/SPSS机器学习_第2张图片

2.《Python数据科学应用从入门到精通》

《Python数据科学应用从入门到精通》一书,旨在教会读者实现全流程的数据分析,并且相对《Python机器学习原理与算法实现》一书增加了很多概念性、科普性的内容,进一步降低了学习难度。国务院发展研究中心创新发展研究部第二研究室主任杨超 ,山东大学经济学院金融系党支部书记、副主任、副教授、硕士生导师张博,山东管理学院信息工程学院院长 袁锋 教授、硕士生导师,山东大学经济学院 刘一鸣 副研究员、硕士生导师,得厚投资合伙人 张伟民等一众大牛联袂推荐。全书内容共分13章。其中第1章为数据科学应用概述,第2章讲解Python的入门基础知识,第3章讲解数据清洗。第4~6章介绍特征工程,包括特征选择、特征处理、特征提取。第7章介绍数据可视化。第8~13章介绍6种数据挖掘与建模方法,分别为线性回归、Logistic回归、决策树、随机森林、神经网络、RFM分析。从数据科学应用和Python的入门,再到数据清洗与特征工程,最终完成数据挖掘与建模或数据可视化,从而可以为读者提供“从拿到数据开始,一直到构建形成最终模型或可视化报告成果”的一站式、全流程指导。买这一本书相当于一下子得到了5本书(Python基础、数据清洗、特征工程、数据可视化、数据挖掘与建模),入门超级简单,不需要编程基础,也不需要过多数学推导,非常适用于零基础学生。

商业银行信贷客户违约量化评估与预测方法--Python/SPSS机器学习_第3张图片

两本书随书赠送的学习资料也很多,包括全部的源代码、PPT、思维导图,还有10小时以上的讲解视频,每一章后面还有练习题及参考答案,还有学习群,相对于只看网络上的视频,一方面更加系统、高效,另一方面照着书一步步操作学起来也事半功倍。全网热销中,当当、京东等平台搜索“Python机器学习 杨维忠”“Python数据科学 杨维忠”即可。

(二)用SPSS编程语言实现机器学习书目推荐

关于SPSS的机器学习、商用建模与综合案例应用,推荐学习杨维忠、张甜编著,清华大学出版社出版的《SPSS统计分析商用建模与综合案例精解》。

商业银行信贷客户违约量化评估与预测方法--Python/SPSS机器学习_第4张图片

全书共12章,第1章为SPSS操作快速入门,旨在告诉读者SPSS软件启动与关闭,数据编辑录入、数据读取、数据排序、缺失值处理、数据查找、数据合并等对数据的基础操作,教会读者如何使用SPSS处理数据。第2章为SPSS建模技术要点介绍,旨在告诉读者SPSS中的各类建模技术方法,建模中的注意事项,建模中的常见误区、需要遵循的价值导向,以及完整的研究方案设计要点等。第3章为SPSS在电子商务平台商户营销中的应用,讲解如何使用SPSS的直销模块来进行建模,以便应用到电子商务平台商户营销中。第4章为商业银行授信客户信用风险评估,讲解如何使用SPSS软件的神经网络-多层感知器,应用到商业银行授信客户信用风险评估领域。第5章为在线旅游供应商客户分类建模技术模块,讲解如何使用SPSS软件的神经网络-径向基函数,以便应用到在线旅游供应商客户分类中。第6章为小额快贷大数据审批建模技术模块,讲解如何使用SPSS软件的决策树模块,应用到小额快贷大数据审批中。第7章为汽车消费市场调研建模技术,讲解如何使用SPSS软件的联合分析模块和交叉表分析模块,应用到汽车消费市场调研中。第8章为住宅小区订奶量预测分析建模技术,讲解如何使用SPSS软件时间序列预测模块进行建模,应用到住宅小区订奶量预测分析中。第9章为手机游戏玩家体验评价影响因素分析,讲解如何使用SPSS软件的线性回归分析模块和方差分析模块,研究手机游戏玩家体验评价影响因素。第10章为家政行业客户满意度调研建模技术,讲解如何使用SPSS软件可靠性分析、描述性分析相关性分析、有序回归分析等模块开展家政行业客户满意度调研工作。第11章为软件和信息技术服务业估值建模技术,讲解如何使用SPSS软件描述性分析、相关性分析、线性回归分析研究软件和信息技术服务业上市公司估值。第12章为美容连锁企业按门店特征分类分析建模技术,讲解如何使用SPSS软件因子分析模块和聚类分析模块对美容连锁企业按门店特征分类。

综上所述,本书最大的特色和优势在于将SPSS建模技术和商业领域应用有机结合,从使用的SPSS建模技术来看,既包括传统经典的线性回归分析、相关分析、因子分析、聚类分析、描述性分析、方差分析、交叉表分析等一般统计建模技术,也包括神经网络多层感知器、径向基函数、决策树等热门大数据处理建模技术,也包括专业用于市场营销的联合分析、直销模块分析等专业建模技术。从研究应用的领域来看,全部为当下流行热门的商业运营领域,涉及的行业包括商业银行、美容连锁、汽车制造销售、电子商务、在线旅游、网络信贷、手机游戏、家政行业、奶制品行业、软件和信息技术服务业等,涉及的商业运营环节包括市场调研、市场营销、客户满意度调查、连锁门店分类管理、奶制品物流配送、客户关系分级分类维护、业务审批、消费者综合体验、上市公司估值等。 创作不易,恳请大家多多点赞支持,也欢迎大家多多关注我,让我们一起学习Python/SPSS/Stata等相关知识。

你可能感兴趣的:(python,机器学习,开发语言,数据挖掘,人工智能,数据分析,数据库)