做过风控策略或模型的同学都知道,离线开发规则或模型后需要对其效果做评估,来决定是否可上线使用。那上线部署后,我们也需要对线上的规则模型做多角度的分析评价,来决定规则的下线替换,调松调严等。本篇文章主要介绍的就是如何做线上评估,以及用代码来实操一下评估指标的计算过程。

本次文章的目录大纲如下:
第一部分:线上策略评估阐述
1.策略的稳定性评估
1)拒绝率在策略稳定性指标上的应用
2)PSI指标在策略稳定性指标上的应用
2.策略在风控流程上的权重评估
3.策略的区分能力评估
4.用户在模型分分段上的迁移分析
第二部分:代码实操–每日PSI趋势分析&模型分分段迁移分析

第一部分. 线上策略评估阐述
风控策略一般分为进件规则,严拒规则,可变规则,评分规则。严拒规则指的是黑名单及反欺诈规则,和进件规则一样属于信贷机构完全不能容忍的规则,这两类规则调整频率较低,命中人群风险高。可变规则和评分规则则属于调整频率比较高的一类,例如多头规则,信用历史规则,信用模型分等(模型也是一种规则),本篇文章也是主要介绍这两类规则的评估方法。
1.策略的稳定性评估
策略一旦上线后,我们就要关注它的稳定性情况,稳定性评估主要有两方面的作用,一是来评估离线开发策略的样本跟线上样本的分布偏差,二是评估在时间段上拒绝率及策略指标分布的变化,来反映申请客群的偏移情况。
评估指标:拒绝率,PSI
1)拒绝率在策略稳定性指标上的应用
拒绝率:被策略拒绝的样本数 / 触发该策略的样本数
一般策略刚上线时,会进行空跑(只触发,不拒绝),空跑一两天后取出线上策略的结果,与离线样本的结果进行比对,看策略指标分布的差异以及在拒绝阈值下线上与离线的拒绝率差异,如果比对结果差不多,说明离线模拟的结果与真实结果差异不大,策略可正式启用。
策略正式启用后,需要对其拒绝率做每日实时监控,如果在一段时间内拒绝率波动明显,需要排查引起波动的原因,可能是策略用的变量不稳定,或者是申请端客群变化导致。

2)PSI指标在策略稳定性指标上的应用
PSI:衡量变量或者模型分在分段上的稳定性
拒绝率只能反映拒绝阈值下的稳定性,而PSI能表现策略用到的变量或模型分整体分布上的变化。PSI计算的是“实际分布”和“预期分布”之间的差异。在计算离线和线上样本的PSI时,离线是预期分布,线上是实际分布。而在分析时间段上(按日维度)PSI变化时,可以用策略上线后第一天的样本作为预期分布,后面时间的样本作为实际分布(都跟第一天样本做对比),这样从第二天开始,每次算PSI的预期分布(参照)都是一致的,这样天与天之间做PSI比较才合乎逻辑。
对于模型分规则,PSI的评估尤为重要,如果离线与线上的PSI过高,说明建模样本不能近似代表线上样本,这种情况模型需要重新开发。如果时间段上PSI过高或者波动明显,则需要从入模变量层排查原因。PSI无法反映偏移的细节,例如一个模型分PSI比较高,但从PSI的值上无法看出是往高分段还是低分段偏移,这就需要观察分布偏移情况才能获知了。

2.策略在风控流程上的权重评估
在讲权重评估之前,先介绍下策略架构的两种方式,并行跑策略和串行跑策略。
下图是并行跑策略的方式,规则之间是并行的关系,用户申请时会把所有的规则跑一遍,其中一条规则拒绝则风控拒绝。规则之间会有交叉拒绝的情况,这就涉及到一个指标叫不交叉拒绝率,来衡量只被某个规则的拒绝情况。假设申请量为100,风控拒绝50个,其中A规则拒绝30,B规则拒绝20,都命中两个规则的有10个,则规则A的不交叉拒绝率为(30-10)/100=20%,B规则为(20-10)/100=10%。所以并行策略中,计算不交叉拒绝率要考虑到交叉拒绝的情况。

下图是串行跑策略的方式,用户跑规则有先后顺序,先跑规则A,规则A通过后跑规则B,直到所有规则都通过则风控通过,如果在规则A就被拒绝,后面的规则就不跑了。串行这种方式规则之间不存在交叉情况,所以不交叉拒绝率直接等于:被策略拒绝的样本数 / 触发该策略的样本数。

权重是来评估策略在逾期控制上的贡献度,贡献度大小从两方面来衡量,一是精确率,来评估策略识别坏用户的精准度,精确率=被拒的坏样本数量 / 被拒样本数量。二是刚才提到的不交叉拒绝率。精确率高且不交叉拒绝率高的策略权重就大。

