Research paperPreprint 2026

EMBER: Predicting TCR–pMHC Binding Without a Docked Complex

Fold the two molecules apart, and the docking error never reaches the score.

The manuscript is not yet public. This page summarizes it; a link follows once a preprint is posted.

Authors

Lin Ha1,†Chen Zhou1Haozheng Luo1,†Han Liu1Xiaoyu Zhang1Yan Chen1,†

Corresponding authors.

Affiliations

  • 1Northwestern University

A T-cell receptor recognizes its antigen at a contact surface, so a structure-based predictor would like to read that surface. The surface it actually reads is a predicted one.

Structure-based methods first fold or dock the receptor and the antigen into one assembly, then infer binding from the predicted interface. Most keep only the residues within 8 to 14 Å of the opposing molecule. The predicted placement therefore decides not just where the residues sit, but which residues and which contacts exist in the input graph at all.

The paper calls this failure mode assembly-induced interface corruption. A placement error of the same magnitude as the cutoff changes the input itself rather than perturbing its coordinates, and the paper tests how large that error is.

Figure 1: three routes to binding prediction. Sequence-based methods read paired residues with a 1-D convolution or recurrence. Structure-based methods build a docked complex, which is likely to mis-dock, and run a graph across the interface. EMBER folds two monomers with no shared frame and joins two graphs by attention.
Figure 1. All three routes score the same molecular pair. EMBER is the only one that never builds a shared coordinate frame. Figure from the paper.

The tools agree on the molecules and disagree on the assembly

Six co-folding tools are run on 49 class-I TCR–pMHC crystal structures from STCRDab. Peptides land close to their crystal positions, while the CDR3 loops and the receptor as a whole are displaced much further. Setting Boltz-2 aside, the median contact Jaccard at 5 Å runs from 0.188 to 0.459 and the median receptor Cα RMSD from 5.87 to 8.09 Å.

Figure 2: panels (a) and (b) overlay predicted peptides and CDR3 loops on two crystal targets; the peptides agree closely while the CDR3 loops scatter. Panel (c) plots median Cα RMSD against the crystal for peptide, CDR3-beta, CDR3-alpha and the whole TCR, rising from under 2 Å for the peptide to 6 to 8 Å for the TCR. Panel (d) shows each tool's receptor placement differing from the others by 5 to 8 Å while whole-monomer folds agree to about 1 Å.
Figure 2. The error lives in the assembly. Receptor placements differ between tools by 5.10 to 7.80 Å, while independently folded TCR monomers agree to within 0.96 to 1.23 Å over the same 250 monomers. Figure from the paper.

Boltz-2 leads the table, and the lead does not survive its training cutoff

Boltz-2 is best in almost every row and reaches a contact Jaccard of 0.833. But 39 of the 49 targets were released before its training cutoff. On the 10 targets released after it, that Jaccard falls to 0.155. The other five tools barely move on the same 10: ESMFold2 from 0.459 to 0.393, AlphaFold-Multimer from 0.308 to 0.303.

Why sampling more folds does not help

Most co-folding tools are stochastic, so one answer is to fold each complex many times and average the error away. Writing the error of sample \(k\) as a displacement vector \(v_k\), the paper measures directional coherence \(\gamma = \bigl\| \tfrac{1}{K}\sum_{k} v_k / \|v_k\| \bigr\|\), which is 1 when every sample misses the same way and 0.21 for random directions.

Five tools fold each target 20 times and reach \(\gamma\) between 0.84 and 0.992. Equal-weight averaging accordingly moves the displacement by only −2.5% to +6.7%. The bias is also shared between tools: in a frame defined by the peptide-binding groove, five independently built tools share one displacement direction, with a cross-tool \(\gamma\) of 0.621 and agreement beyond chance on 40 of 48 targets (\(p = 3.3\times10^{-6}\)).

Finding 1. The dominant structural error in predicted TCR–pMHC complexes lies in rigid-body assembly. It is large enough to change which residues and contacts enter a downstream graph, and its direction is systematic, so sampling and ensembling cannot remove it.

Remove the assembly instead of correcting it.

EMBER folds the TCR and the pMHC as unbound monomers and encodes each as a residue graph whose features are invariant to rigid motion. One shared encoder runs over the two graphs with no message between them. The two molecules meet only in an attention head that takes no coordinate argument.

Because a relative pose is never formed, it is not an input the model could be misled by. Pose independence comes from the architecture rather than from training, and it holds exactly.

