用于逻辑回归的 Shapley?
Shapley for Logistic regression?
shapley 是否支持逻辑回归模型?
运行 我得到以下代码:
logmodel = LogisticRegression()
logmodel.fit(X_train,y_train)
predictions = logmodel.predict(X_test)
explainer = shap.TreeExplainer(logmodel )
Exception: Model type not yet supported by TreeExplainer: <class 'sklearn.linear_model.logistic.LogisticRegression'>
P.S。你应该为不同的模型使用不同的解释器
根据定义,Shap 与模型无关。看起来您刚刚选择了一个不适合您的模型类型的解释器。我建议查看 KernelExplainer,正如创作者 here 所描述的那样
An implementation of Kernel SHAP, a model agnostic method to estimate SHAP values for any model. Because it makes not assumptions about the model type, KernelExplainer is slower than the other model type specific algorithms.
Shap 的文档大部分都很可靠,并且有一些不错的示例。
逻辑回归是一个线性模型,所以你应该使用线性解释器。
explainer = shap.LinearExplainer(logmodel)
应该可以工作,因为逻辑回归是一个线性模型。
shapley 是否支持逻辑回归模型?
运行 我得到以下代码:
logmodel = LogisticRegression()
logmodel.fit(X_train,y_train)
predictions = logmodel.predict(X_test)
explainer = shap.TreeExplainer(logmodel )
Exception: Model type not yet supported by TreeExplainer: <class 'sklearn.linear_model.logistic.LogisticRegression'>
P.S。你应该为不同的模型使用不同的解释器
根据定义,Shap 与模型无关。看起来您刚刚选择了一个不适合您的模型类型的解释器。我建议查看 KernelExplainer,正如创作者 here 所描述的那样
An implementation of Kernel SHAP, a model agnostic method to estimate SHAP values for any model. Because it makes not assumptions about the model type, KernelExplainer is slower than the other model type specific algorithms.
Shap 的文档大部分都很可靠,并且有一些不错的示例。
逻辑回归是一个线性模型,所以你应该使用线性解释器。
explainer = shap.LinearExplainer(logmodel)
应该可以工作,因为逻辑回归是一个线性模型。