序言:
随着新客的获客成本越来越高,贷中客户的管理越来越受到放贷机构的重视,其中包括用户流失预测,营销响应预测,逾期风险预测,额度利率管理等。
B卡,又称为行为评为卡,它的作用对象是老客,根据其在账户使用期间所产生的各种行为,来预测未来风险或表现的一种评分模型。本文以小额信贷分期产品为例,介绍B卡中逾期风险预测模型(下面以B卡代称)的开发流程。

本次整体的内容框架如下,我们更会在知识星球上为大家提供本次内容所涉及的实操数据与代码,带领大家领略整个逾期风险预测模型(B卡)内容,整体目录如下:
PART 1.B卡的业务背景
1.1.小额信贷分期场景的介绍
1.2.B卡适用的产品和客群
1.3.B卡的应用场景
PART 2.B卡的模型设计

PART 3.B卡的特征开发

PART 4.B卡模型开发
PART 5.实操—N+逾期率分析和vintage分析(数据集+代码内容)

Part1.B卡的业务背景
1.小额信贷分期场景的介绍
在小额分期场景中,用户的生命管理周期分为贷前,贷中,贷后三个阶段,每家公司对于这三阶段的定义有些差别,本文的定义如下
1)贷前:机构对新注册的用户进行授信审批,给予一个初始信用额度(授信阶段),之后用户进行第一次金额支用,机构对其进行支用审批,这笔支用订单包含了金额,利率,期限等属性。用户支用成功后会生成一张还款计划表(如下图所示),该还款方式为等额本息,即还款期内,每月偿还相同的金额(本金和利息),按此还款计划,本金为10000,还款期限为12期,总的利息为2055.36,每期需要偿还1004.61(包括本金和利息),此阶段的用户被称为新客,很多机构将新客的授信,支用环节称为贷前。

2)贷中:新客转化为老客后,就进入到了贷中阶段,每家机构对老客的定义不同,有些把复借的作为老客,有些则要求新客还款N期后才转为老客。小额信贷分期属于循环贷产品,即在额度允许的范围内,用户可支用申请多笔订单,用户申请新的一笔订单之前,机构会参考其历史账单的还款行为,若存在在逾未还账单,则用户势必会被拒绝,该决策考虑的因素有两个:
一是及时止损,老订单的损失还未挽回,新订单大概率会造成进一步损失,
二是用户未还清账单还来借款,说明其现金流出现问题,很可能在借新钱还旧债。老客的支用,额度管理,营销转化、流失预警和挽回都属于贷中阶段。
3)贷后:新老客的账单出现逾期,即进入贷后的催收管理,催收员会根据不同的逾期程度,采取不同的催收措施。

2.B卡适用的产品和客群
1)B卡适用的产品为还款周期长且为循环授信的产品,如果周期太短(7天/1个月),像几年前的714产品,用户风险的变化较小,B卡与A卡没有太大区别,对于循环授信,在贷前我们掌握用户的信息较少,所以会给个初始额度,但到了后面用户产生了逾期,还款的行为,就可以对用户的额度做提额降额的处理。
2)B卡适用的客群为老客,老客具有足够长的申请还款记录,本文中老客的定义为:至少有一笔结清的订单。

3.B卡的应用场景
1)贷中支用审批,用来评估未来的逾期风险,可放在风控决策流的最前端来过滤最坏的那批用户,或者跟三方模型做交叉使用。
2)权益管理,权益包括利率,期限,额度,例如对低风险用户可进行提额,降低利率的操作,高风险用户则降低额度,提高利率,实现差异化管理。
3)运营风险定价,在前端运营层面,业务方可根据B卡分做用户的风险等级划分,例如按风险由低到高分为R1-R5 5个等级,在资金不足的时候,只准入R1,R2的用户来提高资金的利用率。

