1. 评分卡模型的背景知识

风控顾名思义就是风险控制,指风险管理者采取各种措施和方法,消灭或减少风险事件发生的各种可能性,或风险事件发生时造成的损失。

1.1 什么是信用风险?

交易对手未能履行约定契约中的义务而造成经济损失的风险,即受信人不能履行还本付息的责任而使授信人的预期收益与实际收益发生偏离的可能性,它是金融风险的主要

类型

1.2 金融交易过程中相关概念

  • 违约概率(probability of default, PD)
    指借款人在未来一定时期内发生违约的可能性。这个说法包含了两个方面,一是单一借款人违约的概率,另一个就是某个信用等级所有借款人的违约概率。

    《巴塞尔新资本协议》要求‘实施内部评级法’的商业银行评估各信用等级借款人的违约概率。常用方法有:历史违约经验,统计模型,外部评级映射

-违约条件下的损失率(loss given default,LGD)
债务人一旦违约将给债权人造成的资产损失的比例,即损失的严重程度。
LGD=1-回收率
回收率=回收金额/放宽金额,此处的回收金额指该帐户违约,宣告无法偿债后,因拍卖担保品,强制执行借款人存款或其他催收方式所得回之金额。因此,通常除非有担保品,回收比率大部份非常低。也就是说违约损失率之大小,会取决于担保品的特性。

  • 违约风险下的敞口暴露(Exposure at Default, EAD,EAD)
    顾名思义,刻画的是违约发生时债务的敞口,这里有几个要素值得注意:
    a)违约发生时的敞口,不是之前,也不是之后,不是到期时,也不是债务发行时的敞口。为什么这很重要,因为敞口在大多数情况下都不是一个随时间不变的常量,而经常是一个随着时间和市场情况而变化的变量。** 比如按揭贷款,违约发生的时间越晚,EAD就越小,因为未偿付本金随着时间而降低**。EAD降低的原因,可能是确定的时变因素, 也可以是随机因素。再比如场外衍生品,其敞口每日都随着衍生品和抵押品的市场价值的变化而变化,因此EAD是一个复杂的随机过程。
    b)敞口的度量。不同于LGD,EAD可以用面值刻画,也可以表达为一个参考基数(如初始敞口)的百分比。后者在建模时较为方便,可以用类似LGD的方法来处理。

  • 风险权重资产(risk-weighted assets,RWA)
    银行的资产加以分类,根据不同类别资产的风险性质确定不同的风险系数,以这种风险系数为权重求得的资产, 银行业的总资产有很多资产是0风险权重的,比如国债,有很多风险权重则很高。这个要看每个银行的资产负债结构的配置,一般来说风险权重高的收益也更高

  • 期望损失(Expected Loss,EL)
    商业银行预期在特定时期内资产可能遭受的平均损失。

1.3 M 相关概念

M0:最后缴款日的第二天到下一个账单日
M1:M0的延续,即在未还款的第二个账单日到第二次账单的最后缴款日之间
M2:M1的延续,即在未还款的第三个账单日到第三次账单的最后缴款日之间
M3:M2的延续,即在未还款的第四个账单日到第五次账单的最后缴款日之间

2.信用评分卡

2.1 什么是信用评分卡

信用评分卡模型是最常见的金融风控手段之一,它是指根据客户的各种属性和行为数据,利用一定的信用评分模型,对客户进行信用评分,据此决定是否给予授信以及授信的额度和利率,从而识别和减少在金融交易中存在的交易风险。

2.2 信用评分卡分类

评分卡模型在金融领域不同的业务阶段体现的方式和功能也不一样。按照借贷用户的借贷时间,评分卡模型可以划分为以下三种:

(1)贷前:申请评分卡(Application score card),又称为A卡,用于评估借款人的风险水平,从而决定是否放款
(2)贷中:行为评分卡(Behavior score card),又称为B卡,根据借款人的还款行为来预测借款人的风险变化;
(3)贷后:催收评分卡(Collection score card),又称为C卡,针对已经出现不良的贷款,评估其回收的可能性。

