Source-code for paper Distributionally Robust Recourse Action (DiRRAc) (ICLR 2023)
pip install -r requirements.txt
-
Feasible set of DiRRAc: Figure2
-
Comparison of DiRRAc and ROAR: Figure3
-
Impact of magnitude of distribution shifts to the empirical validity: Figure4
-
Different types of data distribution shifts: Figure5
-
Model parameters in 2D: Figure6
-
Impact of varying parameters of DiRRAc: Figure7
-
Cost of Robustness of DiRRAc: Figure9
Results of each figure are saved in result/
Generate recourse and evaluate on 3 different real-world datasets:
python train_real_data.py --mode linear --num_samples <number of samples to evaluate>
Example:
python train_real_data.py --mode linear --num_samples 40
Experiments with prior on the covariance matrix:
python train_real_data.py --mode linear --num_samples <number of samples to evaluate> --sigma_identity True
Example:
python train_real_data.py --mode linear --num_samples 40 --sigma_identity True
Result of csv format is saved in result/real_data/
Generate recourse for non-linear model and evaluate on 3 different real-world datasets:
python train_real_data.py --mode non --num_samples <number of samples to evaluate>
Example:
python train_real_data.py --mode non --num_samples 20