Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Parameterized Exact Fair Decision Tree Learning with Small Sensitive Group Regimes

This repository is the public reproducibility artifact for the paper "Parameterized Exact Fair Decision Tree Learning with Small Sensitive Group Regimes." It contains the memoized exact fair decision tree implementation, experiment runners, processed result tables, and generated figures.

Contents

  • experiment/solvers.py: memoized and uncached exact fair decision tree solvers
  • experiment/run_q2_suite.py: exactness, scalability, cache ablation, and benchmark experiments
  • experiment/run_q2_extensions.py: fairness-tolerance, depth, and shared-test experiments
  • experiment/run_reviewer_experiments.py: controlled and held-out reviewer experiments
  • experiment/run_real_external_validity.py: Adult, Bank Marketing, and German Credit experiments
  • experiment/*.csv: run-level and aggregated results reported in the paper
  • figures/: generated figures used in the paper

Manuscript sources, PDFs, editorial correspondence, and local build files are intentionally excluded.

Environment

The reported experiments used Python 3.13.2. Install the pinned dependencies:

python -m venv .venv
python -m pip install -r requirements.txt

Reproduce the experiments

Run the synthetic and dataset-like experiments from the repository root:

python experiment/run_q2_suite.py
python experiment/run_q2_extensions.py
python experiment/run_reviewer_experiments.py
python experiment/plot_q2_results.py

The scripts use fixed seeds and write processed CSV files to experiment/ and figures to figures/.

Real-data experiments

The raw benchmark datasets are not redistributed. Download them from the UCI Machine Learning Repository:

Arrange the extracted files as follows:

data/
├── adult/
│   └── adult.data
├── bank/
│   └── bank-full.csv
└── german/
    └── german.data

Then run:

python experiment/run_real_external_validity.py --data-root data

The data directory can alternatively be supplied through the FAIR_TREE_DATA_DIR environment variable.

Releases and archival

GitHub Releases provide versioned source snapshots for Zenodo archival. Version 1.0.1 refreshes the citation and deposit metadata without changing the implementation or reported results. The archived release is available at https://doi.org/10.5281/zenodo.21625413.

Reuse

The software is released under the MIT License. The benchmark datasets remain subject to their source licenses and citation requirements.

About

Code and results for parameterized exact fair decision tree learning

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages