Skip to main content
QUICK REVIEW

[Paper Review] Fairlearn: Assessing and Improving Fairness of AI Systems

Hilde Weerts, Miroslav Dudı́k|arXiv (Cornell University)|Mar 29, 2023
Ethics and Social Impacts of AI49 citations
TL;DR

Fairlearn is an open-source Python library and accompanying resources to assess fairness in AI and mitigate fairness issues via pre-processing, in-processing, and post-processing methods, plus sociotechnical learning materials.

ABSTRACT

Fairlearn is an open source project to help practitioners assess and improve fairness of artificial intelligence (AI) systems. The associated Python library, also named fairlearn, supports evaluation of a model's output across affected populations and includes several algorithms for mitigating fairness issues. Grounded in the understanding that fairness is a sociotechnical challenge, the project integrates learning resources that aid practitioners in considering a system's broader societal context.

Motivation & Objective

  • Provide a practical tool to assess fairness-related harms in AI systems across affected populations.
  • Enable disaggregated evaluation of performance metrics across groups defined by sensitive features.
  • Offer versatile mitigation strategies (pre-, in-, and post-processing) that wrap around standard ML models.
  • Integrate sociotechnical learning resources to contextualize fairness within societal impact.

Proposed method

  • Introduce the MetricFrame class for disaggregated evaluation by combining metric functions with true labels, predictions, and sensitive features.
  • Provide fairness metrics such as demographic_parity_difference and equalized_odds_difference derived from MetricFrame.
  • Support comparison of multiple models via model-performance and fairness metrics visualization tools.
  • Describe three mitigation categories (pre-processing, in-training, post-processing) and illustrate representative algorithms (e.g., CorrelationRemover, ExponentiatedGradient, Adversarial models, ThresholdOptimizer).
  • Ensure API compatibility with scikit-learn conventions and wrap standard fair/unfair algorithms as versatile meta-algorithms.

Experimental results

Research questions

  • RQ1How can practitioners quantify and compare fairness-related harms across population groups using disaggregated evaluation?
  • RQ2What tools and metrics does Fairlearn provide to assess demographic parity and equalized odds in AI predictions?
  • RQ3What mitigation strategies can be applied at different stages of model development (pre-, in-, post-processing) to improve fairness while maintaining performance?
  • RQ4How can Fairlearn facilitate learning and understanding of sociotechnical context in fairness assessments?
  • RQ5How does Fairlearn integrate with existing ML libraries to enable practical usage for practitioners?

Key findings

  • Fairlearn provides a MetricFrame tool to perform disaggregated metrics across groups and compare them via differences or ratios.
  • It offers fairness metrics like demographic_parity_difference and equalized_odds_difference derived from the MetricFrame workflow.
  • The library supports model comparisons using plots that relate overall performance to fairness metrics.
  • Multiple mitigation approaches are described, including CorrelationRemover (pre-processing), ExponentiatedGradient and Adversarial methods (in-training), and ThresholdOptimizer (post-processing).
  • Learning resources and datasets accompany the library to educate practitioners about sociotechnical aspects of fairness.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.