3 风控建模概述
学习目标
知道信贷审批业务的基本流程
- 知道ABC评分卡是什么,有什么区别
- 知道风控建模的流程
- 掌握评分卡模型正负样本定义方法
- 知道如何构建特征,如何评估特征
1 互联网金融风控体系介绍
信贷审批业务基本流程
- 四要素认证:银行卡持有人的姓名、身份证号、银行卡号、手机号
互联网金融风控体系主要由三大部分组成:
用户数据:用户基本信息、用户行为信息、用户授权信息、外部接入信息。
数据采集会涉及到埋点和爬虫技术,基本上业内的数据都大同小异。 - 免费的运营商数据
- 安卓可爬的手机内部信息(app名称,手机设备信息,部分app内容信息)
- 收费的征信数据、各种信息校验、外部黑名单之类的
- 特定场景的现金贷和消费金融会有自有的数据可供使用
- 比如阿里京东自己的电商数据
- 滴滴的司机数据、顺丰中通的快递数据
- 用户基本信息(联系人,通讯录,学历…)
- 用户行为信息(操作APP时的行为,注册,点击位置…)
- 用户授权信息(运营商,学信网,设备IMEI…)
- 外部接入信息(P2P信贷,其它金融机构如芝麻信用分…)
策略体系:反欺诈规则、准入规则、运营商规则、风险名单、网贷规则 - 收集来用户的信息之后,把用户信息输入到策略引擎 - 欺诈规则 - 准入规则(年龄,地域,通讯录,行为规则) - 运营商规则(通话规则) - 风险名单(黑名单,失信名单,法院名单) - 网贷(多头,白户…)
机器学习模型:欺诈检测模型、准入模型、授信模型、风险定价、额度管理、流失预警、失联修复。
贷前准入 | 贷中管理 | 贷后催收 | |
---|---|---|---|
信用 | 申请评分卡 | 行为评分卡 | 催收评分卡 |
反欺诈 | 申请反欺诈 | 交易反欺诈 | |
运营 | 用户响应模型 | 用户流失模型、用户分群、用户画像 | 失联修复 |
其他 | 套现识别、洗钱识别 |
2 风控建模流程
2.1 评分卡简介
风控模型其中包含了A/B/C卡。模型可以采用相同算法,一般以逾期天数来区分正负样本,也就是目标值Y的取值(0或1) - 贷前 申请评分卡 Application score card
- 贷中 行为评分卡 Behavior score card
- 贷后 催收评分卡 Collection score card
C卡因为用途不同Y的取值可能有区别 - 公司有内催,有外催。外催回款率低,单价贵 - 可以根据是否被内催催回来定义C卡的Y。
2.2 机器学习模型的完整工程流程
准备 - 明确需求 - 模型设计 - 业务抽象成分类/回归问题 - 定义标签(目标值) - 样本设计
特征工程 - 数据处理,选取合适的样本,并匹配出全部的信息作为基础特征 - 特征构建 - 特征评估
模型 - 模型训练、模型评价、模型调优
上线运营 - 模型交付 - 模型部署 - 模型监控
2.3 项目准备期
项目准备期 → 特征工程 → 模型构建 → 上线运营
明确需求
- 目标人群:新客,优质老客,逾期老客
- 给与产品:额度,利率
- 市场策略:冷启动,开拓市场,改善营收
- 使用时限:紧急使用,长期部署
举例
- 业务需要针对全新客户开放一个小额现金贷产品,抢占新市场
- 针对高风险薄数据新客的申请评分卡
模型设计
业务抽象成分类/回归问题
风控场景下问题通常都可以转化为二分类问题:
- 信用评分模型期望用于预测一个用户是否会逾期,逾期用户1
- 营销模型期望用于预测一个用户被营销后是否会来贷款,没贷用户1
- 失联模型期望用于预测一个用户是否会失联,失联用户1
风控业务中,只有欺诈检测不是二分类问题。因为样本数量不足,可能是一个无监督学习模型
模型算法
- 规则模型
- 逻辑回归
- 集成学习
- 融合模型
模型输入:
- 数据源
- 时间跨度
Y标签定义
在构建信贷评分模型时,原始数据中只有每个人的当前逾期情况,没有负样本,负样本需要人为构建
通常选一个截断点(阈值),当逾期超过某个阈值时,就认定该样本是一个负样本,未来不会还钱
比如逾期15天为正负样本的标记阈值,Y = 1的客户均是逾期超过15天的客户
逾期>15天时 Y = 1,那么Y=0如何定义
- 只会将按时还款和逾期较少的那一部分人标记为0。如:将逾期<5天和没有逾期的人作为正样本
- 逾期5~15天的数据(灰样本)会从样本中去掉,去掉“灰样本”,会使样本分布更趋于二项分布,对模型学习更加有利。
- “灰样本”通常放入测试集中,用于确保模型在训练结束后,对该部分样本也有区分能力。
样本选取
代表性:样本必须能够充分代表总体。如消费贷客群数据不能直接用到小额现金贷场景
充分性:样本集的数量必须满足一定要求。评分卡建模通常要求正负样本的数量都不少于1500个。随着样本量的增加,模型的效果会显著提升
时效性:在满足样本量充足的情况下,通常要求样本的观测期与实际应用时间节点越接近越好。如银行等客群稳定的场景,观察期可长达一年半至两年。
排除性(Exclusion):虽然建模样本需要具有代表整体的能力,但某些法律规定不满足特定场景贷款需求的用户不应作为样本,如对行为评分卡用户、无还款表现或欺诈用户均不应放入当前样本集。
评分卡建模通常要求正负样本的数量>=1500,但当总样本量超过50000个时,许多模型的效果不再随着样本量的增加而有显著提升,而且数据处理与模型训练过程通常较为耗时。
如果样本量过大,会为训练过程增加不必要的负担,需要对样本做欠采样(Subsampling)处理。由于负样本通常较少,因此通常只针对正样本进行欠采样。常见的欠采样方法分为:
- 随机欠采样:直接将正样本欠采样至预期比例。
- 分层抽样:保证抽样后,开发样本、验证样本与时间外样本中的正负样本比例相同。
- 等比例抽样:将正样本欠采样至正负样本比例相等,即正样本量与负样本量之比为1:1。 需要注意的是,采样后需要为正样本添加权重。如正样本采样为原来的¼,则为采样后的正样本增加权重为4,负样本权重保持为1。因为在后续计算模型检验指标及预期坏账时,需要将权重带入计算逻辑,才可以还原真实情况下的指标估计值,否则预期结果与实际部署后的结果会有明显偏差。
- 而当负样本较少的时候,需要进行代价敏感加权或过采样(Oversampling)处理
观察期和表现期
- 观察期是指用户申请信贷产品前的时间段
- 表现期是定义好坏标签的时间窗口,如果在该时间窗口内触发坏定义就是坏样本,反之就是好样本。
- 举例: 要建立A卡模型, 观察期12个月,表现期3个月
- 用户贷款前12个月的历史行为表现作为变量,用于后续建模
- 如设定用户在到期3个月内未还款,即认为用户为负样本,则称表现期为3个月
训练数据测试数据划分
- 数据集在建模前需要划分为3个子集:
- 开发样本(Develop):开发样本与验证样本使用分层抽样划分,保证两个数据集中负样本占比相同
- 验证样本(Valuation): 开发样本与验证样本的比例为6:4
- 时间外样本(Out of Time,OOT): 通常使用整个建模样本中时间最近的数据, 用来验证模型对未来样本的预测能力,以及模型的跨时间稳定性。
举例:
申请评分卡 | 行为评分卡 | 催收评分卡 | |
---|---|---|---|
客群 | 新客 | 未逾期老客 | 逾期老客 |
观察期 | 申请时点前一年 | 当期某一日前一年 | 当期还款日前一年 |
表现期 | FPD30 | DPD60 | DPD1->DPD30 |
样本设计 - 选取客群:新客,未逾期老客,逾期老客
训练集 | 测试集 | |||||||
---|---|---|---|---|---|---|---|---|
1月 | 2月 | 3月 | 4月 | 5月 | 6月 | 7月 | 8月 | |
总# | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 |
坏# | 3 | 6 | 6 | 8 | 15 | 12 | 14 | 24 |
坏% | 3% | 3% | 2% | 2% | 3% | 2% | 2% | 3% |
客群描述:首单用户、内部数据丰富、剔除高危职业、收入范围在XXXX
客群标签:好: FPD<=30 坏: FPD>30
2.4 特征工程
数据调研
明确对目标人群有哪些可用数据, 明确数据获取逻辑