此前我们讨论了WOE值以及应用场景,而提到了WOE值,就不得不再提出IV值,IV值公式的形成来源于信息熵,公式形式是类似的,只是具体的计算不一样。传送门:《风控算法知识——WOE值的深度理解与应用》
而什么是信息熵呢?香农(Shannon)早在1948年在他著名的《通信的数学原理》论文中指出:“信息是用来消除随机不确定性的东西”并提出信息熵的概念。熵越大表示信息的无序化程度越高,相对应的信息效用越低。
而信息熵是消除不确定性所需信息量的度量,即未知事件可能含有的信息量。我们用信息熵来描述一个事件混乱程度的大小(一个事件我们一定知道结果,那么这个事件的混乱程度就是0;而相反一个事件充满随机性,我们猜不到或者很难猜到结果,那么他的混乱度就很大)。
例如,小伙伴告诉我“意大利进欧洲杯了!”我就觉得“哦~我知道了。”意大利身为传统欧洲劲旅,几乎从欧洲杯开办以来就一直进入欧洲杯了,也就是说这条消息并不能给我带来很大的信息量。
但小伙伴跟我说:“意大利时隔53年再夺欧洲杯冠军!!!”,我就会很惊讶,因为这条消息给我的信息量很大。(类似的信息量很大的消息还比如:美股10天内4次熔断,央行宣布全面降准等。)
根据香农(Shannon)给出的信息熵公式,对于任意一个随机变量X,Xi代表变量发生的概率,它的信息熵定义如下,单位为比特(bit):
首先我们会在未进行任何分类前求取一个信息熵,这个信息熵涉及到的只是简单的求取样本标签的分布,然后按照公式求解信息熵。
之后再选用某一个属性作为分支属性后,我们需要计算每一个子分支中的样本标签的分布,然后计算每个子样本的信息熵,最后加权平均(期望),求得总的信息熵。
IV值计算
IV本质上也是WOE的加权。
继承前文计算WOE公式中的参数定义传送门:《风控算法知识——WOE值的深度理解与应用》,整个数据有n组,在第i组中,再代入可以得到IV值的公式为:
IV值可以用来评估该变量预测能力的强弱,是一个很好的衡量自变量对目标变量影响程度的指标。IV值的计算需要WOE的结果,并且IV值有如下三点性质:
对于变量的一个分组,这个分组的风险客户和正常客户的比例与样本整体风险客户和正常客户的比例相差越大,IV值越大,否则,IV值越小。
如果当前分组的风险客户和正常客户的比例和该变量的总体样本对应的比例相等时,IV值为0。
IV值是大于0的实数,而且当如果前分组中只包含风险客户或者正常客户时,IV取+∞。
在实际计算时,应该避免当风险客户或者正常客户为零的情况,也就是全是风险客户,或者全是正常客户的情况,如果这种情况出现,就会导致:
当第i组中风险客户为零,即Bi=0,
当第i组中正常客户为零,即Gi=0,
无论取负无穷还是正无穷,在实际上操作都是无意义的。由上述问题我们可以看到,IV值也存在一个缺点,当风险客户数量为0,也就是对应正常客户的比例是100%,或者正常客户数量为0,也就是对应风险客户的比例是100%的情况。
上述两种情况如果出现,计算IV值就是无意义的,如果是计算机计算的角度,就是无法自动处理这种情况。当遇到上述这种情况可以有以下解决办法:
第一,在建模之前设定条件,这个分组单独做一个规则,就能在数据上作出限制。
第二,对该变量重新分箱,分箱的个数可以变少,使每个分组都会包含风险客户和正常客户。
第三,如果上述两种方法都无法使用,可以用加1的方法将风险客户数量和正常客户数量进行一定的调整。如果风险客户数量原本为0,可以调整风险客户数量为1,如果正常客户数量原本为0,可以将正常客户数量调整为1。
第四,计算IV值依赖的是变量WOE化之后的值,所以如果遇到风险客户数量为0,或者正常客户数量为0时,对应的WOE值也是-∞和+∞之和,此时可以将WOE赋值为一个较大的常数,例如-20,+20。
在FAL的模型机会创造营课程中,详细阐述了IV值的原理和应用IV值的例子,IV值越大表示风险客户和正常客户在该变量上的分布的差异就越大,也说明了该变量的区分能力就越好。
IV值与预测能力的关系
如果你喜欢、想要看更多的干货类型的文章,可以把公众号【金科应用研院】设为星标🌟,顺便转发分享,也可以在留言区告诉我们你最感兴趣的内容,我们会根据您的反馈带来更多好文~
FAL长期对外征稿,邀请各大风控人士加入我们,在风控圈分享你的经验与知识👉征稿,快到碗里来,有稿费那种!
感谢您看到这里,想要了解更多与风控算法相关的内容,可搜索:「 金科应用研究院」
可以从微信公众号菜单栏点击「在线学习」
更多风控资讯与干货学习资料,都在微信公众号,回复关键字: 「优快云」➡️领取干货学习资料