首页 > 解决方案 > xgboost Scala API 什么是`predictContrib`?

问题描述

我正在使用xgboostscala API。

我曾经使用xgboostwithRpythonAPI,最近发现了这个pred_contribs论点。

例如,在 python API 中,文档说:

当这是 True 时,输出将是一个大小为 (nsample, nfeats + 1) 的矩阵,每个记录指示该预测的特征贡献(SHAP 值)。所有特征贡献的总和等于预测的原始未转换边距值。注意最后一列是偏差项。

据我了解,它是一种直接在 xgboost 中实现的Tree SHAP。

我的问题是:

predictContribScala API 是一样的吗?

标签: scalamachine-learningxgboost

解决方案


是的,这与两者最终执行相同的代码完全相同。

Python:https ://github.com/dmlc/xgboost/blob/master/python-package/xgboost/core.py#L1239

斯卡拉:

  1. JBooster开始
  2. 那个叫XGBoostJNI.XGBoosterPredict

最后两者都调用相同的C API


推荐阅读