EMBER architecture. The TCR (about 114 residues) and the pMHC (about 382 residues) each enter a shared two-layer encoder as a 165-dimensional node state. Each layer runs a message, a chemistry gate, a sum with LayerNorm and a coordinate update, then rebuilds the k-nearest-neighbor graph. A dashed box marked 'no shared frame: a pose is never formed' separates the two towers. A bidirectional contact head attends between the CDR3 rows and the peptide rows and produces a 128-dimensional vector, scored with a sigmoid and trained with BCE plus a Bradley-Terry term.
Figure 3. The two towers share weights and exchange no message. Only the contact head joins them, and it reads invariant scalars alone. Architecture figure from the paper.
  1. 01 /

    Describe each residue without a frame

    Every residue carries an invariant local descriptor \(x_i\), a frozen ESM-C embedding \(e_i\) compressed by a learned bottleneck, and its Cα coordinate. Edges join the \(k=30\) nearest neighbors and read distance and residue chemistry only:

    \[ a_{ij} = \bigl[\, \rho(d_{ij}) \,\|\, d_0/d_{ij} \,\|\, b_{ij} \,\bigr] \in \mathbb{R}^{22}. \]
  2. 02 /

    Pass geometry, gated by chemistry

    Each layer sends a message on every edge, scales it by a gate that reads residue identity alone, and updates the node state. The coordinates are updated alongside and the neighborhood is rebuilt from them, so later layers see the geometry the earlier ones produced.

    \[ h^{(\ell)}_i = \operatorname{LN}\Bigl( h^{(\ell-1)}_i + \textstyle\sum_{j \in \mathcal{N}(i)} g_{ij}\, m_{ij} \Bigr). \]
  3. 03 /

    Join the two sides by attention alone

    The CDR3β rows and the peptide rows attend to each other in both directions. Both index sets come from sequence annotation, not from predicted geometry, so no distance cutoff can corrupt them. Training sums a calibration term and a within-batch ranking term.

    \[ \mathcal{L} = \mathcal{L}_{\mathrm{BCE}} + \mathcal{L}_{\mathrm{BT}}. \]
Notation

\(\rho\) is a 16-dimensional radial basis over \([0, 20]\) Å and \(d_0 = 4\) Å. The five entries of \(b_{ij}\) read residue identity alone: hydrogen bonding, hydrophobicity, van der Waals radius, charge product, and aromaticity. \(m_{ij} = \phi_m(c_{ij})\) is the edge message, \(g_{ij} = \sigma(\phi_g(b_{ij})) \in (0,1)\) the chemistry gate, \(\operatorname{LN}\) layer normalization, and \(\mathcal{N}(i)\) the neighbors of \(i\). The encoder input is \(h^{(0)}_i = [\,x_i \,\|\, W_e e_i\,] \in \mathbb{R}^{165}\), with \(x_i \in \mathbb{R}^{37}\) and \(e_i \in \mathbb{R}^{1152}\). The layer is that of Satorras et al. with two changes: the gate, which reads chemistry and leaves equivariance untouched, and the graph rebuild, without which the updated coordinates would never reach \(h\).

Pose independence, stated exactly

Rotating and translating the two molecules independently leaves the score unchanged. This is stronger than the invariance an equivariant network over a joint graph gives, which fixes the score under motion of the whole assembly while the relative pose stays in the input.

\[ s\bigl(R_1 \mathcal{G}^T + t_1,\; R_2 \mathcal{G}^P + t_2\bigr) = s\bigl(\mathcal{G}^T, \mathcal{G}^P\bigr) \quad \text{for all } R_1, R_2 \in SO(3),\; t_1, t_2 \in \mathbb{R}^3 . \]

Proposition 1 of the paper, proved from a per-layer lemma: the encoder inputs, edge features and k-NN edge set are unchanged by a rigid motion, and each layer preserves that while carrying the coordinates along equivariantly. The contact head then reads invariant scalars only.

How the peptide is pooled

The two attention directions are not symmetric. TCR-to-peptide pools over the CDR3β rows, so peptide length enters only through the attention over keys. Peptide-to-TCR pools over the peptide, where length would otherwise give the same position a different chemical role, since peptides in the dataset run from 8 to 11 residues.

It therefore pools on a canonical frame of 9 slots. Class-I binding pins the peptide at both ends regardless of length, so a monotone map sends the free N-terminus, the P2 anchor and the C-terminal residue to fixed slots and spreads the interior over the rest, placing surplus residues centrally where a longer peptide bulges away from the groove. An 8-mer and an 11-mer then present the same anchor at the same slot.

