可视化不同特征的 SHAP 贡献。
用法
xgb.ggplot.shap.summary(
  data,
  shap_contrib = NULL,
  features = NULL,
  top_n = 10,
  model = NULL,
  trees = NULL,
  target_class = NULL,
  approxcontrib = FALSE,
  subsample = NULL
)
xgb.plot.shap.summary(
  data,
  shap_contrib = NULL,
  features = NULL,
  top_n = 10,
  model = NULL,
  trees = NULL,
  target_class = NULL,
  approxcontrib = FALSE,
  subsample = NULL
)参数
- 数据
- 用于解释的数据,可以是 - matrix、- dgCMatrix或- data.frame。
- shap_contrib
- data的 SHAP 贡献矩阵。默认值 (- NULL) 会根据- model和- data计算。
- features
- 要绘制的列索引或特征名称的向量。当为 - NULL(默认)时,会通过- xgb.importance()选择- top_n个最重要的特征。
- top_n
- 应该选择多少个最重要的特征(<= 100)?对于 SHAP 依赖关系默认为 1,对于 SHAP 汇总默认为 10。仅当 - features = NULL时使用。
- model
- 一个 - xgb.Booster模型。仅当- shap_contrib = NULL或- features = NULL时需要。
- trees
- 当 - features = NULL时,传递给- xgb.importance()。
- target_class
- 仅与多类模型相关。默认值 ( - NULL) 会对所有类的 SHAP 值进行平均。传入一个(基于 0 的)类索引以仅显示该类的 SHAP 值。
- approxcontrib
- 当 - shap_contrib = NULL时,传递给- predict.xgb.Booster()。
- subsample
- 随机选择用于绘图的数据点比例。默认值 ( - NULL) 将使用多达 10 万个数据点。
详细信息
为每个特征生成一个点图(每个点代表 data 中的一个观测值),点绘制在 SHAP 值轴上。每个点(观测值)根据其特征值着色。
该图允许查看哪些特征对模型预测有负面/正面贡献,以及贡献是否因特征值的大小而异。灵感来自 https://github.com/shap/shap 的汇总图。
另请参阅
xgb.plot.shap()、xgb.ggplot.shap.summary() 和 Python 库 https://github.com/shap/shap。