NovoCRF: Globally Normalized De Novo Peptide Sequencing on a Prefix-Mass Lattice
Organizations: Bioinformatics Solutions Inc.
Abstract
De novo peptide sequencing has moved from dynamic programming over hand-designed or generative scores to large transformers that learn the task end to end. We present NovoCRF, a conditional random field (CRF) whose states are prefix masses, so that its paths are exactly the peptides within +/-0.06 Da of the precursor mass. A small network scores each edge from physics-derived ion-match features and is trained with its scores globally normalized over all mass-feasible peptides. To our knowledge, NovoCRF is the first de novo method trained with exact normalization over all mass-feasible peptides. Our software has three modules, each with exactly one job: a precursor mass finder recovers the accurate precursor mass from MS1, the CRF finds the peptides that fit the precursor mass by exact k-best decoding, and two BiGRU rerankers add sequence context and internal-fragment evidence. The model has 310k parameters and trains in about 17 GPU-hours. On seven held-out data-dependent acquisition datasets published in 2026 (126,262 labeled spectra), NovoCRF's mean peptide recall is 42.4%, against 39.1% for Casanovo v5 with five beams, and its amino-acid recall 64.0% against 53.1%, at 1,746 spectra/s on 18 CPU threads, 55x Casanovo's throughput on a GPU. Split by fragment evidence, NovoCRF leads on labels with up to three peptide bonds without a b or y ion, and Casanovo only beyond. NovoCRF can also search modifications it was never trained on at their exact mass: it finds 32.1% of the hydroxyproline peptides of a lion bone sample.
Figures & tables
| Component | Shape | Parameters |
|---|---|---|
| Scorer MLP | 14,408 | |
| Residue prior ; biases | ; 24 | 3,632 |
| Edge embeddings | 384 | |
| Start edges ; ; | ; 8; 1 | 36 |
| CRF total | 18,460 | |
| First-stage reranker; calibrator | BiGRU-64; logistic | 70,639 |
| Dataset | Sample | Enzyme; instrument | MS2 | Labels |
|---|---|---|---|---|
| PXD076585 [ 29 ] | human A549 | trypsin; Exploris | 131,789 | 31,275 |
| PXD071561 [ 30 ] | squid optic lobe | Lys-C; Exploris | 59,389 | 24,701 |
| PXD073929 [ 31 ] | frog toe | Glu-C; Exploris | 103,345 | 2,276 |
| PXD072115 [ 32 ] | chickpea peptides | none; timsTOF Pro | 32,981 a | 18,992 b |
| PXD074750 [ 33 ] | Candida auris | prot. K; Exploris | 62,389 | 22,488 |
| PXD071022 [ 34 ] | HLA-I, colorectal | none; Ascend | 85,732 | 21,887 |
| PXD076585 | PXD071561 | PXD073929 | PXD072115 | PXD074750 | PXD071022 | PXD082505 | |||
|---|---|---|---|---|---|---|---|---|---|
| Engine | human, trypsin | squid, Lys-C | frog, Glu-C | chickpea | C. auris , prot. K | HLA-I | HLA-I | Mean | |
| NovoCRF | Pep | 34.2 | 69.2 | 36.7 | 15.6 | 25.3 | 61.1 | 54.5 | 42.4 |
| AA | 58.8 | 78.6 | 61.0 | 44.7 | 49.6 | 79.9 | 75.5 | 64.0 | |
| CasanovoV5 beam 5 | Pep | 35.0 | 65.4 | 40.9 | 8.5 | 24.1 | 50.7 | 49.4 | 39.1 |
| AA | 50.9 | 68.9 | 59.1 | 25.1 | 37.9 | 65.4 | 64.3 | 53.1 | |
| CasanovoV5 beam 1 | Pep | 30.9 | 60.5 | 37.3 | 6.8 | 21.8 | 44.9 | 44.9 | 35.3 |
| Peptide | Amino acid | PR | Spectra | |||
|---|---|---|---|---|---|---|
| Engine | recall | prec. | recall | prec. | AUC | /s |
| NovoCRF (CPU) | 42.4 | 42.4 | 64.0 | 65.0 | 0.381 | 1,746 |
| CasanovoV5 beam 5 (GPU) | 39.1 | 40.9 | 53.1 | 56.2 | 0.366 | 32 |
| CasanovoV5 beam 1 (GPU) | 35.3 | 36.9 | 46.6 | 49.3 | 0.337 | 251 |
| PEAKS de novo (CPU) | 22.0 | 22.1 | 48.5 | 48.2 | 0.174 | 145 |
| CasanovoV5 | ||||
|---|---|---|---|---|
| MGF | Labels fit | NovoCRF | beam 5 | beam 1 |
| msconvert | 88.5 | 40.1 | 38.9 | 35.2 |
| PrecursorMassFinder | 97.9 | 42.4 | 39.1 | 35.3 |
| b/y rule | extended rule | |||||||
|---|---|---|---|---|---|---|---|---|
| Missing bonds | Labels | NovoCRF | CasanovoV5 beam 5 | CasanovoV5 beam 1 | PEAKS de novo | Labels | NovoCRF | CasanovoV5 beam 5 |
| 0 | 21,870 | 89.9 | 80.6 | 75.3 | 70.3 | 30,984 | 80.4 | 71.3 |
| 1 | 24,183 | 73.1 | 64.8 | 59.0 | 35.8 | 27,917 | 61.8 | 54.8 |
| 2 | 20,724 | 50.7 | 45.1 | 39.6 | 16.9 | 21,643 | 37.8 | 35.3 |
| 3 | 14,740 | 25.1 | 23.4 | 19.6 | 4.1 | 13,207 | 15.6 | 16.1 |
| 4–5 | 18,495 | 8.0 | 9.9 | 7.5 | 0.7 | 14,624 | 4.9 | 6.6 |
| Hyp labels | Labels without Hyp | |||
| Peptide length | Labels | Recall | Labels | Recall |
| 12 | 478 | 71.3 | 492 | 71.3 |
| 13–16 | 607 | 47.4 | 261 | 44.8 |
| 17–20 | 682 | 27.3 | 88 | 27.3 |
| 20 | 999 | 7.3 | 67 | 14.9 |
| All, P+15.995 given | 2,766 | 32.1 | 908 | 55.3 |
| Comparison | Training spectra | Recall |
| Global CRF | 0.86M (MassIVE-KB) | 48.9 |
| Local (MEMM), N C | 38.9 | |
| Local (MEMM), C N | 40.9 | |
| With source term | 5.2M (MassIVE-KB) | 52.6 |
| Without source term | 49.1 |
Mass Spectrometry
Mass spectrometry measures ion mass-to-charge patterns to identify and quantify molecules, with AI linking spectra to structures, peptides, and biological signals.
See all 38 papers