这三种评分卡在算法上区别不大,主要区别在于数据方面。其中A卡和另外两者的区别会更大一些,因为构建A卡时无法使用借款人的还款行为数据(贷款还没放,哪来的还款行为),因此A卡相对于后两者更简单一些,相应地,准确性也会差一些。

2.3 信用申请评分卡模型的相关概念

2.3.1观察期和表现期

  • 观察期
    搜集变量、特征的时间窗口,通常3年以内

  • 表现期
    搜集是否触发坏样本定义的窗口,通常6个月~1年

2.3.2 坏样本的定义
在开始建模之前,我们首先要根据模型的使用场景,明确模型的目标变量。即“这个模型要预测或者分类什么”。

例如我们要做一个申请评分卡A卡。。A卡预测的是用户在申请通过以后发生不良行为的概率,不同的业务规则和业务场景,对不良行为的定义可能略有不同,它可以是“出现逾期”,也可以是逾期超过15天等等。

在风控场景下,我们一般把目标变量命名为“bad”,如果一条样本的bad等于1,就表示这条样本出现了不良行为,属于“坏”样本;bad等于0,表示这是一条“好”样本。

确定坏样本的标准:
bad的确定往往需要根据业务上的需求去判定,比如如果银行内部有贷款五级分类标准,

银行业目前通用的风险评级标准是贷款五级分类:贷款五级分类制度是指1998年5月起,中国人民银行参照国际惯例,结合中国国情,制定《贷款分类指导原则》,要求商业银行依据借款人的实际还款能力进行贷款质量的五级分类,即按风险程度将贷款划分为五类:正常、关注、次级、可疑、损失,后三种为不良贷款。现有项目要预测“关注”类客户转为“不良”客户的概率,‘不良’表示逾期超过60天,因此,一条数据定为坏样本的标准就是overdue > 60 days。

如果没有一个指定的标准来定义坏样本,常用这两种方法,这里介绍两个方法:滚动率分析和vintage分析。

// 面板数据
在日常业务开展的过程中,用户、产品规则和市场环境都是不断变化的。我们往往从数据库获得的数据是以面板数据(Panel Data)的形式展现的。

什么是面板数据?以用户行为为例,从某一个用户开始借贷起,他会留下一连串的还款行为数据。这种数据属于时间序列数据;不同用户在同一个时间节点的数据则称为横截面数据。我们把时间序列数据和横截面的特性结合起来,即不同用户在一段时间长度上的一系列数据,这个就是面板数据(时间序列-截面数据)。

那么问题来了。以贷款为例,一个贷款产品的用户肯定不止两个人。当用户很多的时候,每个人发生借贷的时间也不一样。用户甲可能是5月放款,而用户乙可能是8月才放款。这种面板数据在时间轴上通常不是“对齐”的,如果直接开始分析,那么就会忽略时间这一因素产生的影响,这显然是不够合理的。这种情况我们应该如何处理呢?我们需要在时间轴上“对齐”用户,即将不同时间点发生的用户行为,按照其生命周期进行对齐。

// 滚动率分析——定好坏标准

如果业务层面上没有明确的界定bad的标准,我们可以使用滚动率分析来找出一个合理的bad定义。利用滚动率分析,我们可以找出一个“临界状态”,当用户的逾期程度未达到这个临界状态时,用户的逾期程度还不稳定,会继续向更好或者更坏的方向发展,而当用户的逾期程度达到临界状态时,用户大概率只会继续往更坏的方向发展。把这个临界状态找出来,并作为bad定义,这样我们就不会“冤枉”那些会变好的用户。

滚动率分析该怎么做?我们结合下面的图来看:

