Anchored-Delta Correction on PXR
Verdict: negative
Correcting predictions with nearest-analog residuals does not improve held-out PXR error for Chemprop or TabICL + Monroe. Every paired 95% interval includes zero.
Causal-Chemprop reports gains on kinase pIC50 (ABL1, AURKA, SRC) from counterfactual inference. It fits a structural causal model (SCM) over Chemprop's latent dimensions plus pIC50, infers a measured anchor compound's noise term, then swaps the high-influence latent dimensions for the target's. Because the anchor's noise term is kept, the prediction amounts to the anchor's measured value plus a predicted change. This spike tests that anchoring core in its simplest form, on a larger dataset.
Method
\(s_j\) is Tanimoto similarity (sparse count Morgan, radius 2) to anchor \(j\), and \(r_j = y_j - \text{pred}_j\) is its residual. With \(k=1, \alpha=1\) this is exactly the anchored baseline \(\text{pred}(x) - \text{pred}(a) + y(a)\).
| Data | openadmet_pxr_f1: 4,139 training compounds; 253 held-out Analog Set 1 (pxr_phase1_test capture) |
| Models | pxr-reg-chemprop-phase1, pxr-reg-tabicl-monroe-readout-phase1 (5-fold scaffold CV) |
| Selection | \(k \in \{1,3,5,10,25\}\), \(\alpha \in \{0.25,0.5,0.75,1.0\}\), chosen on training OOF by leave-one-out over the anchor pool, then applied once to the held-out set |
| Train anchors | OOF residuals of the training compounds (usable for a blind submission) |
| Series anchors | The other held-out compounds' residuals, leave-one-out (closest to the paper's setting: part of the new series is already measured) |
| Test-tuned | \((k, \alpha)\) swept on the held-out set itself; an optimistic ceiling, not a result |
resid_corr is the Spearman correlation between a compound's residual and the correction its neighbors supply. It is the direct test of whether there is local structure to transfer.
Results
Held-out RAE (lower is better), deltas paired-bootstrapped against the baseline.
| Arm | Chemprop RAE | Δ [95% CI] | resid_corr | TabICL + Monroe RAE | Δ [95% CI] | resid_corr |
|---|---|---|---|---|---|---|
| Baseline | 0.591 | 0.535 | ||||
| Train anchors | 0.592 | +0.001 [−0.002, +0.005] | −0.03 | 0.528 | −0.007 [−0.017, +0.002] | 0.10 |
| Series anchors | 0.585 | −0.005 [−0.014, +0.003] | 0.17 | 0.530 | −0.005 [−0.013, +0.004] | 0.15 |
| Test-tuned, train | 0.589 | 0.528 | ||||
| Test-tuned, series | 0.575 | 0.525 |
On training OOF the selected corrections are \(k=25, \alpha=0.25\) for Chemprop (RAE 0.540 → 0.540, resid_corr 0.02) and \(k=10, \alpha=0.25\) for TabICL + Monroe (0.505 → 0.502, resid_corr 0.11).
Held-out MAE by similarity to the nearest training compound:
| Max similarity | n | Chemprop base | Chemprop corrected | TabICL base | TabICL corrected |
|---|---|---|---|---|---|
| < 0.4 | 6 | 0.562 | 0.581 | 0.522 | 0.521 |
| 0.4 – 0.6 | 195 | 0.483 | 0.485 | 0.433 | 0.428 |
| ≥ 0.6 | 52 | 0.418 | 0.414 | 0.397 | 0.387 |
Interpretation
- Chemprop's residuals carry no neighbor structure (resid_corr 0.02 on training OOF). With about 4k compounds the model has already absorbed the local SAR, so a neighbor's error says nothing about the next compound's.
- TabICL + Monroe has a little more (0.11), plausibly because it learns on a fixed embedding rather than end to end. The gain it buys is small and inside the noise.
- Even series anchors don't help. Using measured members of the held-out series gives at most −0.005 at the train-selected setting, and −0.016 when tuned on the test set itself.
The regime where anchoring should pay is one with structured local error: small training sets and test analogs close to a measured lead, as in the paper's kinase sets. PXR is a fair test of whether this helps at Workbench's data scale; it is a weak test of the paper's claim.
What This Does Not Test
- Damped delta. The partial intervention behaves like \(y(a) + \beta\,(\text{pred}(x) - \text{pred}(a))\) with \(\beta < 1\), shrinking the predicted change toward the anchor. Our \(\alpha\) scales the transferred residual instead, a different family.
- Latent-space similarity and intervention on selected latent dimensions; we use Tanimoto neighbors.
- The single-lead, small-data setting. The direct test of the paper's claim is the anchored baseline on its own Zenodo data and checkpoints (pinned to chemprop 2.0.0), which separates the SCM's contribution from the anchor label's.
Open Questions on the Reference Repo
From reading the code, not the paper:
- The Chemprop baseline does not receive the anchor's measured value, while the counterfactual prediction does.
- Each prediction chooses between two outputs using a per-dataset
THRESHOLD, andicc_thresholdis set from test-set similarity; we found no separate tuning split. - The repo has no license, so the code cannot be reused.
Reproduce
Reads the two models' full_cross_fold and pxr_phase1_test captures; runs in under a minute. The Chemprop full_cross_fold capture also scores the held-out rows, so the script drops them from the anchor pool.