SHAP 值似乎是相加的,例如,整体特征重要性图只是简单地将每个特征的绝对 SHAP 值相加并进行比较。这使我们能够将 SHAP 用于全局重要性和局部重要性。我们还可以以相同的方式获得特定数据记录子集的特征重要性。
出于同样的原因,获取变量集的聚合 SHAP 值是否有效?例如,“身高”、“体重”和“眼睛颜色”进入“人类描述”或“温度”、“湿度”和“气压”进入“天气”并相应地对它们进行排名。
从理论上讲,我不明白为什么不这样做,但如果有任何问题,我会很感激对此的反馈。
来自包作者 Lundberg:“简短的回答是肯定的,您可以将所有列中的 SHAP 值相加,以获得整组特征的重要性(只要确保您不会像我们在遍历时那样采用绝对值)全局特征重要性的行)。
长答案是,当 Shapley 值“公平地”为特征之间的交互效应分配功劳时,他们假设交互效应中的每个特征都应该因交互而获得相等的功劳。这意味着对于高阶交互项,在对特征进行分组之前(和求和)与之后运行 Shapley 值时,您可能会得到稍微不同的结果(因为可以说新组只获得交互饼的一大块,而不是多个块当它有几个功能时)。不过这些差异通常很小,所以我不会担心太多,因为这两种方式都是合理的。”