首先,当我们拿到一批借贷和还款行为数据后,我们在贷款发生的过程中设置一个观察点,然后计算观察点之前一段时间内,所有用户的最大逾期程度,再计算观察点之后一段时间内这批用户的最大逾期程度。

如果用户往好的方向发展,那么他的最大逾期程度一定是下降的;反之,如果用户的最大逾期程度不变,或者进一步上升了,那么这个用户是往坏的方向发展的。滚动率其实就是计算用户从一个逾期程度“滚动”到另一个逾期程度的比率。

假设我们有一款小额分期产品,一次性放款,然后分期6期按周等额还款。这块产品发放的时间范围为2015年1月到2015年8月。它的首逾率较高,但大部分首逾用户(到期后首日即出现逾期)后续都会归还。如果我们直接用是否首逾来作为bad定义会显得过于宽泛,这样训练出来的模型的准入要求过高,会流失大量的用户。因此,我们需要适当放款bad定义。应该放宽到什么程度呢?这时我们就需要用滚动率分析来决定。

由于产品期限较短,因此我们以7天为间隔定义逾期周期。未逾期的用户定义为W0,逾期1-7天的定义为W1(Week),逾期8-14天的定义为W2,以此类推。逾期超过28天的定义为W4+。在拿到历史数据以后,我们首先设置一个观察点,观察用户在该点前一段时间内的最坏逾期阶段,并追踪其在观察点后一段时间向其他逾期阶段发展的情况。这里我们设2015年5月1日为观察点,我们先计算出在5月1日之前放款的这批用户在5月1日时,每个月账单的还款情况,并取其中逾期最长的一期作为他的逾期阶段;然后计算同一批用户在5月1日之后4个月内的最大逾期阶段;最后通过数据透视表对数据进行汇总,如下表所示:

表中的行名代表这批用户在观察点之前的最大逾期阶段,列名代表在观察点之后的最大逾期阶段。W1行与W0列对应的单元格为34%,表示观察点之前最大逾期阶段为W1的用户中,有34%的人在观察点之后转为W0,以此类推。那么问题来了,我们该如何用这张表找出临界状态并定义bad呢?

我们看表中的W3行,这行中W0、W1和W2对应的数字分别是3.5%、5.5%和5.5%。这表示在观察点之前逾期状态为W3的用户,在观察点之后转移到W0、W1和W2的概率是14.5%(前面三个概率求和)。即14.5%的人转回了更低的逾期状态。用同样的方法我们可以计算出观察点之前W1和W2用户转移到更低逾期状态的概率,分别是34%和52.3%(12.3%+40%),远高于14.5%。这意味着用户在达到W3以后,就很难转回更低的逾期状态了。因此,我们把W2与W3的边界值,即逾期超过14天,确定为bad的标准。所有逾期天数>14的样本都标记为bad。

在实际工作当中,滚动率分析往往要设置多个观察点,然后综合考虑各观察点的表现来确定最终的临界状态和好坏标准。每个观察点往前、往后观察多久也需要结合具体情况进行判断。

确定了样本的好坏标准以后,还有一个问题有待解决。我们还要确定表现期的长度。这时就要引入Vintage分析。

// Vintage分析——定表现期

Vintage意为葡萄酒酿造的年份,由于每年不同的天气、温度、湿度等情况,随着年份的不同,葡萄酒的品质也会有不同的表现。因此,人们会以葡萄采摘的年份来标识葡萄酒,进而对葡萄酒的品质加以区分

这一思想在金融信贷领域有什么用途呢?其实就是在前面说到的“对齐”不同时期样本,将所有样本的同一个生命周期进行对比。

利用vintage分析,我们可以确定模型表现期的长度。在日常的信贷业务中,一个客户的好坏往往需要一定的时间才能充分确认。我们一个明确的表现期,来确定究竟追溯多长时间内的bad行为。