精确率的计算公式中分子是被拒样本中坏的数量,但线上被拒样本是没有贷后表现的,那怎么从通过样本中衡量精确率会在下一part中讲到。现在假设风控流程总共只有A和B 两个规则,且是并行跑的方式,两个规则的精确率都是差不多的,那需要根据不交叉拒绝率来评估权重,申请样本为50个,A规则拒绝10个,B规则拒绝5个,两个规则交叉拒绝5个,则A规则的不交叉拒绝率为(10-5)/50=10%,B规则为(5-5)/50=0%,说明A规则的权重更大,且B规则是冗余的,因为B规则拒的人也都被A拒了,这种情况可以考虑把B规则下线掉。从这个例子中可看出权重除了评判策略的效果,也能对剔除无用的规则做参考,来降低策略框架的复杂度和维护成本。

3.策略的区分能力评估
策略上线一段时间后有了表现样本,需要对其做区分能力的评估。上一part提到策略上线后无法计算真实的精确率,这时候就可以用排序性来评估。因为可变规则和模型分规则用到的都是连续型变量,基于信贷业务的可解释性,我们通常要求变量在分段上badrate是单调变化的,那么在变量通过分段上的排序性可代表它的精确率。如果排序能力下降,说明精确率变低,区分能力变差。
另外开发策略时我们一般用离线样本评估效果然后上线使用,所以评估的角度一是看线上与离线的排序性对比,二是观察在时间维度上排序能力的衰减趋势,评价衰减趋势时要有一个量化指标,对于可变规则中的变量可用IV来衡量,模型分规则用KS。
以‘按时还款订单数占比过低’这条规则为例,下图是离线评估的结果,可以看到排序能力尚可,我们定拒绝阈值为<=0.675。
离线评估结果

上线一段时间后取出有表现的样本,并按离线分段的逻辑分组观察其排序性,可以看到badrate仍然呈单调递减趋势,说明这条规则的排序能力并未衰减。

线上评估结果

对于计算模型分的KS,线上的样本由于都是在拒绝阈值之外的,所以算出的不是真实KS,通常情况下,模型上线后,相对于离线OOT的样本,KS都会下降。这是正常的现象,说明模型在决策中是生效的。举个例子,下图是OOT样本的KS:

图:OOT的KS分段结果
设定模型分拒绝阈值为<=636,上线一段时间后计算通过样本的KS,能看到KS比OOT的要低一些。虽然线上算的KS不是真实的,但也能衡量模型的区分能力,我们可以按时间维度(按周/按月)计算线上的KS,来反映模型排序能力的衰减情况,如果线上KS整体呈下降趋势,就该考虑优化一版模型来做替换了。

图:线上KS分段结果

4.用户在模型分分段上的迁移分析
在实际业务中我们会关注一个用户风险等级的变化趋势,今天来的这个用户是高风险等级,那一周后他再来申请,是迁移到哪个等级上了呢?这时候就可以用模型分分段上的迁移分析来量化。除了观察用户变化,迁移分析也可以反映在时间维度上模型对好坏识别的鲁棒性,试想一下今天来的用户中10%是处在最低分段,并且被风控拒绝。
一周后这10%又来借款,正常情况下这其中大部分人还是会处在最低分段,如果很多人反而迁移到了高分段,被风控通过,那可能会造成一定的坏账损失。所以迁移分析也是评估模型效果的一种方法。在后面的实操环节会介绍如何实现迁移分析。

第二部分. 每日PSI趋势分析&模型分分段迁移分析的python实操
1.每日PSI趋势分析
这里计算的是模型分的PSI,首先导入模拟的数据:

定义计算PSI的函数,对于连续型变量使用的是等频分箱

以首日作为预期分布样本,计算后面每日的PSI,并绘制趋势图

2.模型分分段迁移分析
还是用刚才那份模拟数据,这里是按周为维度计算迁移率,取用户在观察周的第一笔订单模型分作为参照分数,取在表现周第一笔订单分数作为迁移后的分数,并将模型分分段,分为5个风险等级,按照风险从低到高分为R1 — R5。

定义计算迁移结果表的函数:

计算从20周—》21周的迁移情况:

计算从21周—》22周的迁移情况:

从这三周的迁移情况中可以看到,90%的R5(高风险等级)用户一周后仍保持在R5,几乎不会迁移到R1(低风险等级),70%左右的R1用户一周后还是保持在低风险状态,剩下的人会恶化到R2和R3,处于灰度风险等级的用户(R2,R3,R4)50-60%会保持原状态,剩下的会往风险高或者低的状态迁移。说明模型在周维度上对于好坏用户的识别有着不错的鲁棒性。用户的迁移情况也符合业务预期。

本文中所涉及的代码跟数据集,各位星球童鞋可以到知识星球平台查收,内容也已经同步至本周星球打榜赛的作业,大家记得再去好好查看学习相关内容。实操完此份资料,真正手把手教会您线上策略评估。

另:更多风控知识及相关资讯,可关注:
《第四期全线条训练营》
训练营涉及41个实操案例,覆盖56个知识点:

~原创文章

end

