The phenomenon in which the treatment effect varies with an individual’s characteristics
τ(x)=E[Y(1)−Y(0)∣X=x]
If τ(x) varies with x, then heterogeneous treatment effects (HTE) are present.
| Type | Definition | Example |
|---|
| Homogeneous | τ(x)=τ (constant) | The same drug effect for all patients |
| Heterogeneous | τ(x) depends on x | A larger drug effect for younger patients |
- Personalized decision-making: deciding whom to treat
- Policy targeting: prioritizing groups with large effects
- Resource optimization: efficient allocation of limited resources
- Scientific understanding: insight into mechanisms
| Concept | Definition | Relationship |
|---|
| ITE | Yi(1)−Yi(0) | Individual-level effect |
| CATE | E[Y(1)−Y(0)∣X=x] | Functional representation of HTE |
| HTE | Variability of CATE | If CATE varies, HTE is present |
| ATE | E[Y(1)−Y(0)] | The average of CATE |
CATE estimation leveraging existing ML algorithms:
| Method | Approach | Characteristics |
|---|
| S-Learner | Single model | Simple; suitable when HTE is negligible |
| T-Learner | Separate model per treatment | Flexible; no information sharing |
| X-Learner | Two-stage imputation | Suitable for imbalanced data |
| R-Learner | Residualized regression | Theoretical guarantees |
| Method | Characteristics |
|---|
| Causal Forest | Heterogeneity-based splitting, provides confidence intervals |
| BART | Bayesian uncertainty quantification |
| Method | Characteristics |
|---|
| CFR | Balanced representation learning |
| CEVAE | VAE-based latent confounder inference |
| BNN | Balancing Neural Network |
| GANITE | GAN-based ITE estimation |
| Method | Characteristics |
|---|
| CMGP | Gaussian Process multi-task |
| Dragonnet | Targeted regularization |
# Estimate CATE with a Causal Forest
from econml.dml import CausalForestDML
cf = CausalForestDML()
cf.fit(Y, T, X)
cate = cf.effect(X)
# Check heterogeneity
print(f"CATE std: {cate.std():.3f}")
print(f"CATE range: [{cate.min():.3f}, {cate.max():.3f}]")
# Effect analysis by characteristic
for group in ['young', 'old']:
idx = X['age_group'] == group
print(f"{group}: CATE = {cate[idx].mean():.3f}")
# Which variables contribute to heterogeneity?
importance = cf.feature_importances_
- Finding high-effect groups via post-hoc analysis → multiple-comparisons problem
- Separate validation data required
- Do not draw conclusions from point estimates alone
- Account for uncertainty
- CATE estimation ≠ optimal treatment decision
- A causal interpretation of the interventional effect is needed
- “Which treatment is optimal for this patient?”
- Side-effect risk vs. effect trade-off
- “For which customers is the promotion effective?”
- Uplift modeling
- “To which group should the policy be applied first?”
- Optimization under resource constraints
- “For which users is this content effective?”
- Connected to MOC-LLM4RecSys, etc.
| Metric | Definition | Use |
|---|
| PEHE | E[(τ(X)−τ^(X))2] | CATE estimation accuracy |
| ATE Estimation Error | $ | \text{ATE} - \widehat{\text{ATE}} |
| Qini coefficient | Based on the uplift curve | Targeting efficiency |
- Treatment Effects Overview - integrated overview of treatment effects
- CATE - functional definition of CATE
- ITE - individual-level effect
- Meta-learners - HTE estimation framework
- Causal Forest - tree-based HTE
- CFR - representation-learning-based HTE
- PEHE - HTE evaluation metric
- yaoSurveyCausalInference2021 - Section 2.2, 3.4, 3.5
- kunzelMetalearnersEstimatingHeterogeneous2019 - Meta-learners
- Athey, S., & Imbens, G. (2016). Recursive partitioning for heterogeneous causal effects
- Wager, S., & Athey, S. (2018). Estimation and inference of HTE using random forests