Which parts of the dengue envelope protein are worth testing as vaccine targets?
Dengue comes in four types, and antibodies aimed at the wrong part of the virus can make a later infection worse. We built a model that scores every position of the envelope (E) protein, tested it against pass marks written down before each test, and report every failure. The output is a short list of hypotheses for a laboratory to test.
A short list for the lab, with the doubts attached
Antibodies recognise small patches on the surface of a virus. We collected 37 solved 3D structures of dengue E with antibodies attached and marked every position that touches an antibody. The model learns what such positions look like and then scores every position of E in all four dengue types.
The problem
Antibody-dependent enhancement (ADE) means some antibodies help the virus enter immune cells instead of stopping it. A vaccine target has to attract helpful antibodies and avoid enhancing ones, across four serotypes.
What we built
A simple, interpretable scoring model on 316 antibody-touched positions in 13 epitope classes, a ranked list of 15-residue stretches with HLA coverage for a Dhaka population panel, and computer-designed mRNA constructs.
How we kept it honest
Pass marks were written and locked with a fingerprint before each test. Whole antibody classes were held out. One test set was sealed and scored once. Failed tests are shown next to the passes.
What held up, and how sure we are
Scores are AUROC: 0.5 is a coin flip and 1.0 is perfect. Intervals are 95%. These numbers are read from the same data file the interactive Atlas uses.
What did not work
Every variant we tried under a frozen protocol is listed in the Atlas. The ones that did not improve the model:
| Idea | Score on held-out classes [95% interval] | Outcome |
|---|---|---|
| Gradient boosting on the same features (v7) Tree ensemble instead of logistic regression, tested head to head with locked criteria | 0.777 [0.740, 0.814] | not adopted: ahead by 0.022 on held-out classes but the interval includes zero [-0.004, 0.044], and it was worse than the feature model on 2 of 3 fresh groups (macro 0.727 vs 0.761) |
| Peptide models trained on IEDB assays Predict neutralizing residues from recognition data | 0.471 (B-cell) [0.441, 0.496] | failed |
| ESM-2 sequence embeddings (v5) Frozen protein language model + logistic regression | 0.63 [0.592, 0.666] | failed (worse than the feature model on the same residues) |
| ESM-IF1 structure embeddings (v5) Frozen structure-aware model + logistic regression | 0.562 [0.500, 0.630] | failed |
| Extra geometry features (v6, A) Neighbourhood exposure, burial, distance to fusion loop | 0.676 [0.622, 0.731] | failed (worse; the fusion-loop distance feature drives it) |
| Geometry features without fusion-loop distance (v6) Diagnostic | 0.755 [0.722, 0.782] | no change |
| PU-bagged training (v6, B) Treat unlabelled residues as unknown, average 50 models | 0.758 [0.725, 0.785] | tie (not better) |
| Host gene-activity signal of severe dengue Cross-cohort pre-registered gate | 0.764 [0.486, 0.972] | gate not passed; excluded from the ranking |
How a wet lab would use this
The model never touches samples. It answers one question: which positions are worth the cost of making a mutant?
- 1 · ChoosePick a dengue type, or paste your own envelope protein sequence.
- 2 · DesignGet matched pairs of high- and low-scoring positions, controlled for surface exposure and for distance to the sugar sites.
- 3 · Pre-registerDownload a pass-mark note to sign before any experiment, plus a results sheet already filled with your constructs.
- 4 · CheckLoad the filled sheet. The tool applies your pass mark and says supported, not supported or inconclusive.
Every test was locked before it was run
Each protocol file is fingerprinted (SHA-256). Later changes are logged as dated deviations, never edited in place.
| Protocol | Frozen | What it set up | Outcome | Fingerprint |
|---|---|---|---|---|
| eval_protocol.md | 2026-10-25 | Splits, leakage control (70% identity clusters) and the first success criteria. Data files are hashed (splits_manifest.json); the protocol text itself has no hash recorded. | Peptide-level models trained on IEDB tests failed the later neutralization check. | none recorded |
| eval_protocol_v2.md | 2026-10-25 | Switch to a curated set of residues shown to matter for neutralization (40 papers). | IEDB-trained models did not recover neutralizing residues. | 09407d5b9715 |
| eval_protocol_v3.md | 2026-10-25 | Labels from antibody-protein structures; 14 papers sealed for a single final test. | Held-out classes met; sealed test mixed (AUROC met, top-20% recovery not met). | fe6b4276ed82 |
| eval_protocol_v4.md | 2026-10-29 | Host-gene severity gate, HLA coverage, window ranking, mRNA design. | Gene gate not passed (excluded); 4E11 hold-out met. | 10aaba6b0444 |
| eval_protocol_v5.md | 2026-11-08 | Frozen protein-language-model probes (ESM-2 sequence, ESM-IF1 structure) against the feature model. | Both worse than the feature model. | 90c54fce4bcc |
| eval_protocol_v6.md | 2026-11-08 | Fresh complexes never used in development; extra geometry features; PU-bagged training. | Feature model held up on new groups; neither variant improved it. | b3ecf3261519 |
| eval_protocol_v7.md | 2026-11-08 | Gradient boosting against the feature model, head to head on held-out classes and the fresh complexes. | Not better; the feature model stays. | 372cf2eb97ab |
Want to test it, or break it?
We are looking for a laboratory to run the matched-pair experiment described above. A negative result is as useful to us as a positive one.