This repo contains the code for the empirical evaluation in the paper Uncertainty Quantification for Fairness in Two-Stage Recommender Systems, with an implementation of the union and monotone threshold selection rules.
Make sure conda is installed. Run
conda env create -f environment.yml
conda activate fair_first_stage_recommender
Download Microsoft Learning to Rank 30k Dataset (MSLR-WEB30K).
Create a folder "./data/" and move train.txt, vali.txt, and test.txt in Fold1 to the data folder.
Run
python ./scripts/prepare_data.py
On a cluster with Slurm workload manager (you might want to change the partitions you would like to use in ./scrpts/exp_utils.py), run
python ./scripts/run_exp_cal_size.py
python ./scripts/run_exp_noise_ratio.py
python ./scripts/run_exp_t_max.py
python ./scripts/run_exp_W_max.py
Run
python ./scripts/plot_exp_cal_size.py
python ./scripts/plot_exp_noise_ratio.py
python ./scripts/plot_exp_t_max.py
python ./scripts/plot_exp_W_max.py
@InProceedings{wang/joachims/2023/uncertainty,
title = {Uncertainty Quantification for Fairness in Two-Stage Recommender Systems},
author = {Wang, Lequn and Joachims, Thorsten},
booktitle = {ACM Conference on Web Search and Data Mining (WSDM)},
year= {2023}
}