Causal models are powerful reasoning tools, but usually we don't know which model is the correct one. Traditionally, one first aims to find the correct causal model from data, which is then used for causal reasoning.
How about a Bayesian approach? I.e., we put a prior over a class of causal models, and, when observing new data, we simply update the posterior using Bayes' rule?
Advantage 1. We maintain our uncertainty about the causal model in a rigorous way (because it's Bayesian 🥰😍).
Advantage 2. This uncertainty can be used for causal predictions using Bayes predictive distributions. Specifically, we define the "causal query function" q, which represents what we want to know from the model (the whole graph, particular edges, some causal effect, etc).
Advantage 3. We can get active about learning the model, e.g. by maximizing Information Gain derived from our posterior. Roughly, this iteratively designs optimal interventional experiments, so that we learn as much as possible about the model.
Advantage 4 is a combination of Advantage 2 and 3: we can get active about causal queries of interest, by maximizing Information Gain of the query posterior! Thus, even if we are still uncertain about the model, we might already be pretty certain about the target causal query!
We have developed a tractable implementation for non-linear additive Gaussian noise models, using a DIBs prior over causal graphs and Gaussian processes for the causal mechanisms.
The implementation scales to several dozens of variables and indeed learns target causal queries faster than competing methods.
We are happy if you drop by on Tuesday 29th Nov in New Orleans! Let's have a chat about this cool work!