Grouped ROCAUC

Overview

Computes the ROC AUC separately for privileged and unprivileged groups, providing insights into the model's discrimination performance across different demographic categories. It returns a tuple containing the ROC AUC values for each group.

Usage

Manually


# Calculate grouped rocauc score

rocauc_priv, rocauc_unpriv = grouped_roc_auc(df, protected_attribute, privileged_group, labels, positive_label, y_true)
print(rocauc_priv, rocauc_unpriv)

Using Fairness Object

result = fo.compute(grouped_roc_auc)

Results

0.6458333333333333 0.29166666666666663

These results are obtained by using the input data given in the Create Example Data page under Getting Started

Interpretation

A disparity in ROC AUC score between groups indicates a difference in classification accuracy between groups. If a privileged group gets higher ROC AUC scores than unprivileged groups that would indicate some sort of bias in the model.