求大神详解 Tree Shap value的知识点,点亮技能树!
背景:众所周知,xgboost包自带三种看variable importance的方法:增益(看方差减少),权重(看分节点数),覆盖率(看分节点数在通过观测点上的加权)。然而很多数据上这三种算法出来的排序结果差异非常大。所以后来普遍引入了Tree Shap的概念来构造variable importance。
我在网上尝试搜索tree shap,但是并没有非常系统的内容介绍,只搜到这样的一张图
2个回答
我给SofaSofa投稿了一个教程,欢迎阅览。
SofaSofa数据科学社区DS面试题库 DS面经
赞哦
-
麦克信条
2019-05-11 09:35
非常有帮助,感谢大老!
-
我是雷哥
2019-08-19 17:13
我抛砖引玉下。
SHAP的概念是从Shapley value引申来的。Shapley value是博弈论里的一个概念,大概意思是说N个人共同协作,赚了M元,这M元该如何分配。每个人分配到的“钱”就是每个人的shapley value。
对于一个模型来说,我们需要理解和解释每个特征的作用,差不多就是想知道每个特征赚了多少“钱”。这里“钱”是指每个样本的预测值和整体均值之间的差。
在上面的那个图里,relationship这个特征的SHAP值从-2到2,说明这个特征对预测结果的推动大概在-2到2之间。当Relationship本身数值比较高的时候,通常起到正向作用。
SofaSofa数据科学社区DS面试题库 DS面经