Pretty much, I need to read the book again. There were a couple of parts I just pushed through. As a first pass here are some things I picked out as being interesting.
Why causal models?
- They provide a nice representation that allows us to ask many different questions. A kind if transfer of knowledge between experiments, and queries.
- The assumptions made are clear. Graphs are intuitive.
- Allow us to make strong inferences from data.
Inferring the causal graph
A recurring question I had was: but how do we know our causal model is correct? and what guarantees on inference are there if it is mostly correct, except for a couple of mistakes?
I want to know how to falsify a proposed graph. Which experiments/queries/estimands can I use? Which ones are the cheapest?
It seems interesting to note that we use all sorts of heuristics to help us infer a causal graph. Temporal and spatial proximity, simplicity, egocentric biases, …
Skeptical
I thought I was skeptical of scientific research already, but this takes me to a whole new level. The examples Judea gave highlight new ways (at least to me) that we can fool ourselves.
- Simpsons paradox was … Depending on your causal model, the data will support either conclusion.
- Confounder on an indirect mediator
- …
Calculus
How does all of this relate to calculus?
If two variables correlate then that means we can fit a linear model to them. This is pretty much the definition of a derivative, the slope of a linear approximation at x. So when we ask if two variables are independent we are asking if their gradient w.r.t each other is zero. Similarly, with direct/indirect mediation, we are doing a sensitivity analysis. If y = g(x, z), z = f(x), then we want to know dy/dx and dy/dfz (partial derivatives).
And how do counterfactuals relate to finite differences? Imagine a world where … counterfactual = f(x=1) - f(x=0). Which, in this case, IS a finite difference!
I am interested in exploring these connections further.
Automated science
I love the idea of a robot systematically trying to understand the world. Conjuring hypotheses and designing experiments.
- How can agents use the do operator to collect data about their environments? (aka active learning)
- How can agents use models of their environments to achieve more efficient learning through counterfactuals? (aka model based learning)
Questions and thoughts
I got lost in a few places. I plan on working through the math/details of;
- simple examples
- non linear causal models and ‘interaction’
- the back and front door adjustments
- sufficient and necessary…
- natural and controlled effect
- how causes from two nodes combine to produce the caused node.
So, pretty much everything… Next goal is to write a tutorial on these.
Other thoughts
- I am still not sure of what I think about Judea’s solution to uncertainty in causal models: add noise.
- Judea made a comment about how information about a variable that cannot be measured can leak through controlled proxies. Want to look into this.