你可能会觉得这一点和滚动率的动机好像很类似。其实vintage和滚动率侧重的方向不一样。就按揭贷款、金融分期产品来说,滚动率分析确定的是“每一期还款逾期多久算是触发坏定义”,而vintage分析确定的是“这个客户至少发生过多少期才能明确他的好坏”。
下面用一个很简单的例子来看懂vintage分析。
假设我们现在有一款按月分期还款的信贷产品,用滚动率分析得出bad标准为M1+(逾期超过30天),在2018年统计到如下数据:

表中的每一行代表一个客户群。201701代表的是2017年1月到期并开始还款的所有合同;每一列代表合同到期后的第N个月,1表示第0-30天,2表示第31-60天,以此类推。单元格中的百分比表示该客群在该期逾期M1+的占比。这里我们计算的是累计逾期率,即在第1期逾期M1+的合同即使还清了,在后续各期统计M1+合同数时,仍将其包含在内。
通过上表的形式,我们就把不同时间段到期的合同进行了“对齐”。不管这些合同是什么时候到期的,第一列的数据都表示它们到期后第一期的逾期状况。

利用上表数据,我们绘制出了下图:

结合图表可以发现,在到期并还款7期以后,累计逾期率的变化已经非常微小了。因此我们可以认为,一个合同在还款7期以后基本上是稳定的。该“坏”的在前6期都“坏”过了,“好”的在后续阶段大概率仍然不会“坏”。
因此,我们把表现期定为6期。又因为我们的产品是按月还款的,所以表现期实际上就是6个月。当一个合同到期并开始还款后,我们至少需要6个月的时间才能对期进行理由充分的好坏判定。如果在6个月内,其中有任意一期的逾期时间超过了30天(即M1+),则我们可以将这个合同标记为坏样本,反之则为好样本。
至此,我们就可以在业务方未给出明确目标的时候,确定出哪些样本是好样本,哪些样本是坏样本了。

2.4 评分卡模型开发步骤

I. 立项
II. 数据准备与预处理

①拿到数据 ②明确目标变量 ③特征工程

III. 模型构建

训练模型时,我们需要将输入的数据集划分为训练集和测试集两部分

在算法选择方面,我们通常使用二分类逻辑回归。逻辑回归的好处是可以输出概率值,这个概率值可以通过一定的运算转化为评分卡分数。

而且逻辑回归的解释性要好于GBDT等集成算法,它可以直观地看到每一个变量对预测结果的影响大小。在模型实现方面,我们可以直接使用Python第三方库sklearn或statsmodel中的LogisticRegression方法。

IV. 模型评估

常用的指标有AR,KS、PSI,Kendall’ Tau,Migration Matrix,AUC值和Gini系数等。

在申请评分卡模型中,通常情况下KS一般取值范围在25-45之间。如果低于25,说明模型的区分度太低,分类不准确;如果高于45,则模型可能存在过拟合,对新样本的预测能力不一定会好。

至此,我们就完成了一个申请评分卡的模型开发。在开发完成后,往往还需要配合工程人员完成上线部署。作为建模人员,需要提供的是入模变量的来源、计算逻辑和模型输出的评分卡。模型上线以后,还需要对上线后的模型进行观察和验证,并根据业务的发展对模型进行调整甚至重新训练。

