Causality and Machine Learning

Day 3: Estimation and causal inference

This day focuses on the transition from identification formulas to estimators. The goal is to understand how causal estimands can be estimated from observed data using outcome regression, inverse probability weighting, doubly robust estimators, and flexible machine-learning nuisance estimation.

This session is given by Johan de Aguas.

Learning objectives

By the end of this session, students should be able to:

Schedule and notebooks

Time Topic Format
10:05–10:45 Introduction, formalisms and causal effects Lecture
10:45–11:00 Common causal estimands Marimo lab
11:00–11:15 The causal roadmap, identification Lecture
11:15–11:45 Estimation: parametric and ML plug-in Lecture
11:45–12:00 Estimation: parametric and ML plug-in Marimo lab
12:00–13:00 Lunch  
13:05–13:45 AIPW and double robustness Lecture
13:45–14:15 State-of-the-art and NN architectures Lecture
14:15–14:30 AIPW Marimo lab
14:30–15:00 Influence function, DML (and TMLE*) Lecture
15:00–15:30 AIPW, DML (and TMLE*) Marimo lab
15:30–16:00 Heterogeneous treatment effect  
16:00–16:30 Heterogeneous treatment effect Marimo lab

Computational setup

Students should have a working Python 3.11 or 3.12 environment. We will use the following libraries:

python -m venv .venv
source .venv/bin/activate
pip install numpy pandas scipy scikit-learn matplotlib statsmodels jupyterlab marimo pgmpy

Advanced readings

Tutorials, online books and resources