风控模型开发全流程总结 - (一)

背景:进入风控领域快一年了,这段时间里get了很多新的风控知识,很有意思。由于最近接触的样本不均衡很严重,需要做重采样或者欠采样来平衡化样本,因此需要做模型预测概率校验。之前没有接触过,而后看了一些文档和材料,特写下这篇文章,算是当前对风控模型的小梳理,后续持续更新个人理解。

前言:当前个人接触的业务模式,更多的工作是cover在建立贷前a卡(授信评分卡)。当然贷中b卡(行为评分卡),贷后c卡(催收评分卡)也很重要,先立下一个flag, 先总结a卡,等后续对bc卡有了更深入的认知之后,再来总结。

首先:本人构建a卡的流程:

     1) 数据业务理解,定义样本好坏标签:基于当前产品积累数据,借助roll rate analysis和vintage analysis、fpd等资产质量方法论确定样本好坏灰定义,并圈选出相应的样本用于构建a卡评分卡模型。 此处可参考:https://zhuanlan.zhihu.com/p/81027037 

     2)数据探索分析:用户x特征数据时间回溯(资产质量部分的分析时间口径是放款时间,但样本时间是用户授信时间)

     3)数据清洗:包括缺失值(用户层面、特征层面)处理、重复值处理(少)、异常值处理、错误值处理

     4)特征衍生:有的x数据的有效性较低或者可用特征较少,需要自己从现有的特征中进行衍生构建

     5)特征变量筛选:

                                先分析特征的业务含义剔除一部分特征;

                                再psi剔除大于0.6的特征变量;

                                然后剔除iv小于0.01特征变量;

                                最后将剩余的特征变量进行共线性分析或者vif分析,剔除大于10的特征;

     6)样本设计和抽取策略:确定了全体样本之后,将每个月份的样本数据分层采样切分训练集、测试集,以及时域外的oot验证集。(分层采样需要保证训练集和测试集中坏账率一致)  【上述的iv分析也可等切分好训练集、测试集后再进行,或交叉进行】

    7) 模型变量分箱:分箱 - 先自定义分箱,再结合业务含义进行手工优化分箱。

    8)评分卡模型训练:借助逐步回归step wise的思想,训练评分卡模型(本质上是lr逻辑回归)。需要用到woe分数转换等思想

    9) 模型迭代优化:根据生成的模型报告、lift table、auc-roc曲线优化模型

   10) 模型评估常用指标: ks、 p、r、f1-score

   11)模型预测概率校准: 当模型不均衡且在样本构建时采用了重采样或者欠采样方式时,需要进行模型预测概率校准。

   12)模型违约概率误差校准

   13)模型部署上线、模型psi稳定性监控 (需要在时间序列上,对特征psi和模型分数psi进行监控,一般psi超过0.15,特征/模型稳定性变差;如果出现突变,需要检查依赖特征的数据情况)

科技赋能金融,是这个时代的主流。风险管理,是金融发展的必选命题。正如某cto谈及:未来需利用技术创造新商业,我们技术er需要抓住这个机会,来协同创造新的商业模式。

 

正文:

目录

一.风控模型概要

二.风控建模/算法工程师

三.速览评分模型搭建

四.细说评分模型搭建全流程

    1)A、B、C广义三种评分模型

    2)数据业务理解

    3)数据探索分析

    4)定义目标变量

    5)样本设计和抽取策略

    6)数据清洗

    7)特征衍生

    8)特征变量筛选

    9)模型变量分箱

    10)模型拟合

    11)模型评估常用指标

    12)模型预测概率校准

    13)模型违约概率误差校准

五.评分模型如何应用于决策

六.技术的升华之路

context:

01  风控模型概要

在社会数据厚度和纬度不断增加的当下,大数据与金融服务的跨界结合越加紧密,互联网技术在金融活动中的应用日益成熟,金融风险管理中信用评估模型体系内部也在酝酿着一场暗流式的较量。

       1.1.传统信用评分模型

传统信用评估模型的基本思想是比较借款人信用历史资料与数据库中的全体借款人的信用习惯,检查借款人的发展趋势跟经常违约、随意透支、甚至没有债偿能力等各种陷入财务困难的借款人的发展趋势是否相似。

传统信用评估模型的基本算法是运用线性模型中的逻辑回归模型对一些强金融属性(如借款人一个月内多次申请贷款次数)、弱金融属性(如借款人月收入余额)以及关联金融属性(如借款人申请借款时段)数据进行挖掘建模,最终实现借款人违约概率的排序和评分等级。