Epitope-disjoint evaluation

ESMFold2 structures MCC at a fixed threshold of 0.5

0.1720.273

58.7% higher MCC

STAG-LLM → EMBER · 51 to 75% across the four folding tools

tFold-TCR preprocessing for the evaluation set

80.7h4.2h

19.4× less GPU time

Complexes → monomers · one A100-SXM4-80GB

First on every metric, under every folding tool

Six published baselines are retrained on identical data and splits, over five epitope-disjoint folds and three seeds. The size of the lead depends on which part of the ranking a metric reads. AUROC weighs the whole candidate list and the strongest baseline comes close there. Metrics that weigh the top of the list, which is what a screen actually reads, separate the two much further.

Means over five folds and three seeds, ± the spread across seeds · Table 1
Methodmacro-AUROC ↑macro-AUPRC ↑micro-AUROC ↑micro-AUPRC ↑MCC@0.5 ↑MCC* ↑
Structures from tFold-TCR
EMBER0.758 ±0.0100.585 ±0.0080.666 ±0.0030.366 ±0.0140.251 ±0.0590.292 ±0.017
STAG-LLM0.620 ±0.0180.473 ±0.0200.582 ±0.0080.292 ±0.0060.166 ±0.0240.264 ±0.018
SageTCR0.622 ±0.0090.443 ±0.0040.547 ±0.0110.240 ±0.0070.122 ±0.0270.182 ±0.036
Abeer0.591 ±0.0080.434 ±0.0060.550 ±0.0110.225 ±0.0140.071 ±0.0070.157 ±0.024
TRAP0.651 ±0.0150.513 ±0.0140.499 ±0.0100.182 ±0.0100.034 ±0.0000.095 ±0.024
Structures from ESMFold2
EMBER0.759 ±0.0040.584 ±0.0030.670 ±0.0050.372 ±0.0130.273 ±0.0290.304 ±0.011
STAG-LLM0.714 ±0.0130.507 ±0.0160.659 ±0.0030.312 ±0.0070.172 ±0.0010.245 ±0.004
SageTCR0.618 ±0.0020.437 ±0.0140.545 ±0.0150.227 ±0.0030.115 ±0.0160.174 ±0.030
Abeer0.590 ±0.0030.431 ±0.0020.579 ±0.0080.257 ±0.0280.108 ±0.0490.188 ±0.025
TRAP0.649 ±0.0060.514 ±0.0120.497 ±0.0250.180 ±0.0030.041 ±0.0170.096 ±0.008
Structures from TCRmodel2
EMBER0.769 ±0.0070.593 ±0.0040.668 ±0.0030.367 ±0.0020.267 ±0.0090.301 ±0.003
STAG-LLM0.632 ±0.0090.477 ±0.0050.586 ±0.0080.295 ±0.0180.153 ±0.0290.264 ±0.019
SageTCR0.596 ±0.0280.418 ±0.0110.537 ±0.0120.235 ±0.0040.112 ±0.0180.174 ±0.011
Abeer0.583 ±0.0230.434 ±0.0170.597 ±0.0060.291 ±0.0210.145 ±0.0240.236 ±0.019
TRAP0.630 ±0.0080.486 ±0.0110.487 ±0.0090.172 ±0.0040.019 ±0.0060.077 ±0.006
Structures from Boltz-2
EMBER0.753 ±0.0040.579 ±0.0070.661 ±0.0060.372 ±0.0030.278 ±0.0130.311 ±0.012
STAG-LLM0.710 ±0.0020.505 ±0.0030.655 ±0.0080.314 ±0.0260.169 ±0.0120.254 ±0.020
SageTCR0.597 ±0.0010.422 ±0.0130.527 ±0.0120.224 ±0.0090.115 ±0.0030.146 ±0.004
Abeer0.600 ±0.0030.437 ±0.0090.580 ±0.0140.255 ±0.0320.054 ±0.0260.188 ±0.023
TRAP0.642 ±0.0150.502 ±0.0060.491 ±0.0110.175 ±0.0020.016 ±0.0130.082 ±0.009
Sequence-based, no structure read
NetTCR-2.20.688 ±0.0070.536 ±0.0120.604 ±0.0100.319 ±0.0090.207 ±0.0260.257 ±0.006
ERGO-II0.668 ±0.0160.502 ±0.0160.593 ±0.0090.284 ±0.0100.061 ±0.0260.224 ±0.012

