SHAP values for feature contributions (#2438)
* SHAP values for feature contributions * Fix commenting error * New polynomial time SHAP value estimation algorithm * Update API to support SHAP values * Fix merge conflicts with updates in master * Correct submodule hashes * Fix variable sized stack allocation * Make lint happy * Add docs * Fix typo * Adjust tolerances * Remove unneeded def * Fixed cpp test setup * Updated R API and cleaned up * Fixed test typo
This commit is contained in:
@@ -990,7 +990,7 @@ class Booster(object):
|
||||
return self.eval_set([(data, name)], iteration)
|
||||
|
||||
def predict(self, data, output_margin=False, ntree_limit=0, pred_leaf=False,
|
||||
pred_contribs=False):
|
||||
pred_contribs=False, approx_contribs=False):
|
||||
"""
|
||||
Predict with data.
|
||||
|
||||
@@ -1018,9 +1018,12 @@ class Booster(object):
|
||||
|
||||
pred_contribs : bool
|
||||
When this option is on, the output will be a matrix of (nsample, nfeats+1)
|
||||
with each record indicating the feature contributions of all trees. The sum of
|
||||
all feature contributions is equal to the prediction. Note that the bias is added
|
||||
as the final column, on top of the regular features.
|
||||
with each record indicating the feature contributions (SHAP values) for that
|
||||
prediction. The sum of all feature contributions is equal to the prediction.
|
||||
Note that the bias is added as the final column, on top of the regular features.
|
||||
|
||||
approx_contribs : bool
|
||||
Approximate the contributions of each feature
|
||||
|
||||
Returns
|
||||
-------
|
||||
@@ -1033,6 +1036,8 @@ class Booster(object):
|
||||
option_mask |= 0x02
|
||||
if pred_contribs:
|
||||
option_mask |= 0x04
|
||||
if approx_contribs:
|
||||
option_mask |= 0x08
|
||||
|
||||
self._validate_features(data)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user