Skip to content

Conversation

@Langbridge
Copy link

Updates to @JoeJohnson01's PR #550 (see original PR for references) to close #549

  • Added downstream example for the Distributional Repair example notebook
  • Added DCO

JoeJohnson01 and others added 8 commits August 2, 2025 17:58
- Distributional Repair
- Subgroup Fairness
- Instantaneous Fairness

Algorithms and their respective tests and examples are added.

Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
* rename bias_scan->MDSS_bias_scan (kept bias_scan as well for backwards compat)

Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
- Distributional Repair
- Instantaneous Repair
- Subgroup Repair

Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
* bugfix: drop_above arg used hard-coded names, removed

* FACTS hotfix: drop_infeasible set to False

this part of the code is problematic due to the use of hardcoded feature
names. The required functionality should be achieved in some other way.

* FACTS bugfix: feat weights were not passed properly

* removed obsolete use of drop_above argument

* FACTS: added test for user interface API

* FACTS_bias_scan: test improvement

Previously, the test case only had inf costs. Consequently, the
exact values of the feature weights were not actually tested properly.

Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
use `np.nan` instead

Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
Signed-off-by: Abi-Langbridge1 <Abi.Langbridge1@ibm.com>
@Langbridge
Copy link
Author

@rahulnair23 moving discussion here as I had to fork Joe's repo

@rahulnair23
Copy link

Apologies for the delay @Langbridge . I've missed reviewing this earlier.

Could you check dependencies again? I'm getting a missing module error (ModuleNotFoundError: No module named 'ot') when trying to run the demonstrator notebook for distributional repair.

Thanks for including the downstream task. This is useful. Could you also report a fairness measure for this (the last cell of the demonstrator). It would help motivate users to use your methods as bias mitigation.

Let me know if you need guidance on other items from my previous review:

  • The LDS methods involve several dependencies. Could you include relevant packages in the setup, so that the methods are pip installable? Currently, throws missing import errors.
  • There appears to be code relating to two solvers. Do you need one or both? Your links suggest that SDPA is preferred.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Adding support for Subgroup Fairness, Instantaneous Fairness, and Distributional Repair

5 participants