Part2.B卡的模型设计
一.建模的样本维度
可选择的样本维度有3种:
1.订单维度:每个订单就是一条样本,订单的申请时间(精确到天)就是其观察点,观察点之前的N天(一般设为1年或2年)为观察期,取观察期内该用户的行为特征。观察点之后的N天为表现期。这种方法的优点是一笔订单一个观察点,相当于对同个用户在不同的时间点进行观察,观察的比较全面,且取出来的样本量比较充足,但缺点是同一天的订单观察点相同,这样算出来的特征是相同重复的,样本之间不满足独立同分布条件。
2.用户维度:一个用户就是一条样本,如果用户有多笔订单,则选择其中一笔订单的申请时间作为观察点,这种方法把样本规约到了人的维度,更贴合B卡的使用场景,但缺点是观察点比较难选择,且不能对同一用户在不同的时间点进行观察,损失了很多信息,另外样本量会比较少。
3.用户+天维度:这种方法结合了上面两种的优点,由于B卡是用T+1的数据,所以用户在当天上午和下午跑出来的分是一样的,那在同一天里若申请了多笔订单,则视为同一条样本,这样就避免了重复样本的问题,且能观察用户在不同时间点的表现,本文的建模维度就是“用户+天“。

二.标签Y,观察点,观察期,表现期的定义
建模的样本维度确定好后,观察点就是订单的申请时间(天),观察期一般选1年或2年,下面就是如何定义合适的目标变量Y,即怎么确定好用户和坏用户的定义,对于小额分期场景,操作步骤为:
1)通过N+的逾期率分析确定用户的好坏程度
2)通过vintage分析确定合适的表现期
N+逾期率分析的步骤为:
step1:提取一段时间窗口内已到期的还款计划数据,最好包含至少3期的数据
step2:计算每期0+,3+,5+,7+,15+,30+,60+,90+的逾期率,B卡中算逾期会考虑在逾和逾期已还两种情况,逾期率还分订单维度,人维度和金额维度,以人维度举例:N+天的逾期率 = 发生过N+天逾期的用户数 / 出账用户数
step3:观察每期N+逾期率的滚动变化,因为用户不断在回款,N+的逾期率会随着天数增加而逐步降低,直到一个时间点逾期基本不会下降了,这个时间点就是用户的好坏程度。
下面这张图是模拟的逾期率变化,可以看到第1期的0+到7+的逾期下降较快,从7+开始逾期下降趋于平缓,直到30+后,逾期下降的空间很小了,说明用户在逾期30天后,很难被催回来,从1期到12期基本都是这个规律,所以可以将坏用户定义为:最大逾期天数>=30天,另外为了让模型有更好的区分能力,需要将用户好坏界限尽可能清晰,所以好用户可以定义为:最大逾期天数=0天或者<=3天(还款宽限期)。

那对于一个12期的产品,有些人在前3期就表现为了坏用户,有些人到后面几期才表现出来,为了抓住更多的坏用户,同时尽可能取时间近一点的样本(减小建模样本和未来样本的差异),我们需要选择一个合适的表现期,这时候要用到vintage分析,vintage分析的步骤为:
step1:按照放款月取出一段时间内的还款计划数据,最好包含至少3个月的数据,且到期期数至少在9期以上
step2:以30+作为资产质量指标,计算每个放款月在+2M,+3M…+13M的坏账率,坏账率一般指金额维度,例如+2M的坏账率 = +2M最大逾期30+的订单本金 / 当月总放款本金,就是说过了2个月,第1期已出账30天以上,若第1期账单出现逾期30+,则这个订单被标记为坏账。可以发现每个M的坏账率分母都是一致的,随着时间推移,用户风险暴露的越来越彻底,坏账率会不断升高。
step3:绘制vintage曲线,曲线是单调递增的,最终达到一个平稳的水平,趋于平稳时的那个拐点就是合适的表现期。
下面是模拟的vintage分析表和曲线图,可以看到不同月份的资产到了+9M后坏账率趋于平稳,说明用户的表现期是9个月,不过对于小额分期产品,业务和客群相对不太稳定,很多机构会将表现期缩短来取近一点的样本。或者直接根据产品期限拍脑袋决定,例如6期产品表现期即为3个月,12期产品为6个月。

通过以上的分析,我们将标签Y定义为:
坏用户:9期内最大逾期天数>=30天
好用户:9期内最大逾期天数<=3天