评分卡模型案例(一)| 基础知识相关推荐

  1. 分类任务如何用逻辑回归实现_如何用逻辑回归构建金融评分卡模型?(上)

    虽然现在出现了很多性能优秀的分类算法,包括svm,RF,GBDT,DNN等,作为最简单的分类算法,lr依然是工业界主流的分类算法之一.那么lr到底有什么魔力,即使面对如此众多的 "高手&qu ...

  2. python金融风控评分卡模型和数据分析

    python金融风控评分卡模型和数据分析微专业课(博主录制):http://dwz.date/b9vv 作者Toby:持牌照消费金融模型专家,和中科院,中科大教授保持长期项目合作:和同盾,聚信立等外部 ...

  3. python金融风控评分卡模型

    python金融风控评分卡模型和数据分析微专业课(博主录制): [ http://dwz.date/b9vv ](https://study.163.com/series/1202875601.htm ...

  4. 基于Python的信用评分卡模型-give me some credit数据集,AUC 0.93 KS 0.71

    信用风险计量模型可以包括跟个人信用评级,企业信用评级和国家信用评级.人信用评级有一系列评级模型组成,常见是A卡(申请评分卡).B卡(行为模型).C卡(催收模型)和F卡(反欺诈模型). 今天我们展示的是 ...

  5. python金融风控评分卡模型和数据分析(加强版)-收藏

    信用评分卡 信用评分是指根据银行客户的各种历史信用资料,利用一定的信用评分模型,得到不同等级的信用分数,根据客户的信用分数,授信者可以通过分析客户按时还款的可能性,据此决定是否给予授信以及授信的额度和 ...

  6. logit回归模型的参数估计过程_评分卡模型原理及应用

    关注新蜂数字金融,ID:gh_c5ca7eb11df4 这是新蜂数字金融的第145篇原创首发文章 信用评分卡模型,作为金融业一项重要的风险控制手段,在行业中有着广泛的应用.只有对模型进行科学认知,理解 ...

  7. 评分卡模型剖析之一(woe、IV、ROC、信息熵)

    信用评分卡模型在国外是一种成熟的预测方法,尤其在信用风险评估以及金融风险控制领域更是得到了比较广泛的使用,其原理是将模型变量WOE编码方式离散化之后运用logistic回归模型进行的一种二分类变量的广 ...

  8. 信用评分卡模型开发及评估指标

    版权声明:本文为博主原创文章,未经博主允许不得转载. 一.信用风险评级模型的类型 信用风险计量体系包括主体评级模型和债项评级两部分.主体评级和债项评级均有一系列评级模型组成,其中主体评级模型可用&qu ...

  9. 信用评分卡模型的理论准备

    目录 0 前言 1 构建评分卡的整个流程图 2 信息值 IV(Information Value)和 证据权重 WOE(Weight of Evidence) 2.1 WOE 定义 2.2 IV 定义 ...

最新文章

  1. MyEclipse教程:Web开发——创建Web片段项目
  2. python小游戏源码-导弹发射小游戏——Python源代码
  3. POJ 3159[差分约束]
  4. Spring Boot 集成 Swagger 生成 RESTful API 文档
  5. android 动态录音权限,Android如何判断手机是否有录音权限的工具类
  6. 【常用】鼠标拖动物体移动
  7. nginx绑定freenom.com域名
  8. c语言的使用比例远远高于python语言对吗_Python和C语言的语法有什么不同?
  9. 论文浅尝 | 利用多语言 wordnet 上随机游走实现双语 embeddings
  10. 冈萨雷斯《数字图像处理》读书笔记(十一)——表示和描述
  11. css学习_css3过渡
  12. python自定义assert抛出的异常
  13. iWebOffice使用VBA控制字体
  14. 快播资源哪里跑(逆向)
  15. php 微信表情字符,微信公众平台开发--表情符号
  16. kali安装AWVS的步骤
  17. X8AIP 驱动程序
  18. 今年11月初阿里巴巴社招面试经历分享,Java工程师方向已拿offer【附学习方法】
  19. HTML、CSS、JavaScript 学习笔记
  20. 微信公众平台开发者模式(1)JAVA版接入

热门文章

  1. ACWing 327. 玉米田(状态压缩dp入门)
  2. 基于闪电连接过程优化算法的函数寻优算法
  3. JavaIO系统解析
  4. 先验概率跟后验概率(通俗易懂)
  5. Express搭建服务器
  6. 介绍一款数据库管理工具-DBeaver
  7. Neutron服务组件
  8. H3C 物联网路由器4G配置
  9. 数据传输过程加密方案
  10. Python解释器和IDE的安装