嘿,这里是数据科学堆栈交换-关于SHAP的问题。
在Lloyd最初的Shapley值公式中,一个假设是空集的值函数等于零,$v(\emptyset)=0$换句话说,如果没有玩家在玩游戏,则值函数为零(没有回报)。
当Shapley值适用于可解释ML时(斯科特·伦德伯格的SHAP),当不考虑特征时的回报是对预测函数的期望。这是我的直觉——当模型不知道任何特征的价值时,它的预测等于它的期望,美元[f(x)]$(参见链接中第5页的图1)。
但我不清楚,如果值函数对空集的行为不同,为什么Lloyd的结果仍然成立。让我再清楚一点。
劳埃德在某些公理和假设下表明$v(\emptyset)=0$,Shapley值有一个独特的解决方案:
$\phi_i(v)=\sum_{S\subset N}\frac{(S-1)!(N-S)!}{N!}\left[v(S)-v(S-i)\right]$
但在ML上下文中,假设似乎发生了变化,空集的值函数等于$0$。为什么这个新假设的解决方案保持不变?
看看伦德伯格的论文,有一件相关的事情让我困惑。在第4页的顶部,等式5显示了特征属性方法的一个理想属性。
$f(x)=\phi_0+\sum_{i=1}^M\phi_i x$
伦伯格只是说,线性特征属性方法下的属性应该增加到与预测值相等的值。
这几乎完全符合劳埃德的效率公理,即所有玩家的夏普利值之和等于所有玩家玩游戏时的“总回报”。
但我认为斯科特的方程式有一点不同,那就是它包括$\phi_0美元$.我认为没有$\phi_0美元$在劳埃德的公式中。发件人维基百科,效率公理为:$\sum_{i\在N}\varphi_i(v)=v(N)中$哪里1美元$是一组球员中的一名球员N美元$。对不存在的玩家使用Shapely值是没有意义的。注意,Shapley值美元\斐$与值函数不同$v(美元)$.$v(美元)$是为空集定义的,但我不清楚美元\斐$定义为“无玩家”。