实操长文|评估风控策略效果(全)相关推荐

  1. 手把手实操系列|信贷风控中的额度管理和额度模型设计

    序言: 如今的个人信贷行业步入合规发展阶段后,额度管理和差异化定价成为金融机构是否能最大化盈利的核心竞争力,其中额度管理包括贷前阶段的授信额度,贷中阶段的提额,降额等,本文将着重讲解这两个阶段的额度设 ...

  2. excel 两组数据交点_如何在百万级的数据里找到别人正在赚钱的项目?【实操长文】...

    前不久,我在好友的知乎星球看到了这篇知乎文章,后面又在生财有术星球看到了原作者小曾分享.更巧的是,小曾也在白杨SEO星球嘉宾令狐峰的极客微信群里,所以就这样认识了. 君言这篇文章,我详细看过了,真心很 ...

  3. 抖音小店无货源店群、实操分享,“4000字最全讲解!

    2020年5月份开始做抖 音小店无货源项目,从最开始的无货源模式也慢慢过渡到了现在有货源模式(有货源并不是说自己囤货,自己发货,而是有稳定的供应链资源,有足够的利润空间). 目前团队自运营抖 ~音小店 ...

  4. 理论+实操:防火墙NAT策略

    文章目录 一:NAT概述 1.1 NAT分类 1.1.1 NAT No-PAT 1.1.2 NAPT(Network Address and Port Translation,网络地址和端口转换) 1 ...

  5. 手把手实操|深度剖析电商贷款风控相关细节(电商贷模型)

    序言: 在电商领域中,一直都有这样的场景:对于电商企业而言,资金短缺是经常出现的问题,尤其是在目前疫情状况下,经济下行,营业额逐渐降低,现金流紧张,企业这时就会考虑去借贷融资. 有需求就有供给,目前许 ...

  6. 实战篇|风控策略效率的测试、调优与评估

    信贷风控策略调优包括通过率调优.逾期率调优,这些做过策略的童鞋肯定都清楚.风控策略的内容,番茄风控之前的内容可谓是丰富.齐全,具体可翻看之前的内容: ①贷前决策部署与策略调优(全) ②一文了解下调优后 ...

  7. 全面了解风控策略体系

    模型和策略的开发是一个系统工程,这其中需要有业务经验.统计理论.算法运用.和数据认知,是一个不断反思,不断积累经验的过程.沙滩上建不起摩天大楼.扎扎实实的基本功永远有价值,永远不会过时. --余旭鑫博 ...

  8. 风控策略的开发与场景应用

    近期一段时间,番茄风控给大家分享了两次关于策略探索与开发的主题课程,干货满满,精华尽出,番茄课堂分别对应: 第78次课<信贷场景多维特征交叉策略的实战分析> 第79次课<信贷风控策略 ...

  9. redis 集群 实操 (史上最全、5w字长文)

    文章很长,建议收藏起来慢慢读! 总目录 博客园版 为大家准备了更多的好文章!!!! 推荐:尼恩Java面试宝典(持续更新 + 史上最全 + 面试必备)具体详情,请点击此链接 尼恩Java面试宝典,34 ...

最新文章

  1. 测试1111111111111111111
  2. 解读 Q_D, Q_Q 指针
  3. .NET开发的一些积累
  4. 用ASP.NET 重绘TabControl代码
  5. 从黄昏到夜暮 2021-04-15
  6. c语言编程思维训练50题,c语言逻辑思维训练题一
  7. ADF_Tutorials系列17_ADF Faces_使用布局组件
  8. Some Principles
  9. 【TensorFlow】CNN
  10. Harbor 2.1发布,工程师的发际线有救了!
  11. TamperIE - 一个小巧的XSS漏洞检测辅助工具
  12. lsass.exe和smss.exe病毒专杀工具——即磁碟机病毒专杀工具(转载)
  13. yolo系列的head模块
  14. log4j2的一些配置,为某个类某个方法单独文件打印日志,定时删除日志和springboot的logback日志单独类打印
  15. 开关电源布局布线总结
  16. 华为云classroom Java练习
  17. 二十四节气-小寒。文案、海报分享,小寒料峭 年味渐浓。
  18. 区块链之旅(四)双花攻击、博弈论、Hash函数、数字签名
  19. 从传统投放走向程序化购买, 浅谈户外广告发展前景
  20. 千兆上网行为管理路由评测

热门文章

  1. php扩展拦截请求,PHP的拦截器实例分析
  2. tomcat源码分析_CVE-2020-9484 tomcat session反序列化漏洞分析
  3. 嵌入式linux下网卡设备驱动与网络协议栈的设计实现.pdf,嵌入式系统的通用网络驱动模型设计与实现.pdf...
  4. 高校园区网络建设方案——东北师范大学
  5. POJ 3710 Christmas Game(树删边博弈)
  6. javascript中字符串常用方法
  7. 如何为网站进行安装SSL证书
  8. 用screenfetch显示带有酷炫Linux标志的基本硬件信息
  9. ThreadPoolExecutor的应用和实现分析(中)—— 任务处理相关源码分析 线程利用(转)...
  10. javaSE学习 访问控制