Black-box models may have very different structures. This function creates a unified representation of a model, which can be further processed by various explainers.
explain(model, data = NULL, y = NULL, predict.function = yhat, label = tail(class(model), 1))
model | object - a model to be explained |
---|---|
data | data.frame or matrix - data that was used for fitting. If not provided then will be extracted from the model |
predict.function | function that takes two arguments: model and new data and returns numeric vector with predictions |
label | character - the name of the model. By default it's extracted from the 'class' attribute of the model |
... | other parameters |
An object of the class 'explainer'.
It's a list with following fields:
model
the explained model
data
the dataset used for training
predict.function
function that may be used for model predictions, shall return a single numerical value for each observation.
class
class/classes of a model
label
label, by default it's the last value from the class
vector, but may be set to any character.
Please NOTE, that the model
is actually the only required argument.
But some explainers may require that others will be provided too.
library("randomForest") library("breakDown") wine_lm_model4 <- lm(quality ~ pH + residual.sugar + sulphates + alcohol, data = wine) wine_lm_explainer4 <- explain(wine_lm_model4, data = wine, label = "model_4v") wine_lm_explainer4#> Model label: model_4v #> Model class: lm #> Data head : #> fixed.acidity volatile.acidity citric.acid residual.sugar chlorides #> 1 7.0 0.27 0.36 20.7 0.045 #> 2 6.3 0.30 0.34 1.6 0.049 #> free.sulfur.dioxide total.sulfur.dioxide density pH sulphates alcohol #> 1 45 170 1.001 3.0 0.45 8.8 #> 2 14 132 0.994 3.3 0.49 9.5 #> quality #> 1 6 #> 2 6wine_rf_model4 <- randomForest(quality ~ pH + residual.sugar + sulphates + alcohol, data = wine) wine_rf_explainer4 <- explain(wine_rf_model4, data = wine, label = "model_rf") wine_rf_explainer4#> Model label: model_rf #> Model class: randomForest.formula,randomForest #> Data head : #> fixed.acidity volatile.acidity citric.acid residual.sugar chlorides #> 1 7.0 0.27 0.36 20.7 0.045 #> 2 6.3 0.30 0.34 1.6 0.049 #> free.sulfur.dioxide total.sulfur.dioxide density pH sulphates alcohol #> 1 45 170 1.001 3.0 0.45 8.8 #> 2 14 132 0.994 3.3 0.49 9.5 #> quality #> 1 6 #> 2 6