最近发现自己对模型可解释性这方面的知识已经严重滞后了,发现机器学习可解释性这方面已经做了很多工作了,并且也已经有很多比较成熟的可解释性方法了,下面先记录几个今天看到的,之后在仔细了解下去认真看一下。
1.Partial Dependence Plots
这个方法相对比较简单,感觉类似于敏感性分析的工作。可以看下面几个链接就可以完全了解了。
1.比较好的介绍,且有sklearn的实现代码
2.对1的翻译
3.另一篇不错的介绍,使用另一个专门的包实现的
2.特征重要性排序
特征重要性排序之前一般都是用决策树或基于树的模型来做的,但是其实也还是有很多其他方法的,比如对一个特征随机打乱,看效果下降多少等等,基于回归或树模型的特征重要性排序就不再说了。
1,特征重要性排序,Permutaion Importance
下面这个图感觉总结的挺好的,借过来了。
3.特征对预测值的贡献(SHAP)
SHAP值当然也可以做特征重要性排序,但是这个方法用途很多,因此单独拿出来说,它的效果目前我知道的就已经有以下几个了:
- 它可以度量单个样本各个特征对预测值的贡献;
- 各个特征在多个样本或者整个样本集上的对预测值的贡献以及是如何去影响预测值的;
- 特征重要性排序;
- 特征之间的交互作用;
关于SHAP值可以看下列几个介绍:
1.粗略了解的文章
2. 一篇比较好的介绍文章
3.比较具体的介绍的文章
4.相对简单的介绍应用为主的文章