aif360.sklearn.metrics.conditional_demographic_disparity

aif360.sklearn.metrics.conditional_demographic_disparity(y_true, y_pred=None, *, prot_attr=None, pos_label=1, sample_weight=None)[source]

Conditional demographic disparity, \(CDD = \frac{1}{\sum_i N_i} \sum_i N_i\cdot DD_i\)

where \(DD_i = \frac{N_{i, -}}{\sum_j N_{j, -}} - \frac{N_{i, +}}{ \sum_j N_{j, +}}\).

\(N_{i, +}\) signifies the number of samples belonging to group \(i\) that have favorable labels while \(N_{i, -}\) signifies those that have negative labels [1].

Parameters:
  • y_true (pandas.Series) – Ground truth (correct) target values. If y_pred is provided, this is ignored.

  • y_pred (array-like) – Estimated targets as returned by a classifier.

  • prot_attr (array-like, keyword-only) – Protected attribute(s). If None, all protected attributes in y_true are used.

  • pos_label (scalar, optional) – The label of the positive class.

  • sample_weight (array-like, optional) – Sample weights.

Returns:

float – Conditional demographic disparity.

References