Metadata-Version: 2.1
Name: sdcd
Version: 0.1.0
Summary: Stable differentiable causal discovery for interventional data.
License: MIT
Author: Achille Nazaret
Author-email: aon2108@columbia.edu
Requires-Python: >=3.9,<3.12
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Provides-Extra: benchmark
Provides-Extra: tests
Requires-Dist: anndata (>=0.10.3,<0.11.0) ; extra == "tests"
Requires-Dist: click (>=8.1.7,<9.0.0) ; extra == "benchmark"
Requires-Dist: gies (>=0.0.1,<0.0.2) ; extra == "tests" or extra == "benchmark"
Requires-Dist: matplotlib (>=3.8.1,<4.0.0) ; extra == "benchmark"
Requires-Dist: networkx (>=3.2.1,<4.0.0)
Requires-Dist: numba (>=0.58.1,<0.59.0)
Requires-Dist: pandas (>=1.1.1,<2.0.0)
Requires-Dist: pytest (>=7.4.3,<8.0.0) ; extra == "tests"
Requires-Dist: pytorch-lightning (==1.5.10) ; extra == "tests" or extra == "benchmark"
Requires-Dist: scikit-learn (>=1.3.2,<2.0.0) ; extra == "tests" or extra == "benchmark"
Requires-Dist: scipy (>=1.11.3,<2.0.0)
Requires-Dist: seaborn (>=0.13.0,<0.14.0) ; extra == "benchmark"
Requires-Dist: tensorflow (>=2.9.1,<3.0.0) ; (sys_platform == "linux") and (extra == "tests" or extra == "benchmark")
Requires-Dist: tensorflow-macos (>=2.9.2,<3.0.0) ; (sys_platform == "darwin") and (extra == "tests" or extra == "benchmark")
Requires-Dist: torch (>=2.1.0,<3.0.0)
Requires-Dist: tqdm (>=4.66.1,<5.0.0)
Requires-Dist: wandb (>=0.15.12,<0.16.0)
Description-Content-Type: text/markdown

# SDCD: Stable Differentiable Causal Discovery

SDCD is a method for inferring causal graphs from labeled interventional data.\
You can read the associated preprint, ["Stable Differentiable Causal Discovery"](https://arxiv.org/abs/2311.10263), on arXiv.

![sdcd-cartoon](https://github.com/azizilab/sdcd/assets/14086852/f1d29a7a-7835-401c-a06e-aabcf8c77ec6)


If you find this work useful, please consider citing our work:

```bibtex
@article{nazaret2023stable,
  title={Stable Differentiable Causal Discovery}, 
  author={Achille Nazaret and Justin Hong and Elham Azizi and David Blei},
  journal={arXiv preprint arXiv:2311.10263},
  year={2023}
}
```

---
## Quick Start

For the main implementation of the method, see the [SDCD](sdcd/models/_sdcd.py) class.

For a tutorial on the basic usage of SDCD, see [this notebook](tutorials/SDCD_basic_usage.ipynb).

Code used to generate paper figures can be found in [this folder](paper_experiments/).


