Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/networks-learning/counterfactual-continuous-mdp
Code for "Finding Counterfactually Optimal Action Sequences in Continuous State Spaces", NeurIPS 2023.
https://github.com/networks-learning/counterfactual-continuous-mdp
causality counterfactuals decision-making decision-making-under-uncertainty explainable-ai explainable-ml machine-learning markov-decision-processes
Last synced: about 6 hours ago
JSON representation
Code for "Finding Counterfactually Optimal Action Sequences in Continuous State Spaces", NeurIPS 2023.
- Host: GitHub
- URL: https://github.com/networks-learning/counterfactual-continuous-mdp
- Owner: Networks-Learning
- Created: 2023-05-31T19:48:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-18T06:59:45.000Z (about 1 year ago)
- Last Synced: 2024-04-16T02:14:54.101Z (7 months ago)
- Topics: causality, counterfactuals, decision-making, decision-making-under-uncertainty, explainable-ai, explainable-ml, machine-learning, markov-decision-processes
- Language: Python
- Homepage: https://arxiv.org/abs/2306.03929
- Size: 85.9 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Finding Counterfactually Optimal Action Sequences in Continuous State Spaces
This repository contains the code used in the paper ["Finding Counterfactually Optimal Action Sequences in Continuous State Spaces"](https://arxiv.org/abs/2306.03929), published at NeurIPS 2023.
## Dependencies
All the experiments were performed using Python 3.9. In order to create a virtual environment and install the project dependencies you can run the following commands:
```bash
python3 -m venv env
source env/bin/activate
pip install -r requirements.txt
```## Code organization
The directory [src](src/) contains the source code for the experiments.
The directory [scripts](scripts/) contains bash scripts that use the aforementioned code and pass parameter values required for the various experiments.
* ``build_datasets.sh`` is preprocessing the sepsis management data
* ``build_scm.sh`` is used to train the final SCM
* ``cv_scm.sh`` is used to evaluate the goodness of fit of the SCM via cross-validation, under different values of the networks' Lipschitz constants
* ``grande_experiment_slurm.sh`` is the main script used to run experiments using a slurm scheduler and this is where each experiment's configuration is set
* ``single_experiment_slurm.sh`` is a helper script called by ``grande_experiment_slurm.sh``
* ``solve_facility_location.sh`` is used to precompute anchor sets using the Facility-Location methodThe directory [notebooks](notebooks/) contains jupyter notebooks producing the figures appearing in the paper. Each notebook reads output files generated by scripts. For details, see ``grande_experiment_slurm.sh`` and the description within each notebook.
The directory [figures](figures/) is used for saving the figures produced by the notebooks.
The directory [outputs](outputs/) and its sub-directories are used for saving the outputs generated by the scripts.
## Citation
If you use parts of the code in this repository for your own research, please consider citing:
@inproceedings{tsirtsis2023finding,
title={Finding Counterfactually Optimal Action Sequences in Continuous State Spaces},
author={Tsirtsis, Stratis and Gomez-Rodriguez, Manuel},
booktitle={Advances in Neural Information Processing Systems (NeurIPS)},
year={2023}
}