前言:
本篇文章上接《申请评分卡简介》,有需要的童鞋可以参考下:https://blog.csdn.net/qq_16633405/article/details/107744921
下面介绍下A卡的开发步骤。
开发过程
1、评分卡模型开发步骤:
1、立项:场景(营销、信贷领域)、对象(个人、账户、公司)、目的(程度决策、流失预警、反欺诈等等)
2、数据的准备与预处理(账户,客户,内部外部数据)
3、建模的构建(逻辑回归VS机器学习,单一模型VS 集成模型)
4、模型评估(区分度,预测性,稳定性)
5、验证(是否有计算错误,逻辑错误,业务错误)
6、部署(从开发环境到生产环境、容量、并发度)
7、监控(性能是否减弱,是否需要重新训练等)
2、申请评分卡常用的模型
逻辑回归
优点:简单,稳定,可解释,技术成熟,易于监测和部署
缺点:准确度不高
决策树
优点:对数据质量要求低,易解释
缺点:准确度不高
其他元模型
组合模型
优点:准确度高,不易过拟合
缺点:不易解释;部署困难;计算量大
3、贷款申请环节的数据介绍和描述
申请评分卡常用的特征
1、个人信息 :学历(核查学历) 性别 收入(流水、社保、公积金来侧面查看)
2、负债信息 :在本金融机构或者其他金融机构负债情况 (在房贷、信用卡领域应用较多)
3、消费能力 :商品购买纪录,出境游,奢侈品消费 ()
4、历史信用记录 :历史逾期行为 (第三方接口查看)
5、新兴数据: 人际社交 网络足迹 出行 个人财务(人际社交:通过与老赖的关系来判断他的人品(即还款意愿);出行:通过看这个人的出行交通工具判断这个人的经济能力(还款能力))
1、4可以看出还款意愿;2、3可以看出还款能力。还款意愿*还款能力=评分卡分数等级
4、A卡用到的字段介绍
字段 | 名称 |
---|---|
member_id | ID |
loan_amnt | 申请额度 |
term | 产品期限 |
int_rate | 利率 |
emp_length | 工作期限 |
home_ownership | 是否有自有住宅 |
annual_inc | 年收入 |
verification_status | 收入核验状态 |
desc | 描述 |
purpose | 贷款目的 |
title | 贷款目的描述 |
zip_code | 联系地址邮政编码 |
addr_state | 联系地址所属州 |
delinq_2yrs | 申贷日期前2年逾期次数 |
inq_last_6mths | 申请日前6个月咨询次数 |
mths_since_last_delinq | 上次逾期距今月份数 |
mths_since_last_record | 上次登记公众记录距今的月份数 |
open_acc | 征信局中记录的信用产品数 |
pub_rec | 公众不良记录数 |
total_acc | 正在使用的信用产品数 |
pub_rec_bankruptcies | 公众破产记录数 |
earliest_cr_line | 第一次借贷时间 |
loan_status | 贷款状态—目标变量 |
5、非平衡样本问题的定义和解决方法
非平衡样本的定义
在分类问题中,每种类别的出现概率未必均衡
例:
- 信用风险: 正常用户远多于逾期/违约用户
- 流失风险: 留存客户多于流失客户
非平衡样本的隐患
- 降低对少类样本的灵敏性
非平衡样本的解决方案
过采样(对数据采集过多)
- 优点: 简单,对数据质量要求不高 (注意总结下各个算法对数据的要求)
- 缺点: 过拟合
欠采样 (对数据采集过少)
- 优点: 简单,对数据质量要求不高
- 缺点: 丢失重要信息
SMOTE(合成少数过采样技术)
- 优点: 不易过拟合,保留信息
- 缺点: 不能对有缺失值和类别变量做处理
6、数据预处理
数据格式的处理原始数据带有一定的格式,需要转换成正确的格式。
例如:
利率
- 带%的百分比,需要转化成浮点数
日期
- Nov-17,需要转化为python的时间
工作年限
- “<1 year”转化成0,“>10years”转化成11
文本类的数据的处理方式
主题提取(NPL)
优点:提取准确、详细的信息,对风险的评估非帝有效
缺点:NPL的模型较为复杂,且需要足够多的训练样本
编码
优点:简单
简单缺点:信息丢失很高
缺失值的处理
缺失在数据分析的工作是频繁出现的。
缺失的种类
- 完全随机缺失
- 随机缺失
- 完全非随机缺失
处理的方法
- 补缺(平均值、或依据变量间的关系补充)
- 作为一种状态
- 删除记录或变量
7、构建特征
常用的特征衍生
- 计数:过去1年内申请贷款的总次数(手机联系人数量、通话记录来推断这个人的一些信息:如通话记录多联系人多则证明这个人搞业务的)
- 求和:过去1年内的网店消费总额
- 比例:贷款申请额度与年收入的占比
- 时间差:第一次开户距今时长
- 波动率:过去3年内每份工作的时间的标准差
8、特征分箱(是对每一个特征进行分箱)
特征的分箱(为什么要分箱)
分箱的定义
将连续变量离散化(将连续的变量分为多个离散的类别将特征分类别即收入1000-5000之间为一箱即一个类别)
将多状态的离散变量合并成少状态(尽可能的减小类别的数量)
分箱的重要性
- 稳定性:避免特征中无意义的波动对评分带来的波动(如工资的浮动增减)
- 健壮性:避免了极端值的影响
分箱的优势
- 可以将缺失作为独立的一个箱带入模型中
- 将所有变量变换到相似的尺度上
分箱的限制
- 计算量大
- 分箱后需要编码
总结
后续会详细的介绍各种分箱的方法对应的原理,以及特征筛选对应的方法及原理等相关内容。争取把数据挖掘流程中常用的方法做一个统一的整理。
对应的代码详见:
https://github.com/645187919/financial_score_card