plot.fairness_heatmap {fairmodels} | R Documentation |
Plot Heatmap
Description
Heatmap shows all parity loss metrics across all models while displaying similarity between variables (in form of dendograms). All metrics are visible. Some have identical values as it should be in terms of their parity loss (eg. TPR parity loss == FNR parity loss, because TPR = 1 - FNR ). NA's in metrics are gray.
Usage
## S3 method for class 'fairness_heatmap'
plot(
x,
...,
midpoint = NULL,
title = NULL,
subtitle = NULL,
text = TRUE,
text_size = 3,
flip_axis = FALSE
)
Arguments
x |
|
... |
other |
midpoint |
numeric, midpoint on gradient scale |
title |
character, title of the plot |
subtitle |
character, subtitle of the plot |
text |
logical, default |
text_size |
numeric, size of text |
flip_axis |
logical, whether to change axis with metrics on axis with models |
Value
list of ggplot2
objects
Examples
data("german")
y_numeric <- as.numeric(german$Risk) - 1
lm_model <- glm(Risk ~ .,
data = german,
family = binomial(link = "logit")
)
rf_model <- ranger::ranger(Risk ~ .,
data = german,
probability = TRUE,
num.trees = 200,
num.threads = 1,
seed = 1
)
explainer_lm <- DALEX::explain(lm_model, data = german[, -1], y = y_numeric)
explainer_rf <- DALEX::explain(rf_model, data = german[, -1], y = y_numeric)
fobject <- fairness_check(explainer_lm, explainer_rf,
protected = german$Sex,
privileged = "male"
)
# same explainers with different cutoffs for female
fobject <- fairness_check(explainer_lm, explainer_rf, fobject,
protected = german$Sex,
privileged = "male",
cutoff = list(female = 0.4),
label = c("lm_2", "rf_2")
)
fh <- fairness_heatmap(fobject)
plot(fh)
[Package fairmodels version 1.2.1 Index]