This function finds Variable Attributions via Sequential Variable Conditioning.
It calls either `local_attributions`

for additive attributions
or `local_interactions`

for attributions with interactions.

`break_down(x, ..., interactions = FALSE)`# S3 method for explainer
break_down(x, new_observation, ..., interactions = FALSE)

# S3 method for default
break_down(
x,
data,
predict_function = predict,
new_observation,
keep_distributions = FALSE,
order = NULL,
label = class(x)[1],
...,
interactions = FALSE
)

x

an explainer created with function `explain`

or a model.

...

parameters passed to `local_*`

functions.

interactions

shall interactions be included?

new_observation

a new observation with columns that correspond to variables used in the model.

data

validation dataset, will be extracted from `x`

if it is an explainer.

predict_function

predict function, will be extracted from `x`

if it's an explainer.

keep_distributions

if `TRUE`

, then distribution of partial predictions is stored and can be plotted with the generic `plot()`

.

order

if not `NULL`

, then it will be a fixed order of variables. It can be a numeric vector or vector with names of variables.

label

name of the model. By default it is extracted from the 'class' attribute of the model.

an object of the `break_down`

class.

Explanatory Model Analysis. Explore, Explain and Examine Predictive Models. https://pbiecek.github.io/ema

# NOT RUN { library("DALEX") library("iBreakDown") set.seed(1313) model_titanic_glm <- glm(survived ~ gender + age + fare, data = titanic_imputed, family = "binomial") explain_titanic_glm <- explain(model_titanic_glm, data = titanic_imputed, y = titanic_imputed$survived, label = "glm") bd_glm <- break_down(explain_titanic_glm, titanic_imputed[1, ]) bd_glm plot(bd_glm, max_features = 3) # } # NOT RUN { ## Not run: library("randomForest") set.seed(1313) # example with interaction # classification for HR data model <- randomForest(status ~ . , data = HR) new_observation <- HR_test[1,] explainer_rf <- explain(model, data = HR[1:1000,1:5]) bd_rf <- break_down(explainer_rf, new_observation) head(bd_rf) plot(bd_rf) # }