传统信用评估模型主要从以下5个方面考查用户的信贷资质

                                 

传统信用评估模型经过数十年的沉淀发展,技术相对成熟稳定,以美国FICO评分为例,曾促进美国房贷事业的飞速发展。但由于其依赖于金融数据本身,形成一个封闭式的模型闭环,在大数据快速发展的当下,个人消费者出现许多信息纬度,如电子商务、社交网络和搜索行为等,传统信用评估模型的封闭性不断受到挑战,模型解决风险评估的能力也越来越受限。

        1.2.大数据信用评分模型

大数据信用评估模型的基本思路是一切数据都和信用有关,在能够获取的数据中尽可能的挖掘信用信息。

大数据信用评估模型从大数据采集和大数据分析挖掘两个层面为缺乏信用记录的人挖掘出信用。

通过大数据采集技术,挖掘一个借款人的信用变得更加多元化,比如一个借款人缺乏银行信用卡的数据,但从借款人的航旅出行数据中挖掘出具备较好的信用资质,同样可以完成借款人的信用贷款。

通过多源化的信息采集,一方面传承了传统征信体系的金融决策变量,重视深度挖掘授信对象的信贷历史,另一方面能够将影响用户信贷水平的其他因素也考虑进去,如社交网络数据、用户申请信息等,从而实现深度和广度的高度融合。

                                          

网络数据为例,如IP地址、浏览器版本甚至是电脑屏幕分辨率,这些数据可以挖掘出用户的位置信息、性格、行为以及消费能力,有利于评估用户当下信贷风险。

大数据信用评估模型通过融合多源信息,采用先进的机器学习的预测模型和集成学习的策略,进行大数据挖掘。

首先,上万种数据源被输入到征信系统,其次,寻找数据之间的关联性并进行数据转换,再次,在关联性基础上将变量重新整合为较大的测量指标,每一种指标反映借款人的某一方面特征,如诈骗概率、长期或短期借款人的信用风险和偿还能力等,然后将这些较大的变量输入到不同的分析模型中,最终将每一个模型输出的结论按照投票的原则,形成最终的信用分数。

       1.3.小结

                        

在当下80%的银行和非银机构信用风险评估模型仍以传统信用评估模型为主,不仅因为其技术的成熟和模型的稳定,更因为现阶段大数据征信数据体量并不能完全开发大数据信用评估模型,对于大量极弱金融属性甚至毫无金融属性的数据进行特征关联和转换,对数据广度和厚度本身的要求往往高于模型算法,大数据采集和加工更应该作为基础建设去搭建。

在5G网络建设的大环境下,传统信用评估模型与大数据信用评估模型这一场较量我更相信结果是其乐融融,互补应用。

 

02  风控建模/算法工程师

风控模型开发人员,相较于数据分析、策略分析人员,对于统计分析方法、大数据机器学习算法都要有更深入的理解。也正是因为工作和业余时间需要花费大量的精力专研模型算法,自然,对于风险业务的关注就会少一些。这也是为什么,普遍做风控模型的工作人员,业务经验能力相对欠缺。

模型开发方向,从技术算法的专业度,分成风控建模工程师和算法研究员。从字面意义就可以发现,风控建模工程师工作核心还是以风控模型的开发为主,更多的工作落脚点在构造有效特征,应用一些模型算法进行数据训练和测试。

风控建模工程师普遍只会花少量时间研究算法本身,甚至不会花时间去研究最新算法。逻辑回归、随机森林、XGboost等主流常规算法,是他们建模首选。而对于算法研究员,更多的精力在研究前沿算法,通过结合自家机构的物理场景,判断是否在未来时期内业务落地应用。

风控建模/算法工程师,从业务角度比较,普遍建模工程师比算法研究员更熟悉自家信贷产品的业务,因为其在构建风控特征指标过程中,很重要的衡量标准是其开发的指标是否具有业务意义,但对于业务和风险的整体理解,也仅止于局部,难以与风控策略分析人员相比较。

 

03  速览评分模型搭建

风控评分模型的开发流程已经标准化,本文先通过速览形式,带读者朋友们了解一下评分模型搭建流程

     3.1. 样本准备

在正式开始建模前,首先需要搞清楚一点:产品的目标客群是怎样的?建成的评分卡是要用在哪些人身上的?有哪些样本是不适合拿来建模的?举个例子,如果准入规则直接拒绝了25岁以下的客户,那么对应建模时也应该筛选掉这部分样本(非准入客群)。又或者,有一些客户虽然申请了额度,但是并未真正申请放款,那么这些无行为表现客户也不应该包含在建模样本之内。

     3.2. 好坏定义

