「风控ML」系列文章,主要是分享一下自己多年以来做金融风控的一些事一些情,当然也包括风控建模、机器学习、大数据风控等相关技术分享,欢迎同行交流与新同学的加入,共同学习,进步!
01 机器学习模型不可解释的原因
前些天在同行交流群里,有个话题一直在群里热烈地讨论,那就是 如何解释机器学习模型 ,因为在风控领域,一个模型如果不能得到很好的解释一般都不会被通过的,在银行里会特别的常见,所以大多数同行都是会用 LR 来建模。但是,机器学习的模型算法这么多,不用岂不是很浪费?而且有些算法还十分好用的,至少在效果上,如XGBoost、GBDT、Adaboost。
那么,有同学就会问了,为什么这些算法会没有解释性呢?其实是这样子的,刚刚所说的那些模型都是一些集成模型,都是由复杂的树结构去组成的模型,对于人类来说我们很难直观地去解释为什么这个客户就是烂,到底是什么特征导致他烂?
02 特征重要度方法盘点
其实像XGBoost之类的模型还算是有解释性的了,我们常常都会看到有人用信息增益、节点分裂数来衡量特征的重要度,但是这真的是合理的吗?
在解释是否合理前,有2个概念需要先给大家普及一下:
1)一致性
指的是一个模型的特征重要度,不会因为我们更改了某个特征,而改变其重要度。比如A模型的特征X1的重要度是10,那么如果我们在模型里给特征X2加些权重以增大其重要度,重新计算重要度后,特征X1的重要度仍是10。不一致性可能会导致具有重要度较大的特征比具有重要度较小的特征更不重要。
2)个体化
指的是重要度的计算是可以针对个体,而不需要整个数据集一起计算。
好了,有了上面的认识,下面就来盘点一下目前常见的特征重要度计算的方法:
1)Tree S