Python, Java, R
- Python 3
- Java
- R
- The input dataset is a table that is stored in .CSV file.
- We use two real datasets: COMPAS, MEPS, and synthetic data that is generated by ourselves. Both real datasets are preprocessed as specified in IBM AIF360.
Step 1 Download CAIFRanking.
Step 2 Unzip the downloaded source file and initiate the python environment.
cd CAIFRank # go to the CAIFRank repository that is just downloaded
python -m venv CAIFRanking
source CAIFRanking/bin/activate # activate the environment for CAIFRanking
pip install -r requirements.txt
All the experiments can be executed by bash script. For MacOS or Linux, run the following script under ROOT ACCESS.
For the experiments on synthetic data,
bash run_exp_syn.sh mv m2 data/mv_m2.json G
bash run_exp_syn.sh mvr m2 data/mvr_m2.json GR
bash run_exp_syn.sh mvp m2 data/mvp_m2.json G
For the experiments on real data,
bash run_exp_real_cm.sh
bash run_exp_real_mp.sh
bash run_exp_real_cs.sh
Details can be found in Causal intersectionality for fair ranking.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.