相信很多没做过建模的读者朋友也听说过“好客户”、“坏客户”的说法,但其实在这其中,怎样的客户算“好”,怎样的客户算“坏”都是很有讲究的。这个好坏定义首先和评分卡真正关心的客户类型有关,比如说一个反欺诈评分卡的“坏客户”定义可能是首逾30天以上(FPD30+),而审批评分卡的定义可能是M3+。而具体逾期多少天算“坏”,就要进行Roll Rate分析了。

                      

 

     3.3. 观察期和表现期

观察期是指用于生成客户特征的时间区间,用于收集信用历史和行为特征等信息,以提炼能预测未来信用表现的预测变量。

观察期过长可能导致大量客户无法获取相应时间长度的数据,大批样本不能进入模型;观察期过短会导致样本无法生成足够多有效的时间切片变量。表现期是对观察点上客户表现进行监控的时间周期。这些帐户根据截止到表现点的表现被分类成“好”、“坏”。表现期需要有足够的长度,从而保证样本群体分类的稳定性,使客户的逾期行为充分表现出来。但也不能够过于长,即使可获得很长时间的历史数据,还需要在完整性(有多少个坏样本需要捕捉)和数据质量之间保持平衡。

      3.4. 细分分析

有的时候,如果面对各种各样的客户通通使用同一张评分卡,可能效果并不是那么的好;但是如果对不同类型(某种维度意义上)客户都使用不同的评分卡,过多的评分卡不好管理,不同评分卡之间得出的结果有时也不具备可比性。

因此,需要找出最佳的群体分组,使得以此为基础建立的一组评分模型可使整个评分系统的预测能力最大化。当然,如果是在样本量比较少的情况下,这一步就可以跳过了。

     3.5. 数据准备

数据准备的过程包括数据清洗、缺失值处理、离群值处理等等,目的是让数据足够“干净”,而不会因为其中的一些乱码或格式问题影响后续建模。在逻辑回归模型中,合理的缺失值和离群值都是可以不做处理的,因为在进行分箱和WOE转换时可以解决掉这些问题。

其中合理指的是数据本身就是缺失的,比如在填写某些非必填信息的时候客户没有填写导致的缺失,而不是像第三方数据覆盖率不足等原因导致的缺失,类似这种本不应该缺失只是因为各种原因没有获取到数据而导致的缺失,是应该进行缺失值处理的。在这一步,可以筛选掉一部分缺失率过高的变量。

      3.6. 变量衍生

变量衍生是整个建模过程中最重要的一个环节,往往在同样的数据和维度条件下,谁的评分卡模型效果更好,看的就是这一步。变量衍生有各种各样的方法,比的就是谁的脑洞更大。可以简单粗暴的根据业务理解进行变量的组合,生成交叉变量,比如说,不同年龄段的客户的婚姻状况可以给予不同的打分标准。又或者,可以利用一些机器学习算法,比如xgboost,从数据的角度来进行变量衍生。

      3.7. 训练集和验证集

在真正进入建模过程前,还需要预留出一部分样本用作模型的验证,这是为了防止模型的不稳定:在训练集上表现良好、在验证集中却无法很好的预测。然而只要手气足够好,随机抽取验证样本时足够“随机”,训练集和验证集各指标的分布足够近似,验证集的表现一般不会和训练集有太大的差距,但这并不一定代表模型就是稳定的了。

因此,最好的做法是再预留出一部分时间外测试集,选取与建模样本不同时间段的样本再对模型表现进行验证。比如,如果选取的审批时间在1-3月的客户作为建模样本,那么可以将4月的客户作为测试样本测试模型的效果。

      3.8. 分箱和WOE转换

在进行变量衍生后,我们可能会产生好几百上千个变量,有连续性变量也有分类型(字符型)变量。然而,字符型变量是没有办法直接作为入参参与逻辑回归拟合的,而为了使自变量和目标变量呈正相关的关系往往会对数值型变量也进行分箱和WOE转换。毕竟如果按照原数据入模,会导致评分卡非常不稳定,同时变量的取值和得分的关系也会变得非常的杂乱无章,失去业务上的可解释性。另外,在这一步,根据每个变量的IV值,也可以筛选掉一部分区分能力较弱的变量。

      3.9. 共线性检验

共线性检验也是筛选变量过程中非常重要的一步。共线性指的是模型的变量之间存在较高的相关性,某一个变量可以被其他一部分变量所解释。共线性高

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值