三.样本选取和分群
由于风控策略在不断调整,逾期率也在不断变化,所以最好选择跟目前风控松紧程度差不多的一段时间窗口,在这个时间窗口内客群质量,逾期要稳定一点,并且根据上述的好坏定义,提取的样本要满足表现期9个月,样本数量一般要求2万以上。另外有些机构的产品期限是可选的,那就有3/6/9/12/24期的样本,这时候可以做一下样本分群,把3,6期合起来做短期产品模型,9/12/24合起来做长期产品模型。

四.模型的评估方式
1)泛化能力,将样本分为训练集,验证集,OOT(时间外样本),比较验证集的KS/AUC和OOT的差异是否较大,模型在验证集上表现好,在OOT上表现也好说明有不错的泛化能力。
2)在时间上的稳定性,样本量充足的情况下,将OOT按时间顺序分为N个样本计算KS/AUC,观察在时间维度上KS/AUC是否稳定。
3)低分段/整体的排序性,若模型当作单规则卡掉最坏的用户,则要看低分段的Lift是否满足要求,若模型放在决策最后环节挑出好用户,则要看整体的Lift排序性是否单调变化。

Part3.B卡的特征开发
B卡用到的数据为:
1)本平台的历史行为数据:是B卡特征的主要组成部分,根据业务逻辑分为申请行为,放款在贷行为,逾期还款行为等,特征构造的方式参考业内常用的时间窗口特征范式:时间窗口+行为维度+统计对象+统计函数,生成统计类,趋势类,占比类,稳定性类的时间窗口特征,例如近360天发生逾期7天以上的次数,近90天按时还款的期数占到期期数的比例。这里要特殊说明一下,不要衍生出在逾类的特征,因为用户如果有在逾账单,是在跑风控前就会被驳回的。
2)个人基本信息:性别,年龄,收入,职业等。
3)三方数据:例如多头,共债类数据,三方模型分等,不过考虑到成本,一般很少用到三方的数据
在衍生申请类,放款类,逾期还款类这三种特征时,要注意怎么算近N天这个时间窗口,申请类特征要拿申请时间和观察点比较算近N天,放款类要拿放款时间和观察点比较,逾期还款类是拿到期时间和观察点比较。

下面我们整理了一些特征明细供大家参考:

Part4.B卡模型开发
这里以lightgbm算法开发为例进行介绍:
1.数据集的划分
首先将样本按时间顺序分为建模样本和OOT样本,比例为8:2,OOT的样本量至少要2000以上…(详情内容可以参见知识星球详版内容)
2.特征筛选
B卡特征一般有几百个甚至上千个,且特征之间共线性较高,所以筛选的重点在于将那些弱特征和共线性很高的特征做筛除。相关步骤为:缺失率筛选/方差筛选/共线性筛选等相关内容

另外相关内容还包括:
3.模型训练
4.模型评估
5.模型上线
6.模型使用和迭代

此部分内容已更新到知识星球平台,详情如下:

另外本次的内容中,我们还给大家提供了一个实操内容,分析贷中评分卡的逾期率跟vintage相关的分析内容:
Part5.实操–N+逾期率分析和vintage分析:
case1:N+逾期率分析
数据概况:

相关代码示例:

caes2:账龄分析
数据概况:

这也是一张12期产品还款计划表(vintage_data.csv),包含订单id(order_id),期数(period),放款时间(loan_date),到期时间(due_date),还款时间(repay_date),放款本金(loan_amount)。相关详情可以查看知识星球内容。

本次实操的内容(数据集部分),可以移步至知识星球平台参考本周的【星球打榜赛作业】,代码答案完整详版内容。

~原创文章

end

