Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

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.

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 method

The 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}
}