An index of algorithms for learning causality with data.
Please cite our survey paper if this index is helpful.
@article{guo2020survey,
title={A survey of learning causality with data: Problems and methods},
author={Guo, Ruocheng and Cheng, Lu and Li, Jundong and Hahn, P Richard and Liu, Huan},
journal={ACM Computing Surveys (CSUR)},
volume={53},
number={4},
pages={1--37},
year={2020},
publisher={ACM New York, NY, USA}
}
Name | Paper | Code |
---|---|---|
DoWhy | Amit Sharma and Emre Kiciman. "Tutorial on Causal Inference and Counterfactual Reasoning." In ACM SIGKDD 2018 | Python |
TETRAD toolbox | Ramsey, Joseph D., Kun Zhang, Madelyn Glymour, Ruben Sanchez Romero, Biwei Huang, Imme Ebert-Uphoff, Savini Samarasinghe, Elizabeth A. Barnes, and Clark Glymour. "TETRAD-AToolbox FOR CAUSAL DISCOVERY." | R |
CausalDiscoveryToolbox | Kalainathan, Diviyan, and Olivier Goudet. "Causal Discovery Toolbox: Uncover causal relationships in Python." arXiv preprint arXiv:1903.02278 (2019). | Python |
Uber CausalML | Chen, Huigang, et al. "Causalml: Python package for causal machine learning." arXiv preprint arXiv:2002.11631 (2020). | Python |
JustCause | For evaluation of heterogeneous treatment effect estimators on common reference as well as synthetic data. Underlying thesis | Python |
WhyNot | An experimental sandbox for causal inference and decision making in dynamics. Documentation | Python |
Name | Paper | Code |
---|---|---|
Causal Dose-Response Curves / Causal Curves | Kobrosly, R. W., (2020). causal-curve: A Python Causal Inference Package to Estimate Causal Dose-Response Curves. Journal of Open Source Software, 5(52), 2523, https://doi.org/10.21105/joss.02523 | Python |
Name | Paper | Code |
---|---|---|
RespSVM | Kallus, Nathan. "Classifying Treatment Responders Under Causal Effect Monotonicity." arXiv preprint arXiv:1902.05482 (2019) | NA |
Name | Paper | Code |
---|---|---|
Variable importance through targeted causal inference | The Github Repo "varimpact" by Alan E. Hubbard and Chris J. Kennedy, University of California, Berkeley | R |
Name | Paper | Code |
---|---|---|
Network Deconfounder | Guo, Ruocheng, Jundong Li, and Huan Liu. "Learning Individual Causal Effects from Networked Observational Data." WSDM 2020. | Python |
Causal Inference with Network Embeddings | Veitch, Victor, Yixin Wang, and David M. Blei. "Using embeddings to correct for unobserved confounding." arXiv preprint arXiv:1902.04114 (2019). | Python |
Name | Paper | Code |
---|---|---|
Linked Causal Variational Autoencoder (LCVA) | Rakesh, Vineeth, Ruocheng Guo, Raha Moraffah, Nitin Agarwal, and Huan Liu. "Linked Causal Variational Autoencoder for Inferring Paired Spillover Effects." CIKM 2018. | Python |
GNN-based Causal Effect Estimators | Ma, Yunpu, Yuyi Wang, and Volker Tresp. "Causal Inference under Networked Interference." arXiv preprint arXiv:2002.08506 (2020). | NA |
Name | Paper | Code |
---|---|---|
Deconfounded RL | Lu, Chaochao, Bernhard Schölkopf, and José Miguel Hernández-Lobato. "Deconfounding reinforcement learning in observational settings." arXiv preprint arXiv:1812.10576 (2018). | Python |
Vansteelandt, Stijn, and Marshall Joffe. "Structural nested models and G-estimation: the partially realized promise." Statistical Science 29, no. 4 (2014): 707-731. | NA | |
Counterfactual-Guided Policy Search (CF-GPS) | Buesing, Lars, Theophane Weber, Yori Zwols, Sebastien Racaniere, Arthur Guez, Jean-Baptiste Lespiau, and Nicolas Heess. "Woulda, Coulda, Shoulda: Counterfactually-Guided Policy Search." arXiv preprint arXiv:1811.06272 (2018). | NA |
Name | Paper | Code |
---|---|---|
Deep Global Balancing Regression | Kuang, Kun, Peng Cui, Susan Athey, Ruoxuan Xiong, and Bo Li. "Stable Prediction across Unknown Environments." In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, pp. 1617-1626. ACM, 2018. | NA |
A Simple Algorithm for Invariant Prediction | Julia |
Name | Paper | Code |
---|---|---|
Odena, Augustus, Jacob Buckman, Catherine Olsson, Tom B. Brown, Christopher Olah, Colin Raffel, and Ian Goodfellow. "Is Generator Conditioning Causally Related to GAN Performance?." arXiv preprint arXiv:1802.08768 (2018). | NA | |
Causal GAN | Kocaoglu, Murat, Christopher Snyder, Alexandros G. Dimakis, and Sriram Vishwanath. "CausalGAN: Learning Causal Implicit Generative Models with Adversarial Training." arXiv preprint arXiv:1709.02023 (2017). | Python |
Name | Paper | Code |
---|---|---|
IC algorithm | Python | |
PC algorithm | P. Spirtes, C. Glymour, and R. Scheines. Causation, Prediction, and Search. The MIT Press, 2nd edition, 2000. | Python R Julia |
FCI algorithm | P. Spirtes, C. Glymour, and R. Scheines. Causation, Prediction, and Search. The MIT Press, 2nd edition, 2000. | R Julia |
DAGs with NO TEARS | Zheng, Xun, Bryon Aragam, Pradeep K. Ravikumar, and Eric P. Xing. "DAGs with NO TEARS: Continuous optimization for structure learning." NeurIPS 2018. | Numpy, Pytorch |
DAG-GNN | {Yue Yu, Jie Chen, Tian Gao, and Mo Yu. "DAG-GNN: DAG Structure Learning with Graph Neural Networks." ICML 2019. | Pytorch |
Name | Paper | Code |
---|---|---|
BMLiNGAM | S. Shimizu and K. Bollen. Bayesian estimation of causal direction in acyclic structural equation models with individual-specific confounder variables and non-Gaussian distributions. Journal of Machine Learning Research, 15: 2629-2652, 2014. | Python |
Name | Paper | Code |
---|---|---|
RCIT | R |
Name | Paper | Code |
---|---|---|
Causal PSL | Sridhar, Dhanya, Jay Pujara, and Lise Getoor. "Scalable Probabilistic Causal Structure Discovery." In IJCAI, pp. 5112-5118. 2018. | Java |
Name | Paper | Code |
---|---|---|
TCDF: Temporal Causal Discovery Framework | Nauta, Meike, Doina Bucur, and Christin Seifert. "Causal discovery with attention-based convolutional neural networks." Machine Learning and Knowledge Extraction. | Pytorch |
Name | Paper | Code |
---|---|---|
Scalable and Hybrid Ensemble-Based Causality Discovery | Pei Guo, Achuna Ofonedu, Jianwu Wang. "Scalable and Hybrid Ensemble-Based Causality Discovery." In Proceedings of the 2020 IEEE International Conference on Smart Data Services (SMDS), pp. 72-80. | Python |