手把手实操系列|贷中逾期风险预测模型开发流程(上)相关推荐

  1. 手把手实操系列|贷后迁徙率模型开发(上篇)

    序言: 很多关注番茄风控的老铁们都知道,番茄风控的开篇就是从系统性的贷后评分卡开始的,关于贷后相关的内容,番茄不敢说是元老级别的公众号,但再怎么说也是先行者,之前的文章比如这些经典内容,您是否都看过了 ...

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

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

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

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

  4. 不同网段的局域网怎么互通_华为实操系列 | 交换机在局域网中是怎么应用的,看完你肯定懂了!...

    编辑 | 排版 | 制图 | 测试 | ©瑞哥 此文用时0小时48分钟,原创不易,坚持更不易,希望我的每一份劳动成果都可以得到大家的一个[在看] 交换机在局域网中的应用 交换机在局域网中的应用分为两种 ...

  5. 实操信贷场景中的反欺诈模型

    今天的文章,关于反欺诈模型的实操,之前有跟大家分享过相关内容,部分反欺诈的领域的童鞋感觉内容比较有帮助,今天就该内容进行讲解.本文介绍的产品适合在消费零售信贷及现金场景贷中的中短期产品,其中涉及的变量 ...

  6. 华为交换机实操系列(资源)

    一.华为实操系列 | 怎样远程登录设备–telnet方式 1.应用场景 用户可以通过telnet远程登录设备,对设备进行远程管理和维护. 用户希望使用AAA验证方法登录远程设备,进而可以方便地对其进行 ...

  7. 【直播回顾及资料下载】小程序云应用入门实操系列课程第一讲...

    直播详情:小程序云应用入门实操系列课程第一讲:https://yq.aliyun.com/articles/698244 直播时间:2019年4月16日 20:30 直播专家: 白宦成 - Linux ...

  8. 华为昇腾师资培训沙龙·南京场 |华为昇腾 ACL 语言开发实践全程干货来了!看完就实操系列...

    自今年疫情以来,AI 技术加速进入了人们的视线,在抗疫过程中发挥了重要作用,产业发展明显提速,我国逐步走出了一条由需求导向引领商业模式创新.市场应用倒逼基础理论和关键技术创新的发展道路,AI 人才的争 ...

  9. 岩土工程渗流问题之有限单元法:理论、模块化编程实现、开源程序手把手实操技术

    有限单元法在岩土工程问题中应用非常广泛,很多商业软件如Plaxis/Abaqus/Comsol等都采用有限单元解法.尽管各类商业软件使用方便,但其使用对用户来说往往是一个"黑箱子" ...

最新文章

  1. 基于模糊聚类的色彩迁移算法
  2. tensorflow lstm 实现 RNN / LSTM 的关键几个步骤 多层通俗易懂
  3. js文件的装载和执行
  4. gcc build a project
  5. adb 测试工作中的总结
  6. 【机器学习】机器学习模型解释神器:Shapash
  7. 简述angular中constant和$filter的用法
  8. launchMode
  9. 编写高质量代码的50条黄金守则
  10. 牛客 —— 湖南大学第十六届程序设计竞赛(重现赛)
  11. 80 行代码爬取豆瓣 Top250 电影信息并导出到 CSV 及数据库
  12. C# 编译器选项 /platform(指定输出平台)32位程序运行到x64平台的问题
  13. 光功率 博科交换机_博科光纤交换机zone划分命令方法
  14. 如何为人员办理离职停保
  15. 社会学转计算机博士,科学网—记我国社会计算学科第一位博士 - 王帅的博文
  16. 积木创意:APP开发需要注意哪些事项?
  17. 好评率超高的9个公众号,值得收藏
  18. C# 利用 Spire.PDF 实现.pdf转图片
  19. arduino和stm32哪个更好学?
  20. win32 010 使用masm32

热门文章

  1. 层次分析法实例:选择旅游目的地
  2. java-net-php-python-jspm药品一体化管理系统演示录像2019计算机毕业设计程序
  3. apktool工具在kali中的安装步骤
  4. 全国各省10米分辨率的土地利用数据的制作与分享
  5. 计算机缺少更新,电脑更新系统出现文件丢失或者损坏无法安装怎么办 | 学客联盟...
  6. 用 SLF4j/ Logback打印日志
  7. 水清冷冷:PSCC2019/PSCC2020安装教程和学习技巧(附工具)
  8. 抖音小店为什么没生意?万顿思教育
  9. 太秀了!用Pandas秒秒钟搞定24张Excel报表,还做了波投放分析!
  10. win10 tensorrtx yolov5使用方法