Test-Time Learning of Causal Structure from Interventional Data
Organizations: HKUST · HKUST(GZ) · Microsoft Research · Sony Research ·
Abstract
Supervised causal learning has shown promise in causal discovery, yet it often struggles with generalization across diverse interventional settings, particularly when intervention targets are unknown. To address this, we propose TICL (Test-time Interventional Causal Learning), a novel method that synergizes Test-Time Training with Joint Causal Inference. Specifically, we design a self-augmentation strategy to generate instance-specific training data at test time, effectively avoiding distribution shifts. Furthermore, by integrating joint causal inference, we developed a PC-inspired two-phase supervised learning scheme, which effectively leverages self-augmented training data while ensuring theoretical identifiability. Extensive experiments on bnlearn benchmarks demonstrate TICL's superiority in multiple aspects of causal discovery and intervention target detection.
Figures & tables
| Methods | TICL | JCI-PC | JCI-BLIP | JCI-HC | JCI-GOLEM | AVICI ∗ | ENCO ∗ | IGSP ∗ | UT-IGSP | GIES | ||||||||||||||||||||
| SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | SHD | SID | F1 | |
| Earthquake | 0 | 0 | 1.00 | 0 | 0 | 1.00 | 0 | 0 | 1.00 | 5 | 14 | 0.40 | 6 | 19 | 0.00 | 3 | 6 | 0.40 | 3 | 12 | 0.67 | 0 | 0 | 1.00 | 0 | 0 | 1.00 | 1 | 0 | 0.89 |
| Survey | 0 | 0 | 1.00 | 5 | 18 | 0.40 | 1 | 4 | 0.91 | 0 | 0 | 1.00 | 7 | 23 | 0.40 | 8 | 18 | 0.22 | 5 | 21 | 0.29 | 1 | 4 | 0.91 | 1 | 4 | 0.91 | 1 | 4 | 0.91 |
| Asia | 2 | 13 | 0.86 | 4 | 19 | 0.75 | 3 | 18 | 0.77 | 6 | 28 | 0.46 | 15 | 36 | 0.00 | 7 | 28 | 0.31 | 6 | 13 | 0.74 | 4 | 17 | 0.62 | 5 | 24 | 0.73 | 4 | 14 | 0.77 |
| Sachs | 3 | 6 | 0.90 | 19 | 56 | 0.52 | 7 | 41 | 0.67 | 5 | 29 | 0.74 | 18 | 61 | 0.11 | 37 | 46 | 0.22 | 41 | 42 | 0.26 | 10 | 16 | 0.70 | 13 | 21 | 0.61 | 15 | 38 | 0.48 |
| Child | 7 | 67 | 0.81 | 40 | 299 | 0.62 | 10 | 188 | 0.78 | 16 | 211 | 0.65 | 41 | 330 | 0.21 | / | / | / | 110 | 251 | 0.06 | 29 | 124 | 0.63 | 33 | 214 | 0.45 | 46 | 197 | 0.29 |
| Datasets | Earthquake | Survey | Asia | Sachs | Child | Insurance | Water | Mildew | Alarm | Barley | Hailfinder | Hepar2 | Win95pts | Pathfinder | Rank (F1) |
| UT-IGSP | 0.50 | 1.00 | 0.44 | 0.33 | 0.35 | 0.17 | / | 0.22 | 0.15 | / | 0.27 | 0.23 | / | 0.04 | 5.14 3.27 |
| CITE | 1.00 | 1.00 | 0.67 | 0.36 | 0.67 | 0.32 | / | 0.38 | 0.56 | / | 0.67 | 0.61 | / | 0.60 | 3.07 2.21 |
| PreDITEr | 1.00 | 1.00 | 0.67 | 0.50 | – | – | / | – | – | / | – | – | / | / | 5.21 5.17 |
| JCI-GOLEM | 0.67 | 0.40 | 0.40 | 0.22 | 0.18 | 0.11 | 0.23 | – | – | – | – | – | – | – | 6.29 2.20 |
| JCI-HC | 1.00 | 0.50 | 0.67 | 0.57 | 0.40 | 0.29 | 0.33 | 0.34 | 0.29 | 0.26 | 0.23 | 0.23 | – | – | 4.14 1.98 |
| JCI-BLIP | 1.00 | 1.00 | 0.80 | 0.67 | 0.57 | 0.45 | 0.44 | 0.35 | 0.38 | 0.34 | 0.34 | 0.82 | 0.29 | 0.23 | 2.43 0.67 |
Appendix figures & tables23 assets
Supplementary material from the paper’s appendix.
Appendix
| Skeleton Feature | ||||
| Type | Name | Calculate | Example Raw Results | Dimension |
| CI Test Information | -order Conditional Dependence | [0.6, 0.3, 0.7, 0.4, 0.6, 0.1] | Not Fixed 15 | |
| Residual Conditional Dependence | , | [0.4, 0.2, 0.4 ,0.7] | Not Fixed 15 | |
| Structural Information | Competitiveness | [0.5, 0.75, 0.8] | 3 | |
| Degree | [4, 4] | 2 | ||
| Density | [1] | 1 | ||
| Orientation Feature | ||||
| Type | Name | Calculate | Example Raw Results | Dimension |
| CI Test Information | Vicinity Conditional Dependence | [0.9, 0.8, 0.8, 0.6, 0.8, 0.7, 0.7, 0.8, 0.8, 0.7, 0.5, 0.4, 0.8, 0.4, 0.4, 0.3, 0.6, 0.2, 0.9, 0.8, 0.9, 0.7, 0.6, 0.4] | 24 | |
| Structural Information | Overlap | [0.5, 0, 0.5, 0.5, 0, 0.5, 1] | 7 | |
| Scaling | 5 | |||
| Network | #Nodes | #Edges | #Parameters | Max in-degree | Avg. degree |
| Earthquake | 5 | 4 | 10 | 2 | 1.60 |
| Survey | 6 | 6 | 21 | 2 | 2.00 |
| Asia | 8 | 8 | 18 | 2 | 2.00 |
| Sachs | 11 | 17 | 178 | 3 | 3.09 |
| Child | 20 | 25 | 230 | 2 | 2.50 |
| Insurance | 27 | 52 | 1,008 | 3 | 3.85 |
| Methods | Groun-Truth DAG | Testing Data | Intervention Experiment | |||||
| Type | #Variable | Type | #Obs. | #Int. / per exp. | Type | #Int. Family | #Int. Target | |
| GIES | Random Graph ( 2007 ) (Linear Gaussian SEM) | 10 50 | Continue | 50 10k | 50 10k | Single / Multiple Know Hard | #Var. * { .0 / .2 / .4 / .6 / .8 / 1.0 } | 1 4 |
| IGSP | ER (Linear Gaussian SEM) | 10 20 | Continue | 1k 100k | 1k 100k | Single / Multiple Know Hard / Soft | 1 2 | #Var. * { 0.4 / 0.5 } |
| UT-IGSP | ER (Linear Gaussian SEM) | 20 | Continue | 1k 5k | 1 5k | Single / Multiple Know / Unknow Hard / Soft | Know: (5) + Unknow: (5) | Know: (1) + Unknow: (0 3) |
| DCDI | ER (LGM / ANM / NN) | 10-20 | Continue | 10k | 10k | Single / Multiple Know / Unknow Hard / Soft | #Variable | #Var. * 0.1 |
| SDI | Random Graph (NN) bnlearn | 3 13 | Discrete | 2560 (from code) | 1111 (from code) | Single Know Soft | #Variable | 1 |
| Methods | Causal Insufficiency | Interv. Frequency | Interv. Mechanism | Data Type | Domain | ||||
| Single | Multiple | Hard | Soft | Continue | Discrete | Single | Multiple | ||
| UT-IGSP | ✗ | ✓ | ✓ | ✓ | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✓ |
| CITE | ✗ | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✗ |
| PreDITEr | ✗ | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✗ |
| LIT | ✓ | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✓ | \color[rgb]{0.3555,0.6094,0.8359}{\bm{\sim}} | ✓ | ✓ |
| in Predict→ in Ground-Truth↓ | identifiable (directed) | unidentifiable (undirected) | missing in skeleton | |
| right | wrong | |||
| identifiable | ➀ ✓ | ➁ ✗ | ➂ ✗ | ➃ ✗ |
| unidentifiable | ➄ ✗ | ➅ ✓ | ➆ ✗ | |
| nonexist | ➇ ✗ | ➈ ✗ | ➉ ✓ | |
| Category | Detail | Hyperparameters or Settings |
| Training Data | #Training Instances | 400 (default) |
| 100 1600 (others, see 4.2 ) | ||
| #Simples / per Instance | 10k (default) | |
| 1k 20k (others, see 4.2 ) | ||
| Testing Data | #Observation Sample | 10k (default) |
| 2k 10k (others, see F.2.2 ) |
| Datasets #nodes / #edges | Metric | TICL | JCI-GOLEM | JCI-PC | JCI-BLIP | JCI-HC | AVICI ∗ | ENCO ∗ | IGSP ∗ | GIES | UT-IGSP |
| Earthquake 5 / 4 | F1 Score | 1.00 | 0.00 | 1.00 | 1.00 | 0.00 | 0.29 | 0.67 | 1.00 | 1.00 | 1.00 |
| SHD | 0 | 6 | 0 | 0 | 4 | 4 | 2 | 0 | 0 | 0 | |
| SID | 0 | 13 | 0 | 0 | 20 | 10 | 2 | 0 | 0 | 0 | |
| Survey 6 / 6 | F1 Score | 1.00 | 0.40 | 0.40 | 0.73 | 0.73 | 0.00 | 0.44 | 0.91 | 0.91 | 0.91 |
| SHD | 0 | 7 | 4 | 2 | 2 | 6 | 4 | 1 | 1 | 1 | |
| SID | 0 | 23 | 18 | 9 | 9 | 17 | 16 | 4 | 4 | 4 |
| Datasets | Earthquake | Survey | Asia | Sachs | Child | Insurance | Water |
| 1 | 1 | 2 | 2 | 4 | 5 | 6 | |
| UT-IGSP | 0.40 | 0.50 | 0.44 | 0.40 | 0.36 | 0.22 | / |
| CITE | 1.00 | 1.00 | 1.00 | 0.57 | 0.40 | 0.55 | / |
| PreDITEr | 0.67 | / | 1.00 | 0.67 | – | – | / |
| JCI-GOLEM | 0.67 | 1.00 | 0.00 | 0.18 | 0.22 | 0.28 | 0.21 |
| JCI-HC | 0.50 | 1.00 | 0.36 | 0.67 | 0.47 | 0.34 | 0.32 |
| Datasets #nodes / #edges | Metric | TICL | JCI-GOLEM | JCI-PC | JCI-BLIP | JCI-HC | IGSP ∗ | GIES | UT-IGSP |
| Earthquake 5 / 4 | F1 Score | 0.60 | 0.00 | 0.55 | 1.00 | 0.25 | 1.00 | 0.40 | 1.00 |
| SHD | 4 | 5 | 4 | 0 | 6 | 0 | 7 | 0 | |
| SID | 9 | 18 | 3 | 0 | 15 | 0 | 6 | 0 | |
| Survey 6 / 6 | F1 Score | 0.83 | 0.00 | 0.40 | 0.91 | 0.83 | 0.91 | 0.00 | 0.91 |
| SHD | 2 | 9 | 4 | 1 | 1 | 1 | 6 | 1 | |
| SID | 10 | 30 | 18 | 4 | 6 | 4 | 30 | 4 |
| Datasets | Earthquake | Survey | Asia | Sachs | Child | Insurance | Water |
| 3 | 3 | 6 | 6 | 4 | 5 | 12 | |
| UT-IGSP | 0.86 | 0.86 | 0.67 | 0.57 | 0.80 | 0.24 | / |
| CITE | 0.80 | 1.00 | 0.67 | 0.43 | 0.33 | 0.71 | / |
| PreDITEr | 0.80 | 0.50 | / | 0.29 | – | – | / |
| JCI-GOLEM | 0.33 | 0.80 | 0.62 | 0.47 | 0.21 | 0.14 | 0.23 |
| JCI-HC | 0.57 | 1.00 | 0.67 | 0.67 | 0.50 | 0.33 | 0.38 |
| Datasets #nodes / #edges | Metric | TICL | JCI-GOLEM | JCI-PC | JCI-BLIP | JCI-HC | AVICI ∗ | ENCO ∗ | IGSP ∗ | GIES | UT-IGSP |
| Earthquake 5 / 4 | F1 Score | 1.00 | 0.00 | 0.89 | 1.00 | 1.00 | 0.00 | 0.67 | 1.00 | 1.00 | 1.00 |
| SHD | 0 | 7 | 1 | 0 | 1 | 4 | 2 | 0 | 0 | 0 | |
| SID | 0 | 12 | 0 | 0 | 0 | 10 | 2 | 0 | 0 | 0 | |
| Survey 6 / 6 | F1 Score | 0.73 | 0.00 | 0.33 | 0.73 | 0.00 | 0.00 | 0.60 | 0.91 | 0.91 | 0.91 |
| SHD | 2 | 11 | 6 | 2 | 7 | 5 | 3 | 1 | 1 | 1 | |
| SID | 9 | 30 | 22 | 9 | 30 | 17 | 14 | 4 | 4 | 4 |
| Datasets | Earthquake | Survey | Asia | Sachs | Child | Insurance | Water |
| 1 | 1 | 2 | 2 | 4 | 5 | 6 | |
| UT-IGSP | 0.33 | 1.00 | 0.57 | 1.00 | 0.36 | 0.27 | / |
| CITE | 1.00 | 0.67 | 0.67 | 1.00 | 0.40 | 0.22 | / |
| PreDITEr | 0.67 | 1.00 | / | 0.40 | 0.33 | – | / |
| JCI-GOLEM | 0.00 | 1.00 | 0.00 | 0.27 | 0.15 | 0.11 | 0.00 |
| JCI-HC | 1.00 | 0.67 | 0.50 | 0.80 | 0.40 | 0.37 | 0.36 |
| Datasets #nodes / #edges | Metric | TICL | JCI-GOLEM | JCI-PC | JCI-BLIP | JCI-HC | AVICI ∗ | ENCO ∗ | IGSP ∗ | GIES | UT-IGSP |
| Earthquake 5 / 4 | F1 Score | 0.86 | 0.00 | 0.86 | 1.00 | 1.00 | 0.17 | 0.57 | 1.00 | 0.00 | 1.00 |
| SHD | 1 | 6 | 1 | 0 | 0 | 8 | 3 | 0 | 4 | 0 | |
| SID | 1 | 16 | 1 | 0 | 0 | 13 | 2 | 0 | 16 | 0 | |
| Survey 6 / 6 | F1 Score | 0.73 | 0.00 | 0.40 | 0.73 | 0.29 | 0.00 | 0.25 | 0.50 | 0.36 | 0.50 |
| SHD | 2 | 12 | 4 | 2 | 6 | 7 | 5 | 4 | 4 | 4 | |
| SID | 11 | 30 | 18 | 9 | 29 | 22 | 18 | 11 | 20 | 11 |
| Datasets | Earthquake | Survey | Asia | Sachs | Child | Insurance | Water |
| 1 | 1 | 2 | 2 | 4 | 5 | 6 | |
| UT-IGSP | 0.33 | 0.67 | 0.40 | 0.67 | 0.81 | 0.24 | / |
| CITE | / | 1.00 | / | 1.00 | 0.33 | 0.38 | / |
| PreDITEr | / | 1.00 | / | / | 0.40 | – | / |
| JCI-GOLEM | 0.00 | 0.00 | 0.00 | 0.27 | 0.15 | 0.27 | 0.20 |
| JCI-HC | 1.00 | 0.67 | 0.44 | 0.50 | 0.57 | 0.37 | 0.30 |
| Methods | Learning Paradigm | Problem Space | Intervention Targets | Test-time Training | |||||
| Unknown | Known | Hard | Soft | Single | Multiple | ||||
| DAG-GFlowNet ( Deleu et al., 2022 ) | Unsupervised Generative Learning | Interventional (Passive) | ✗ | ✓ | ✓ | ✗ | ✓ | ✓ | ✗ |
| GFlowCausal ( Li et al., 2022 ) | Unsupervised Generative Learning | Observational | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
| CORE ( Sauter et al., 2024 ) | Reinforcement Learning | Interventional (Active) | ✗ | ✓ | ✓ | ✗ | ✓ | ✓ | ✗ |
| meta-CGNN ( Ton et al., 2021 ) | Meta-Learning | Observational (Bivariate) | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
| DAG-GNN ( Yu et al., 2019 ) | Unsupervised Learning | Observational | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ | ✗ |
| Feature | Other MCMC sampling methods ( Ellis and Wong, 2008 ; Choi et al., 2020 ) | IS-MCMC (Our) |
| Sampling Space | Standard graph space (for posterior estimation) | Intervention-augmented graph space (JCI framework) |
| Intervention Handling | Cannot handle unknown intervention targets | Handles unknown intervention targets |
| Usage | Posterior inference | Generates diverse training pairs for TTT |
| Constraints | Standard graph constraints | Enforces intervention constraints |
| Objective | Posterior estimation | Data generation for adaptation |
Causal Structure Learning
Causal structure learning infers directed relationships among variables from observational, interventional, or time-series data.
See all 123 papers