TreeExplainer 尚不支持 Shap python 模型类型:class 'sklearn.ensemble._stacking.StackingClassifier

Ofi*_*fir 4 python machine-learning scikit-learn ensemble-learning shap

我尝试使用 Shap ( Tree Explainer) 进行sklearn.ensemble._stacking.StackingClassifier

explainer = shap.TreeExplainer(clf)
shap_values = explainer.shap_values(x)
shap.initjs()
return shap.force_plot(explainer.expected_value[1], shap_values[1], x)
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误: Model type not yet supported by TreeExplainer: <class 'sklearn.ensemble._stacking.StackingClassifier'>

如何将 shap 用于force_plotsklearn StackingClassifier

谢谢。

esc*_*bli 5

TreeExplainer仅适用于基于树的模型本身,不适用于以基于树的模型结尾的管道或元模型。

如果您希望原始功能具有可解释性,则需要使用基本的Explainer类(或等效的类KernelExplainer)。不幸的是,这将是近似值并且计算成本更高。