风控信贷模型(一):特征分析
数据的探索分析EDA,是对数据进行初步的统计分析,统计数据的分布、异常、相互关系,目标是让我们了解这些数据能告诉我们什么。可以用来指导我们进行模型的选择,帮助我们初步决定哪些特征需要被使用,哪些特征需要被剔除。
前期准备与观察
1、准备好样本、特征、label;
2、查看样本集中样本总个数、特征总个数;
3、查看正负样本比例,如果正负样本相差不多,则属于样本均衡的建模问题,如果其中一类明显高于另外一类,则属于样本不均衡的建模问题;
4、查看每个特征的类型:离散型、连续型。按照不同的类型进行分组,分别进行处理
信贷业务里面,大部分时候面对的是二分类任务,下面就以二分类的信贷模型为例,讲述信贷模型中,特征分析的详细步骤。(ps:以下“特征”和“变量”指的是同一个意思。)
1、单特征分析
有几种分析角度,分别观察不同方面
1.1、观察特征值的分布和对正负样本的区分能力
分为整体分析和分箱分析。
1.1.1 整体分析
在总体样本上,计算
缺失率
1、缺失率>90%并且未来依然会高缺失的变量
如果有业务含义:如果在某一类上的缺失率明显高于另一类,那么该特征的缺失值比较具有区分能力,可以考虑将该特征作为黑/白名单使用;
如果没有业务含义:直接剔除掉;
2、缺失率<=90%的变量,保留。训练时候,缺失值的处理方式如下
连续型变量:如果偏正态分布,用均值填充,可以保持数据的均值;偏长尾分布,使用中值填充,避免受异常值的影响(ps:编程上可以用sklearn.preprocessing中的Imputer实现);如果缺失量比较大,不适合使用平均值填补,一般直接将缺失值填充为区别于其他正常值的默认值,比如-1;
离散变量:用众数、区别于其他正常值的默认值比如-1,进行填充;
极端值分析
1、可以通过画箱图,观察有无极端值;
2、除非是计算或者人为错误,极端值需要从业务层面进行分析:
分别计算“拥有极端值的那些样本中,label=1样本的占比R1” 和“拥有非极端值的那些样本中,label=0样本的占比R2”
如果R1和R2相差很多,则说明极端值有业务意义,建议保留,特别是从反欺诈的角度来分析一下
3、如果是计算或者人为错误,极端值的影响可以通过分箱被中和,对模型训练没有影响;
4、也可以将极端值设置成缺失值/空值&