MCC* is MCC at the threshold that maximizes it on the test fold. No deployed system has that threshold; the paper reports it only to bound what threshold tuning could buy a baseline. Read one fold at a time, the lead holds on all five folds in 16 of the 24 cells; the eight that fall short are two micro-AUROC cells, two micro-AUPRC cells and all four MCC* cells. The sequence baselines read no structure and are not ranked within a group. Every fold is kept, including those on which a baseline collapses to a constant score.

Figure 4: eight bar panels. The first four show macro-AUROC, macro-AUPRC, micro-AUROC and micro-AUPRC for EMBER and six baselines, each structural method carrying one bar per folding tool. EMBER's four bars are the tallest and the most even. The last four show MCC at 0.5, Kendall's W, mean tau-b and order held, where EMBER again leads and the baselines' bars vary more between tools.
Figure 4. Every bar starts at chance. Structural methods carry one bar per folding tool, light to dark in the order tFold-TCR, ESMFold2, TCRmodel2, Boltz-2. A method whose four bars are uneven depends on the upstream tool. Figure from the paper.

The ranking barely moves when the folding tool changes

A structure-based predictor inherits its upstream tool, and the tools disagree. For each epitope and fold, the same method is trained on each tool's structures and the resulting rankings are compared over 142 epitopes with at least ten candidates each, 44.6k candidates in total.

Agreement of each method with itself across four folding tools · Table 2
MethodKendall's W ↑mean τb ↑Order held ↑Overlap@10 ↑
EMBER0.840 ±0.0080.628 ±0.01281.4% ±0.60.729 ±0.013
STAG-LLM0.666 ±0.0130.418 ±0.01470.9% ±0.70.675 ±0.008
Abeer0.553 ±0.0190.296 ±0.01964.8% ±0.90.599 ±0.001
TRAP0.484 ±0.0110.227 ±0.01161.3% ±0.60.515 ±0.010
SageTCR0.454 ±0.0230.210 ±0.03460.5% ±1.70.573 ±0.046

EMBER's concordance is 26% to 85% higher than any structure-consuming baseline, and 81.4% of candidate pairs keep their relative order when the folding tool is swapped. The separation of 0.174 in W against the closest baseline is far outside the spread across seeds, which is 0.008 for EMBER and 0.013 for that baseline.

Finding 2. EMBER leads every metric under every folding tool, most clearly where every epitope counts equally and at the threshold a deployed system runs at. Its ranking is also the least disturbed by a change of folding tool, by a margin far outside the spread across training seeds.

The complex carries evidence that no complex consumer uses

Within one pMHC, a folding tool's own interface confidence separates a true binder from a decoy at Cohen's d of 0.20 to 0.60, while the independently folded receptor reaches only 0.05 to 0.12 on the same pairs. Read untrained as a score, that confidence beats all six retrained baselines under TCRmodel2. Yet stratifying by confidence band shows that the three complex consumers gain no more from a confident structure than the sequence baselines do, 16% against 17%, while EMBER reaches 56% without reading the complex at all.

Figure 5: positive likelihood ratio relative to the lowest confidence band, plotted against interface-confidence percentile. EMBER dips below 1 at the 30th percentile then rises steeply to about 1.56 at the 90th. STAG-LLM, Abeer, SageTCR and TRAP stay near or inside the gray band spanned by the two sequence baselines, ending between about 1.09 and 1.26.
Figure 5. Normalized positive likelihood ratio by interface-confidence band, relative to each method's own lowest band, which removes differences in operating point. The gray band spans the two sequence baselines. The first two bands hold the same share of binders, so the step between them carries no signal. Figure from the paper.

What the structure is worth

Removing the structure entirely costs 11.1% of the margin EMBER holds above chance in micro-AUPRC. Replacing the two monomers with the predicted complex costs 12.3%, and more still at a fixed threshold. A docked assembly is therefore worth no more to EMBER than no structure at all. Removing the canonical peptide frame costs 23.4% of MCC@0.5, and 8.3% once the threshold is tuned, so that frame is mostly buying calibration and per-epitope precision.

Ablations on the ESMFold2 structures · Table 3
Armmacro-AUROC ↑macro-AUPRC ↑micro-AUROC ↑micro-AUPRC ↑MCC@0.5 ↑MCC* ↑
EMBER (control)0.759 ±0.0040.584 ±0.0030.670 ±0.0050.372 ±0.0130.273 ±0.0290.304 ±0.011
Remove structure0.753 ±0.0080.570 ±0.0060.649 ±0.0030.349 ±0.0010.236 ±0.0180.283 ±0.010
Docked complex0.745 ±0.0090.578 ±0.0130.654 ±0.0090.346 ±0.0330.232 ±0.0630.274 ±0.027
No peptide frame0.740 ±0.0080.558 ±0.0040.664 ±0.0070.360 ±0.0040.209 ±0.0170.279 ±0.009
No graph0.750 ±0.0020.561 ±0.0020.656 ±0.0060.344 ±0.0070.249 ±0.0120.275 ±0.020
α chain restored0.739 ±0.0200.568 ±0.0260.643 ±0.0040.354 ±0.0140.246 ±0.0250.280 ±0.012

