风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)
python信用评分卡建模(附代码,博主录制)
——————————————————————————————————————————
一、风控建模流程以及分类模型建设
1、建模流程
该图源自课程讲义。主要将建模过程分为了五类。数据准备、变量粗筛、变量清洗、变量细筛、建模与实施。
2、分类模型种类与区别
风控与其他领域一样,分类模型主要分为两大类:排序类、决策类、标注类(文本、自然语言处理)。
一般来说风控领域在意的是前两个模型种类,排序类以及决策类。
其中:巴塞尔协议定义了金融风险类型:市场风险、作业风险、信用风险。信用风险ABC模型有进件申请评分、行为评分、催收评分。
模型 | 解释 | 复杂度 | 应用场景 |
Logistics回归 | 影响程度大小与显著性,解释力度强,但只是线性,没有顾及到非线性,预测精度较低 | 申请评分、流失预测 | |
决策树 | 1、描述性,重建用户场景,可做变量提取与用户画像 | 叶子的数量 | 流失模式识别 |
2、树的结构不稳定,可以得出变量重要性,可以作为变量筛选 | |||
随机森林 | 随机森林比决策树在变量筛选中,变量排序比较优秀 | ||
神经网络 | 1、不可解释,内部使用,预测精度较高。可以作为初始模型的金模型(用以评估在给定数据条件下,逻辑回归可达到的最精确程度) 2、线性(逻辑回归)+非线性关系,可用于行为评分的预测模型(行为评分对模型可解释性不强),可用于申请评分的金模型 3、使用场景:先做一个神经网络,让预测精度(AUC)达到最大时,再用逻辑回归 |
迭代次数 | 申请评分的金模型; 行为评分的预测模型 |
(1)信用风险——申请信用评分
申请评分可以将神经网络+逻辑回归联合使用。
《公平信用报告法》制约,强调评分卡的可解释性。所以初始评分(申请评分)一般用回归,回归是解释力度最大的。
神经网络可用于银行行为评级以及不受该法制约监管的业务(P2P)。其次,神经也可以作为申请信用评分的金模型。
金模型的使用:一般会先做一个神经网络,让预测精度(AUC)达到最大时,再用逻辑回归。
建模大致流程:
一批训练集+测试集+一批字段——神经网络建模看AUC——如果额定的AUC在85%,没超过则返回重新筛选训练、测试集以及字段;
超过则,可以后续做逻辑回归。
(2)信用风险——行为评分
行为评分建模:行为信用评级不需要解释性,所以可以用非线性的神经网络。
——————————————————————————————————————————
二、分类模型评估体系
上述将分类模型做了归纳,不同的分类模型所采用的评估体系不同。
决策类:准确率/误分率、利润/成本
排序类:ROC指标(一致性)、Gini指数、KS统计量、提升度
1、决策类评估——混淆矩阵指标
混淆矩阵,如图:其中这些指标名称在不同行业有不同的名称解释
正确率=(A+D)/(A+B+C+D)
灵敏度(覆盖率、召回率)=A/(A+B)
命中率(PV+)=A/(A+C)
特异度(负灵敏度、负覆盖率)=D/(C+D)
负命中率(PV-)=D/(D+B)
在以上几个指标中不同行业看中不同的指标:
(1)灵敏度/召回率/覆盖率(——相对于命中率)
譬如灵敏度(召回率)这一指标就比正确率要重要,覆盖率(Recall)这个词比较直观,在数据挖掘领域常用。因为感兴趣的是正例(positive),比如在信用卡欺诈建模中,我们感兴趣的是有高欺诈倾向的客户,那么我们最高兴看到的就是,用模型正确预测出来的欺诈客户(True Positive)cover到了大多数的实际上的欺诈客户,覆盖率,自然就是一个非常重要的指标。
(2)命中率(——相对于覆盖率)
欺诈分析中,命中率(不低于20%),看模型预测识别的能力。
在数据库营销里,你预测到b+d个客户是正例,就给他们邮寄传单发邮件,但只有其中d个会给你反馈(这d个客户才是真正会响应的正例),这样,命中率就是一个非常有价值的指标。 以后提到这个概念,就表示为PV+(命中率,Positive Predicted Value)*。
2、排序类指标评估
ROC指标(一致性)、Gini指数(洛伦兹曲线)、KS统计量、提升度四类指标。
(1)ROC曲线
对角线模型,最差,风控喜欢的指标。由决策类指标的灵敏度(召回率/覆盖率)与特异度(负灵敏度、负召回率)来构造。
求覆盖率等指标,需要指定一个阈值(threshold)。随着阈值的减小,灵敏度和1-特异度也相应增加(也即特异度相应减少)。
把基于不同的阈值而产生的一系列灵敏度和特异度描绘到直角坐标上,就能更清楚地看到它们的对应关系。把sensitivity和1-Specificity描绘到同一个图中,它们的对应关系,就是传说中的ROC曲线,全称是receiver operating characteristic curve,中文叫“接受者操作特性曲线”。
AUC值,为了更好的衡量ROC所表达结果的好坏,Area Under Curve(AUC)被提了出来,简单来说就是曲线右下角部分占正方形格子的面积比例。该比例代表着分类器预测精度。(R语言︱ROC曲线——分类器的性能表现评价)
(2)累积提升曲线
营销最好的图,很简单。它衡量的是,与不利用模型相比,模型的预测能力“变好”了多少(分类模型评估——混淆矩阵、ROC、Lift等)。
将概率从大到小铺开x,提升度可以有一些“忽悠”的成本,哈哈~可以微调,可以自己调节提升度的区间
(3)K-S曲线
风控喜欢的指标。K-S曲线的最大值代表K-S统计量。
(4)洛伦兹曲线gini
风控喜欢的指标,TP率给了一个累积比,跟提升度差不多。
——————————————————————————————————————————
三、信用风险模型检测
监测可以分为前端、后端监控。
前端监控,授信之前,别的客户来了,这个模型能不能用?
后端监控,建模授信之后,打了分数,看看一年之后,分数是否发生了改变。
1、前端监控
长期使用的模型,其中的变量一定不能波动性较大。比如,收入这个指标,虽然很重要,但是波动性很大,不适合用在长期建模过程中。
如果硬要把收入放到模型之中,要放入收入的百分位制(排名)。
2、后端监控
主要监控模型的正确性以及变量选择的有效性。出现了不平滑的问题,需要重新考虑
python风控建模实战lendingClub(博主录制,catboost,lightgbm建模,2K超清分辨率)
https://study.163.com/course/courseMain.htm?courseId=1005988013&share=2&shareId=400000000398149
微信扫二维码,免费学习更多python资源
风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)的更多相关文章
- 笔记︱风控分类模型种类(决策、排序)比较与模型评估体系(ROC/gini/KS/lift)
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 本笔记源于CDA-DSC课程,由常国珍老师主讲 ...
- 文本分类实战(五)—— Bi-LSTM + Attention模型
1 大纲概述 文本分类这个系列将会有十篇左右,包括基于word2vec预训练的文本分类,与及基于最新的预训练模型(ELMo,BERT等)的文本分类.总共有以下系列: word2vec预训练词向量 te ...
- 洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈)
洛谷P1155 双栈排序题解(图论模型转换+二分图染色+栈) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1311990 原题地址:洛谷P1155 双栈排序 ...
- PyQt(Python+Qt)学习随笔:model/view架构中的排序和代理模型QSortFilterProxyModel
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 在Model/View体系架构中,有两种方法可以进行排序:选择哪种方法取决于底层模型. 如 ...
- 生成模型(Generative)和判别模型(Discriminative)
生成模型(Generative)和判别模型(Discriminative) 引言 最近看文章<A survey of appearance models in visual object ...
- 模型评估——ROC、KS
无论是利用模型对信用申请人进行违约识别,还是对授信申请人进行逾期识别……在各种各样的统计建模中,永远必不可少的一步是对模型的评价,这样我们就可以根据模型评价指标的取值高低,来决定选取哪个模型.本篇主要 ...
- Coursera Deep Learning笔记 序列模型(一)循环序列模型[RNN GRU LSTM]
参考1 参考2 参考3 1. 为什么选择序列模型 序列模型能够应用在许多领域,例如: 语音识别 音乐发生器 情感分类 DNA序列分析 机器翻译 视频动作识别 命名实体识别 这些序列模型都可以称作使用标 ...
- R2CNN模型——用于文本目标检测的模型
引言 R2CNN全称Rotational Region CNN,是一个针对斜框文本检测的CNN模型,原型是Faster R-CNN,paper中的模型主要针对文本检测,调整后也可用于航拍图像的检测中去 ...
- 什么是领域模型(domain model)?贫血模型(anaemic domain model) 和充血模型(rich domain model)有什么区别
http://blog.csdn.net/helloboat/article/details/51208128 领域模型是领域内的概念类或现实世界中对象的可视化表示,又称为概念模型或分析对象模型,它专 ...
随机推荐
- 在nuxt中引入Font Awesome字体图标库
介绍 在element-ui框架中提供了一些图标样式,但是种类比较少,所以在这里提供一套更完善的字体图标库Font Awesome(官方文档),下面就开始介绍如何在一个nuxt项目中使用这套字体库. ...
- 【Hibernate】持久化对象状态及以及缓存
一.持久化类状态 1.1 三种持久化对象的状态 1.2 区分三种状态 1.3 三种状态对象转换 1.瞬时态 2.持久态 3.脱管态 4.持久态对象有自动更新数据库的能力 一.持久化类状态 1.1 三种 ...
- 跨域详解之jsonp,底层的实现原理
分享一下跨域,不仅是因为现在的工作中遇到的越来越多,而且在面试中也经常被问到. 那么什么是跨域呢,我们来看官方给出的解释:浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的(所谓同源是指,域名 ...
- Oracle中查询表中数据的上次更新时间
目前找到的是以下方式,但是这种方式在表的数据量比较大的时候效率会比较慢. select to_char(scn_to_timestamp(max(ora_rowscn)),'YYYY-MM-DD HH ...
- 【C++/html版 代码 : 暴力破解数字红包 】-- 只要有编译器或者,不看运气,用手速敲代码说话,多人合作效果更佳!
需求分析: 或者是更大的范围! 是不是很捉急!运气背点不就over了! C++版: #include <stdio.h> #include <stdlib.h> #includ ...
- 【转】Golang关于channel传递引用引发的坑
原文: https://studygolang.com/articles/12310/comment/17923 ------------------------------------------- ...
- 「Django」Xadmin应用
第一:命令安装xadmin2 pip install xadmin2 第二:setting.py中设置 INSTALLED_APPS INSTALLED_APPS = ( ... 'xadmin', ...
- 下载apache旗下Web服务器软件
apache官方网站:http://www.apache.org/ 1.百度搜索apache找到apache官网 2.进入apache官网打开旗下web服务器软件列表 3.进入apache旗下web服 ...
- stm32中阻塞模式和非阻塞模式 in blocking mode 与 in non-blocking mode区别
阻塞模式和非阻塞模式...... 我的理解是:阻塞模式就像是一个延时函数,当这个函数没处理完那么,所有的按照流程需要执行的代码都不会被执行,要等到这个延时完成,类似 平时看书上写的LED灯闪烁,用的d ...
- [2019牛客多校第三场][G. Removing Stones]
题目链接:https://ac.nowcoder.com/acm/contest/883/G 题目大意:有\(n\)堆石头,每堆有\(a_i\)个,每次可以选其中两堆非零的石堆,各取走一个石子,当所有 ...