A Gated Attention-MIL head that predicts the 17 Drews 2022 chromosomal-instability
signatures (CX1–CX17) from whole-slide H&E pathology images, using frozen
MahmoodLab/UNI tile embeddings as input.
This is a 5-fold ensemble trained on 1,454 TCGA patients across 15 cohorts,
the larger companion to
cx-uni-abmil-7cohort.
Use this model when you need the more conservative, scale-honest estimate.
HP-tuned at n=1454: hidden = 512, dropout = 0.1 (the d=0.3 used at
the 7-cohort scale was suboptimal here), lr = 1e-4. Selected from a
sweep of 11 combos across (hidden ∈ {128, 256, 512}) × (dropout ∈ {0.1, 0.3, 0.5}) × (lr ∈ {1e-4, 5e-4}) — see the partial leaderboard in
config.json.
Patient-level bootstrap (n_boot = 10,000) on the pooled out-of-fold predictions:
Signature
ρ
95% CI
q (BH)
Tag
CX1
+0.235
[+0.188, +0.284]
<0.001
✓ q<.001
CX3
+0.221
[+0.171, +0.269]
<0.001
✓ q<.001
CX11
+0.182
[+0.133, +0.230]
<0.001
✓ q<.001
CX6
+0.156
[+0.105, +0.206]
<0.001
✓ q<.001
CX10
+0.128
[+0.078, +0.177]
<0.001
✓ q<.001
CX2
+0.095
[+0.043, +0.145]
<0.001
✓ q<.001
CX12
+0.085
[+0.035, +0.136]
<0.01
✓ q<.01
CX5
+0.073
[+0.023, +0.124]
<0.01
✓ q<.01
CX17
+0.070
[+0.019, +0.121]
<0.05
✓ q<.05
CX16
+0.049
[-0.001, +0.099]
n.s.
CX8
+0.036
[-0.014, +0.088]
n.s.
CX9
+0.035
[-0.017, +0.085]
n.s.
CX4
-0.027
[-0.079, +0.026]
n.s.
CX13
-0.004
[-0.054, +0.046]
n.s.
CX7, CX14, CX15
inactive
inactive
—
Mean active ρ (5-fold mean) = +0.138 (HP-tuned, was +0.134 at d=0.3)
Mean active ρ (patient bootstrap, d=0.3 model) = +0.095
0 H1 hits (none reach ρ ≥ 0.30)
8 signatures at q < 0.001 by patient-level bootstrap (CX1, CX3, CX11, CX6, CX10, CX2, CX12, CX5 — based on the d=0.3 baseline; bootstrap pending for the d=0.1 update)
GatedABMIL is the gated-attention multiple-instance-learning head from
Ilse et al. (ICML 2018), with hidden = 512, dropout = 0.1, multi-task
regression onto log1p-then-z-scored CX activities. Trained with AdamW
(lr = 1e-4) and Multi-Task Huber loss. The same 5 fold checkpoints are
used as an inference ensemble. Hyperparameters were selected by an HP
sweep at n=1454 — see config.json for the leaderboard.
This 15-cohort model and the 7-cohort companion are trained on overlapping
data. The 15-cohort model is a strict superset (the original 7 + 8 added).
We publish both because their headline numbers tell different stories:
Metric
7-cohort (n=289)
15-cohort (n=1,454)
Mean active ρ
+0.219
+0.134 (5-fold) / +0.095 (bootstrap)
H1 hits (ρ ≥ 0.30)
3
0
Top signature
CX3 (+0.384)
CX1 (+0.235)
The drop is not because the 15-cohort model is "worse" — it's because the
7-cohort number was partly inflated by cancer-type heterogeneity. To make
that concrete, we re-evaluated the 15-cohort model on the same 289
patients used by the 7-cohort model:
Native 7-cohort
15-cohort model on same 289
Mean ρ (active sigs)
+0.219
+0.081
CX1
+0.366
+0.210
CX3
+0.384
+0.231
CX12
+0.359
+0.222
This is a regression on the same patients of −0.138 mean ρ, attributable
to multi-task learning across heterogeneous cohorts. Likely cause: large
cohorts (STAD n=312, CESC n=220, COAD n=201) pulled the shared feature
representation toward their CIN distributions and diluted the original
cohorts' signal.
Practical implication: the 15-cohort numbers are likely closer to the
real "predict CIN biology from H&E" effect size, with the cancer-type
classification component partially removed.
Per-cohort within-cohort ρ
Within-cancer-type performance is essentially zero across all 15 cohorts.
Best ρ (best-performing signature within each cohort):
Cohort
n
best within ρ
sig
CHOL
32
+0.394
CX10
UVM
24
+0.359
CX1
UCS
55
+0.334
CX12
KIRP
66
+0.303
CX6
STAD
312
+0.136
CX1
CESC
220
+0.224
CX10
COAD
201
+0.130
CX12
ESCA
133
+0.137
CX1
...
...
...
...
The pan-cohort signal is therefore predominantly cancer-type-classification.
This is consistent with the 7→15 regression finding above.
Intended use
Research only. Not for clinical use.
Estimating CIN signature activities from H&E in TCGA-style cohorts.
Comparison reference for new methods that aim to recover within-biology
signal.
Limitations
Pan-cohort ρ is the dominant signal — within-cohort (within cancer
type) prediction is near-zero on average. Use this model as a
cancer-type-aware predictor, not a within-biology predictor.
Calibration: regression slopes are far below 1; predictions are
rank-correct but heavily shrunken. Use ranks, not magnitudes.
Inactive signatures: CX7, CX13, CX14, CX15 are essentially zero
in TCGA. Their predictions are emitted but not trained on; the
predict_dict() helper hides them.
No external validation here — CPTAC inference is in progress in
the parent repo and will be released separately when complete.
UNI weights are gated — request access from MahmoodLab on Hugging
Face. We do not redistribute UNI.
Training cohorts (15 TCGA)
DLBC, CHOL, UVM, READ, MESO, UCS, KICH (the original 7) +
ESCA, CESC, PAAD, THYM, COAD, PCPG, KIRP, STAD (added).
5-fold cancer-type-stratified CV, seed = 20260419, 1,454 labelled patients
out of 2,340 slides.