信贷风控模型开发----模型流程&好坏样本定义
第二章 模型开发流程&好坏样本定义
2.1模型开发流程
2.1.1 评分模型流程图
2.1.2流程图阐述
该小结提出了一些数据指标,如果不明白没有关系,往后的文章笔者会一个个地解释这些指标的含义和计算方法
- 数据获取:获取建模所需要的数据,一般分为内部为外部数据,内部数据例如贷款公司内部搜集存储的客户信息,例如客户在平台内部的登陆、注册、消费信息等,外部数据一般有第三方数据,例如人行征信报告、一些第三方机构提供的多头借贷等
- EDA与数据描述,EDA全称explore data analysis,目的在于探索性地分析客户数据分布情况以及数据质量,检查数据是否为单一值、包不包含缺失以及异常数据等。同时通过各种分析手段(Gini、列联表、χ2χ2检验、相关系数)等分析变量与目标(违约与否)的关联
- 数据准备,准备好我们需要进行建模的样本宽表,包括数据合并、清洗、转换等工作,这也是建模中最耗费时间的一项。
- 变量选择,在数据准备好以后,未必所有的变量都需要进入模型,否则容易出现维度灾难,就是数据集过大导致开发时间过长,根据一定方法选择最优变量进入模型就成了必要的工作,常用的有IV值,逐步回归(也就是先将一个变量纳入模型,然后逐步将其他变量一个一个纳入模型训练,剔除掉不能减少AIC的变量,然后继续加入新变量,直到AIC无法再下降为止)。另外还有假如L1惩罚项,用集成学习的方法选择变量等。
- 模型开发,利用机器学习,训练模型,常用的模型有logsitic回归、线性回归、决策树、深度学习等。
- 模型评估,评价模型对于好坏样本的区分能力,常用的指标有ROC曲线、RECALL、PERCISION、KS值等。
- 评分卡创建和刻度,利用模型估计出来的参数(也就是公式)将其转化为评分规则或者是风控规则。
- 检测和报告,监控模型是否运行稳定,常用的指标有PSI、评分迁移矩阵、kendall 秩相关系数等。
- 评分实施,模型部署上线,用于风控系统。
2.2 好坏样本定义
开发信用评分模型的首要目标就是知道来者是好人还是坏人,他未来会不会出现逾期、失联等。所以,如何定义一个借款人的好坏十分讲究,并不是一个人有过逾期欠款他就不是好人了,毕竟发生逾期的原因总是多方面的,有的仅仅是偶尔忘了,这部分总体还是好人,而有的是中途发生财务原因暂时无力偿还,还有的严重一点就是主观上存在坏的目的,借了钱就消失赖账,甚至是身份被骗子盗用。所以,建模过程中,为了训练出一个优质的模型,需要正确地定义好坏样本。
2.2.1观察期、表现期、观察点
在这里,需要明确三个定义:观察期、表现期、观察点,可以先从如下时间轴看起。
- 观察期:就是时间轴左侧,主要是用来生成用户特征的时间区间,不宜太长也不宜太短,一般为1年到3年左右
- 观察点:这个点并是一个具体的时间点,而是一个时间区段,表示的是客户申请贷款的时间,用来搜集那些用来建模的客户样本,在该时间段申请的客户会是我们用来建模的样本
- 表现期:用来定义用户是否好坏的时间区段,一般是6月到1年左右,一般最常用的是定义为坏样本的指标有:M3+逾期、M3以内逾期中定义为失联、欺诈、身份盗用等情况,这些需要看自身业务情况而定
补充说明:
1.观察点的设计:
观察点的设计有额外的讲究,其中涉及到一个Mob的概念。而所谓Mob,全称month on book,等于观察点减去贷款发放时间。所以,观察点的设计在于贷款发放时间往后推Mob期,Mob的长短关系到模型的观察期以及观察期生成的时间切片变量。
2.观察期过长或过短的影响:
- 一个过长的观察期,可能会导致客户不在你的mob内,大批样本无法进入模型
- 一个过短的观察期,则会导致样本无法生成足够多有效的时间切片变量
3.时间切片变量:
- 时间区段的行为变量,例如过去3个月平均消费金额、过去6个月消费平均次数等
2.2.2举例说明
假如,现在我们的模型表现期为1年,观察期为1年,观察点为什么时候呢?也就是说当我们有一个客户在2018-1-1号来申请贷款,贷款机构需要用现有的模型对该申请人进行一个申请评分,评估他未来表现期内触发坏样本属性的概率,那么该模型采用的客户样本是什么时候申请进件的?
答案:因为上面定义的表现期是1年,那么往前推一年,观察点大概为2017-1-1号左右某段时间区间,因为观察期也是1年,所以再往前推1年(即观察期:2016-1-1到2017-1-1),利用这1年所有观察点内申请人一些信息建立模型的观察变量,然后再往后推一年(即表现期:2017-1-11到2018-1-1),所有在观察点内的申请人在这一年时间内的表现情况来定义违约。然后来训练出一个模型。对2018-1-1号的申请人进行评分。所以申请评分卡模型有着天然的滞后性,需要不断的对其模型进行监控。
参考文档:https://blog.csdn.net/hankkuang/article/details/79639631
信贷风控模型开发----模型流程&好坏样本定义的更多相关文章
- (信贷风控九)行为评分卡模型python实现
python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...
- 传统开发模型vs敏捷开发模型——过程模型的变革
一.概念框架 在了解一个新概念的时候,最好的方法就是把它插入到原有的概念体系中.在不仅有助于对概念的记忆,更利于深刻地认识概念的本质.精髓.下图说明了"敏捷开发"在软件工程理论体系 ...
- Java精选笔记_JSP开发模型
JSP开发模型 JSP Model JSP Model1简单轻便,适合小型Web项目的快速开发. JSP Model2模型是在JSP Model1的基础上提出的,它提供了更清晰的代码分层,更适用于多人 ...
- 无人机基于Matlab/Simulink的模型开发(连载一)
"一切可以被控制的对象,都需要被数学量化" 这是笔者从事多年研发工作得出的道理,无论是车辆控制,机器人控制,飞机控制,还是无人机控制,所有和机械运动相关的控制,如果不能被很好的数学 ...
- 版本分支管理标准 - Trunk Based Development 主干开发模型
之前分享过<版本分支管理标准 - Git Flow>,不过在实际使用过程中, 因为其有一定的复杂度,使用起来较为繁琐,所以一些人员较少的团队并不会使用这个方案. 在这基础上,一些新的分支管 ...
- [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计
源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...
- NC的开发模型
2018-04-1622:35:12 NC的开发模型 系统前端为:客户UI代码,UI代码继承ToftPanel,UI代码通过调用远程组件和服务端进行交互,中间传递的数据模型为VO,远程组件调用底层的业 ...
- 微软解决方案框架 - MSF的团队模型、MSF的开发模型,关于SA系统分析师信息的一篇好帖子
msf中的开发模型 书中关于六个小组的人员的案例: MSF 组队模型 v. 3.1-http://bbs.51cto.com/thread-1171-1.html 微软解决方案框架 - MSF的团队模 ...
- 三种扩展 Office 软件功能的开发模型对比 – Office Add-In Model, VBA 和 VSTO
当 Office 用户需要针对文档自定义新功能时,可以求助于 VBA 或者 VSTO 两种方式.Office 2013 富客户端以后,微软为 Office 平台上的开发者提供了一种新模型 --- Of ...
随机推荐
- Java模板引擎之Freemarker 学习笔记 一
什么是Freemarker Freemarker是模板引擎,不是Web框架,只是视图层的组件,官网是 https://freemarker.apache.org/ Freemarker原理 数据模型+ ...
- 程序中出现list assignment index out of range的解决方法
class stack: def __init__(self): self.num = 0 self.elem=[] def isEmoty(self): if self.num == 0: prin ...
- 数字证书原理(ssl,https)
https://blog.csdn.net/qq_34115899/article/details/81298284 关于私钥公钥数字签名数字证书.https.RSA的一些讲解 http://www. ...
- vue项目 首页开发 part3
da当拖动图标时候,只有上部分可以,下部分无响应 swiper 为根页面引用,其中的css为独立,点击swiper标签可以看见其包裹区域只有部分 那么需要修改 就需要穿透样式 外部 >> ...
- ZJNU 2340/2341/2343 - 罗小黑的“礼物”Ⅰ/Ⅱ/Ⅲ
把一位数.两位数.三位数……这些所在的范围分开判断 可得1~9这些数范围在[1,9]内 10~99内共有90个数,每个数占两位,所以共有180位在,范围在[10,189]内 同理,100~999内共有 ...
- 3D打印前途光明,它需要怎样的进化?
在很长一段时间内,笔者都认为3D打印只会存在于科幻场景内,众多的科技大佬在前几年也和我保持相当一致的看法,代工大王郭台铭曾口出狂言:如果3D打印能够普及,我就把"郭"字倒过来写,时 ...
- bzoj4311向量(线段树分治+斜率优化)
第二道线段树分治. 首先设当前向量是(x,y),剩余有两个不同的向量(u1,v1)(u2,v2),假设u1>u2,则移项可得,若(u1,v1)优于(u2,v2),则-x/y>(v1-v2) ...
- rename 修改文件名
Linux的 rename 命令有两个版本,一个是C语言版本的,一个是Perl语言版本的,早期的Linux发行版基本上使用的是C语言版本的,现在已经很难见到C语言版本的了,由于历史原因,在Perl语言 ...
- 推荐Markdown编辑器——Inspire
推荐Markdown编辑器--Inspire Inspire是一款非常好用的编辑器,支持Markdown语法,当然,Inspire还有一些自己的语法. 本文就是在这款编辑器下编写的. 风格 像Visu ...
- 108.生成和下载csv文件
生成CSV文件 有时候我们做的网站,需要将一些数据,生成一个csv文件返回浏览器,并且是作为附件的形式下载下来. 生成小的csv文件: 生成一个小的csv文件,我们用Python内置的csv模块来处理 ...