Identifiability of causal graphs using functional models


Conference Paper


This work addresses the following question: Under what assumptions on the data generating process can one infer the causal graph from the joint distribution? The approach taken by conditional independencebased causal discovery methods is based on two assumptions: the Markov condition and faithfulness. It has been shown that under these assumptions the causal graph can be identified up to Markov equivalence (some arrows remain undirected) using methods like the PC algorithm. In this work we propose an alternative by Identifiable Functional Model Classes (IFMOCs). As our main theorem we prove that if the data generating process belongs to an IFMOC, one can identify the complete causal graph. To the best of our knowledge this is the first identifiability result of this kind that is not limited to linear functional relationships. We discuss how the IFMOC assumption and the Markov and faithfulness assumptions relate to each other and explain why we believe that the IFMOC assumption can be tested more easily on given data. We further provide a practical algorithm that recovers the causal graph from finitely many data; experiments on simulated data support the theoretical fndings.

Author(s): Peters, J. and Mooij, J. and Janzing, D. and Schölkopf, B.
Pages: 589-598
Year: 2011
Month: July
Day: 0
Editors: FG Cozman and A Pfeffer
Publisher: AUAI Press

Department(s): Empirical Inference
Research Project(s): Causality (Causal Inference)
Bibtex Type: Conference Paper (inproceedings)

Address: Corvallis, OR, USA
Digital: 0
Event Name: 27th Conference on Uncertainty in Artificial Intelligence (UAI 2011)
Event Place: Barcelona, Spain
ISBN: 978-0-9749039-7-2

Links: PDF


  title = {Identifiability of causal graphs using functional models},
  author = {Peters, J. and Mooij, J. and Janzing, D. and Sch{\"o}lkopf, B.},
  pages = {589-598},
  editors = {FG Cozman and A Pfeffer},
  publisher = {AUAI Press},
  address = {Corvallis, OR, USA},
  month = jul,
  year = {2011},
  month_numeric = {7}