从样本集到WOE、IV值的变迁
样本集
- 在建模任务开始之前首先需要有训练数据,也就是样本集。在对样本集的所有特征数据进行整理和预处理后,就可以对每一个特征的各个取值计算WOE。
WOE(Weight of Evidence)证据权重
-
WOE是对原始特征的一种编码形式,要对一个变量进行WOE编码,需要首先把这个变量进行分组处理(也叫离散化、分箱),如果是离散变量可以直接进行编码。
-
对每个分组或取值,响应比例(二分类取值为1的正样本比例)越大,WOE值越大;当前分组WOE的正负,由当前分组响应和未响应的比例,与样本整体响应和未响应的比例的大小关系决定,当前分组的比例小于样本整体比例时,WOE为负,当前分组的比例大于整体比例时,WOE为正,当前分组的比例和整体比例相等时,WOE为0。
-
计算公式:
- Y e s i {Yes_i} Yesi表示分组中的响应用户
- Y e s t o t a l {Yes_{total}} Yestotal 表示总响应用户
- N o i {No_i} Noi 表示分组中的未响应用户
- N o t o t a l No_{total} Nototal 表示总未响应用户
-
W O E i = l n ( Y e s i / Y e s t o t a l N o i / N o t o t a l ) WOE_i = ln(\frac{Yes_i/Yes_{total}}{No_i/No_{total}}) WOEi=ln(Noi/NototalYesi/Yestotal)
IV值(Information Value)信息值
-
IV值主要用来对原始特征进行编码和预测能力评估。特征变量IV值的大小即表示该变量预测能力的强弱。IV 值的取值范围是 [ 0 , 正 无 穷 ) [0, 正无穷) [0,正无穷),如果当前分组中只包含响应客户或者未响应客户时,IV = 正无穷。
-
计算公式:
- Y e s i {Yes_i} Yesi表示分组中的响应用户
- Y e s t o t a l {Yes_{total}} Yestotal 表示总响应用户
- N o i {No_i} Noi 表示分组中的未响应用户
- N o t o t a l No_{total} Nototal 表示总未响应用户
-
I V i = ( Y e s i / Y e s t o t a l − N o i / N 0 t o t a l ) ∗ l n ( Y e s i / Y e s t o t a l N o i / N o t o t a l ) IV_i = ({Yes_i/Yes_{total}}-{No_i/N0_{total}})*ln(\frac{Yes_i/Yes_{total}}{No_i/No_{total}}) IVi=(Yesi/Yestotal−Noi/N0total)∗ln(Noi/NototalYesi/Yestotal)
-
I V = s u m ( I V i ) IV = sum(IV_i) IV=sum(IVi)
应用要点
- IV值并不是越大越好。IV过大,很可能是分箱不当所引起的,这个时候需要对数据进行重新分箱操作。
- 如果按照原始的公式进行计算,分箱操作时,某个组的数据不能为0,否则做除法运算时会触发异常。
- 实际项目操作过程中,一般选择0.2作为阈值。如果某个特征的IV值小于0.2,说明区分度不太够,该特征不予采用。