The arms run on ESMFold2 because it gives the most favourable input, leading every interface and placement metric on the targets released after the Boltz-2 training cutoff. Docked complex feeds EMBER the co-folded complex of the same pair at matched parameter count. No graph replaces the encoder with a multilayer perceptron while keeping the structure-derived node descriptors, which costs 13.1% of the margin, so most of what the structure contributes arrives through the neighborhood rather than through the per-residue descriptors.

Finding 3. Co-folding encodes binding evidence in its own confidence, yet no complex consumer converts it into discrimination, and supplying the complex to EMBER costs accuracy. The structure contributes a geometric scaffold, so two unbound monomers give up nothing measurable.

Preprocessing scales with the molecules, not with the pairs

A complex-based predictor needs one fold per candidate pair, which is \(O(NM)\) structures. EMBER folds each monomer once and reuses it across every pair it appears in, which is \(O(N+M)\). On this evaluation set that is 21,830 monomer folds against 45,909 complexes.

Preprocessing cost on one A100-SXM4-80GB, inference only · Table 4
ToolOne structure (s)This evaluation set (GPU-h)
TCR, 228 aapMHC, 382 aaComplex, 610 aaEMBER, monomersComplexes, pairsSaving
tFold-TCR0.6721.6186.3294.280.719.4×
ESMFold25.19010.52225.62932.0326.810.2×
Boltz-210.9217.5023.78466.9303.34.5×
TCRmodel2102.8111.5125.6624.11,602.32.6×

Two rows carry a cost the table does not show. TCRmodel2 spends 45 to 48 percent of its wall clock outside inference, so its 2.6× is a ratio between two numbers that both carry that overhead, and it folds 416-residue complexes rather than 610-residue inputs. Boltz-2 cannot fold without a multiple sequence alignment, which is not in its row. Each cell is one measurement rather than a mean over repeats, so no error bar is claimed, though the within-cell spread is tight. Folding a complex is not expensive in itself, and on a fixed candidate set the advantage is a constant factor rather than a change of regime.

The curated set draws on four public databases and holds 45,909 TCR–pMHC pairs over 343 epitopes. Of those, 7,371 are measured binders; the sampled non-binders come with the STAG release and are used without resampling, giving a binder prevalence of 0.161, which is the chance level for every precision metric reported. Every epitope forms its own cluster and each cluster is assigned to exactly one fold, so no test peptide is seen during training.

Data
McPAS-TCR · VDJdb · IEDB · 10x Genomics · 21,477 TCRs and 353 class-I pMHCs
Splits
Five epitope-disjoint folds · three seeds · 15 runs per cell
Folding tools
tFold-TCR · ESMFold2 · TCRmodel2 · Boltz-2, each method retrained per tool
Encoder
2 layers · width 256 · k = 30 rebuilt per layer · ESM-C 600M frozen · 3.03M parameters
Training
AdamW · learning rate \(3\times10^{-5}\) · 100 epochs · 3 negatives per positive, redrawn each epoch
Compute
One NVIDIA A100-SXM4-80GB

The AIC study runs on a separate set: 49 class-I crystal structures from STCRDab, carrying 35 distinct peptides and 31 distinct MHC heavy chains, folded by six tools. Templates are capped per target at the day before that target's deposition, so no tool can retrieve the answer it is scored against.

Two scope notes. The released encoder is given the TCR β chain alone; restoring the α chain was measured and costs 8.6% of the micro-AUPRC margin, which is the measurement behind that decision. And the epitope distribution is long tailed, with the ten most frequent epitopes accounting for most entries, which is why macro and micro aggregations are reported side by side rather than either alone.

BibTeX
Download
@article{ha2026ember,
  title   = {{EMBER}: Predicting {TCR}--{pMHC} Binding Without a Docked Complex},
  author  = {Lin Ha and Chen Zhou and Haozheng Luo and Han Liu and
             Xiaoyu Zhang and Yan Chen},
  year    = {2026},
  note    = {Preprint}
}