Function model_performance() calculates various performance measures for classification and regression models. For classification models following measures are calculated: F1, accuracy, recall, precision and AUC. For regression models following measures are calculated: mean squared error, R squared, median absolute deviation.
model_performance(explainer,..., cutoff =0.5)
Arguments
explainer: a model to be explained, preprocessed by the explain function
...: other parameters
cutoff: a cutoff for classification models, needed for measures like recall, precision, ACC, F1. By default 0.5.
Returns
An object of the class model_performance.
It's a list with following fields:
residuals - data frame that contains residuals for each observation
measures - list with calculated measures that are dedicated for the task, whether it is regression, binary classification or multiclass classification.
type - character that specifies type of the task.
Examples
# regressionlibrary("ranger")apartments_ranger_model <- ranger(m2.price~., data = apartments, num.trees =50)explainer_ranger_apartments <- explain(apartments_ranger_model, data = apartments[,-1], y = apartments$m2.price, label ="Ranger Apartments")model_performance_ranger_aps <- model_performance(explainer_ranger_apartments )model_performance_ranger_aps
plot(model_performance_ranger_aps)plot(model_performance_ranger_aps, geom ="boxplot")plot(model_performance_ranger_aps, geom ="histogram")# binary classificationtitanic_glm_model <- glm(survived~., data = titanic_imputed, family ="binomial")explainer_glm_titanic <- explain(titanic_glm_model, data = titanic_imputed[,-8], y = titanic_imputed$survived)model_performance_glm_titanic <- model_performance(explainer_glm_titanic)model_performance_glm_titanic
plot(model_performance_glm_titanic)plot(model_performance_glm_titanic, geom ="boxplot")plot(model_performance_glm_titanic, geom ="histogram")# multilabel classificationHR_ranger_model <- ranger(status~., data = HR, num.trees =50, probability =TRUE)explainer_ranger_HR <- explain(HR_ranger_model, data = HR[,-6], y = HR$status, label ="Ranger HR")model_performance_ranger_HR <- model_performance(explainer_ranger_HR)model_performance_ranger_HR
plot(model_performance_ranger_HR)plot(model_performance_ranger_HR, geom ="boxplot")plot(model_performance_ranger_HR, geom ="histogram")
References
Explanatory Model Analysis. Explore, Explain, and Examine Predictive Models. https://ema.drwhy.ai/