holisticai.bias.metrics.disparate_impact#

holisticai.bias.metrics.disparate_impact(group_a, group_b, y_pred)[source]#

Disparate Impact.

This function computes the disparate impact (ratio of success rates) between group_a and group_b class.

Interpretation

A value of 1 is desired. Values below 1 are unfair towards group_a. Values above 1 are unfair towards group_b. The range (0.8,1.2) is considered acceptable.

Parameters

group_aarray-like

Group membership vector (binary)

group_barray-like

Group membership vector (binary)

y_predarray-like

Predictions vector (binary)

Returns

float

Disparate Impact

Notes

\(sr_a/sr_b\)

References

Examples

>>> import numpy as np
>>> from holisticai.bias.metrics import disparate_impact
>>> group_a = np.array([1, 1, 1, 1, 0, 0, 0, 0, 0, 0])
>>> group_b = np.array([0, 0, 0, 0, 1, 1, 1, 1, 1, 1])
>>> y_pred = np.array([1, 1, 1, 0, 1, 1, 0, 0, 0, 0])
>>> disparate_impact(group_a, group_b, y_pred)
2.25