Analog retrieval by spectral similarity — cosine, modified cosine, spectral entropy, Spec2Vec, MS2DeepScore 1.0/2.0, MS2Query, DreaMS and MassSpecGym numbers, what Tanimoto an analog hit really delivers, how to turn a hit into candidate SMILES, and the compute budget for a 2.5 M-spectrum library

expertconfidence mediumrelevance 5/523 sources4.5k words
Forced analogyKoopman sweep width: each similarity measure is a sensor whose detection probability falls off with structural distance (1 - Tanimoto). The analogy held well enough to produce a concrete claim: peak-alignment sensors (modified cosine / Flash hybrid search) and Tanimoto-regression sensors (MS2DeepScore 2.0 / DreaMS) have the most non-overlapping sweeps, and MS2Query's own ablation (0.45 -> 0.63 mean Tanimoto at equal recall by adding neighbourhood-averaged MS2DeepScore to a modified-cosine search) is the published evidence that combining them widens coverage. It breaks where Koopman assumes one target: here several near-isomers sit inside the sweep and the metric only pays for the exact one.

TL;DR. Exact-match similarity (cosine, spectral entropy) is a very narrow sensor: entropy similarity reaches <10 % false-discovery rate at a 0.75 cutoff for identical compounds, but ~30 % of its false positives are one-bond isomers and it says nothing about Tanimoto. For true analog retrieval the only like-for-like published numbers come from MS2Query's 302,514-spectrum GNPS benchmark: at 35 % recall the best modified-cosine analog averages Tanimoto 0.45, MS2Query (Spec2Vec + neighbourhood-averaged MS2DeepScore + mass features) averages 0.63, and Spec2Vec finds a top-10 hit with Tanimoto > 0.6 for ~60 % of unknown queries. The hidden test (~90 % novel molecules) will therefore mostly yield analogs at Tanimoto 0.4–0.7, which score zero under MRR@25 unless they are converted into candidate structures; the cheapest published converters are single-modification enumeration (ModiFinder-style, 8,033 of 12,909 single-modification pairs even have shifted peaks) and mass-window-filtered structural neighbourhoods of the analog, and no paper we could open reports a class-filtered (CANOPUS) re-ranking gain.

1. What the similarity measures are and what each was actually benchmarked on

Measure (tool, version) Mechanics in one line Benchmark type Headline number Source
Cosine / dot product (GNPS library search) Unshifted peak matching; GNPS library hits require cosine > 0.7 and ≥ 6 matched fragment ions exact match 1.9 % of GNPS data nodes matched a library spectrum at cosine > 0.7 Wang et al. 2016, PMC5321674
Modified cosine (GNPS molecular networking; matchms ModifiedCosine) Bipartite peak matching with extra edges for peaks differing by the precursor-mass difference δ ± tolerance analog (edges) "on average 35.2 % of all unidentified nodes are significantly matched to other spectra of related molecules within a cosine score of 0.8" Wang et al. 2016
Modified cosine vs cosine vs neutral-loss 955,228 peptide pairs + 10 million small-molecule pairs analog (pairs) modified cosine "outperformed neutral loss matching and the cosine similarity in all cases"; performance "depends on the location and type of the modification, as well as the chemical compound class" Bittremieux et al. 2022, JASMS, 10.1021/jasms.2c00153 (abstract)
Modified cosine (matchms) inside MS2Query benchmark 100 Da precursor window, 0.05 Da fragment tolerance analog, Tanimoto of top-1 mean Tanimoto 0.45 of selected analog at 35 % recall de Jonge et al. 2023, Nat Commun, PMC10060387
Spectral entropy similarity (Li & Fiehn) Entropy-weighted intensities, 0.05 Da tolerance, noise < 1 % removed exact match, 43 measures AUC 0.958 (best of 43); FDR < 10 % at 0.75 on 37,299 MassBank.us experimental spectra vs dot product "barely reached 15 % FDR > 0.95"; NIST20 434,287 spectra Li et al. 2021, Nat Methods, 10.1038/s41592-021-01331-z (PMC11492813)
Flash entropy search (ms_entropy 1.5.3) Same score, indexed; modes identity / open / neutral-loss / hybrid speed "query 1 billion spectra in less than 2 s", "> 10,000 times" faster than open-search dot product/entropy (> 8 h per spectrum) Li & Fiehn 2023, Nat Methods, 10.1038/s41592-023-02012-9 (abstract); MSEntropy README
Spec2Vec Word2Vec on binned peaks/losses analog, unknown-compound test ~60 % of 1,030 queries (200 InChIKeys held out) have a top-10 library match with Tanimoto > 0.6 against 76,062 spectra; for > 400 Da, mean Tanimoto of best suggestion > 0.8 Huber et al. 2021, PLoS Comput Biol, 10.1371/journal.pcbi.1008724
MS2DeepScore 1.0 Siamese net on 10,000 bins (10–1000 m/z), 200-d embedding, trained to regress Tanimoto Tanimoto regression; precision/recall at Tanimoto > 0.6 RMSE ≈ 0.15; ≈ 0.11 after discarding 75 % of pairs by MC-dropout IQR > 0.025; "notably better precision/recall … followed by Spec2Vec and only then modified Cosine" (no numbers quoted in text) Huber et al. 2021, J Cheminf, 10.1186/s13321-021-00558-4 (PMC8556919)
MS2DeepScore 2.0 One 10,000-node layer, 500-d embedding; cross-polarity; 519,580 pos + 145,594 neg spectra pair-wise Tanimoto only Rutin cross-mode example: MS2DeepScore 2.0 0.7, modified cosine 0.3, cosine 0.0; no analog-search or library-search benchmark reported; "no added benefit from using a cross-ionization mode model" for naive top-1 de Jonge et al. 2026, Nat Commun, 10.1038/s41467-026-69083-y (PMC12992594); preprint 10.1101/2024.03.25.586580
MS2Query 0.6.6 Random forest over Spec2Vec, precursor m/z, Δ m/z, weighted mean MS2DeepScore of 10 chemically similar library molecules, their mean Tanimoto analog, Tanimoto of top-1 at recall mean Tanimoto 0.63 at 35 % recall (score threshold 0.633); 20-fold CV split on unique 2D structures; library 302,514 GNPS spectra de Jonge et al. 2023
DreaMS (pre-trained on GeMS, up to 700 M spectra) Transformer; cosine in embedding space; contrastive fine-tune Tanimoto/MCES correlation; 10-ppm retrieval; analog search by MCES k = 0…7 "outperforms … MS2DeepScore in terms of correlation with the Tanimoto and MCES"; fine-tuned DreaMS "substantially outperforms 44 standard spectral similarity measures" (spectral entropy + 43) on ~750,000 NIST20 same-vs-different pairs within 10 ppm (AUROC; numbers in Ext. Data Fig. 5, not in text) Bushuiev et al. 2026, Nat Biotechnol, 10.1038/s41587-025-02663-3 (PMC13090125)
MassSpecGym retrieval (MIST) ≤ 256 same-mass candidates; MCES ≥ 10 split retrieval hit rate MIST hit@1 14.64 %, hit@5 34.87 %, hit@20 59.15 %, MCES@1 15.37; Fingerprint-FFN 2.54/7.59/20.00; random 0.37/2.01/8.22 Bushuiev et al., arXiv 2410.23326

Two negative findings are worth stating plainly: (i) no paper we could open reports the mean Tanimoto of the top-1 hit for plain cosine or spectral entropy on an analog task — the Li & Fiehn work is exact-match only, and Spec2Vec's cosine/modified-cosine comparison for unknown compounds is relegated to "Fig B in S4 Text" with only the qualitative statement that the high false-positive fraction "results in less accurate compound suggestions"; (ii) MassSpecGym evaluated no spectral-library-similarity baseline at all (only Random, Fingerprint FFN, DeepSets, DeepSets+Fourier, MIST), so there is no published MRR-like figure for "nearest-library-analog → candidate" on an MCES-split benchmark.

2. What Tanimoto an analog hit actually delivers

  • Chance level. In the Spec2Vec AllPositive set the random probability of a pair having Tanimoto > 0.6 is 0.0103 and > 0.7 is 0.0034 (Huber 2021). Any method's "fraction of top pairs above 0.6" must be read against ~1 %.
  • Modified cosine. At a recall of 35 % (i.e. the 35 % of analog queries that pass the score threshold), mean Tanimoto of the chosen analog is 0.45 (MS2Query benchmark). That is well above chance but means the median modified-cosine "analog" shares roughly half its Morgan bits with the truth — not a scaffold-preserving neighbour in most cases.
  • Embedding / learned measures. MS2Query 0.63 at the same recall; Spec2Vec ~60 % of queries with a Tanimoto > 0.6 hit somewhere in the top 10 (not top-1), rising to mean > 0.8 for > 400 Da molecules — relevant because natural products skew heavy. MS2DeepScore's RMSE ≈ 0.15 on the Tanimoto scale is the noise floor of the sensor: a predicted 0.7 is a true 0.55–0.85.
  • What "cosine ≥ 0.7 edge implies" in GNPS terms. Wang 2016 gives 35.2 % of unidentified nodes linked to related molecules at cosine 0.8, but related there is a curation judgement, not a Tanimoto threshold; Bittremieux 2022 quantified it on 10 million pairs and found modified cosine best but modification-type dependent. The precise precision-vs-mass-shift curves are in the body of that paper, which we could not open (bioRxiv rate-limited; ACS 403) — unverified.
  • Known false-analog modes. (a) Entropy/cosine high-score false positives: "About 30 % of the false positives were one-bond isomers" (Li 2021) — these are excellent candidates for an MRR task even though they are wrong identities. (b) COSMIC: of nine high-confidence incorrect CSI:FingerID hits, "the true structure was highly similar to the corresponding hit" in all nine; three verified pairs had cosine 0.85–1.00 between their spectra. (c) ModiFinder: of 12,909 single-modification library pairs, only 8,033 (62 %) have any shifted peaks at all — i.e. for ~38 % of genuine one-modification analogs the modified-cosine δ-shift term contributes nothing, and the pair looks like a plain-cosine match or no match.

3. Mechanics

Modified cosine. GNPS: "Additional edges are added to the bipartite matching between library and query peaks which differ by a δ (as determined by their precursor mass difference δ) +/− the user defined fragment mass tolerance." Peaks are therefore matched either unshifted or shifted by exactly δ; a modification that changes which bonds break (not just adds a mass) produces neither kind of match. Bittremieux's abstract states the consequence: performance "depends on the location and type of the modification". ModiFinder's benchmark constraints show the practical operating window: precursor < 2,000 Da, Δ precursor < 50 % of the smaller precursor, same [M+H]+ adduct, exactly one modification site. MS2Query capped the analog window at 100 Da. Beyond that, the shifted term starts matching chance pairs because many m/z pairs differ by δ by accident (the "large mass difference" failure mode); Spec2Vec used min_match = 10 and tolerance 0.005 Da for modified cosine precisely to suppress this. matchms default tolerance/intensity power values were not retrievable this session — unverified.

Spectral entropy similarity (Li et al. 2021). Preprocessing: centroid, remove "low-abundance ions at < 1 % base peak intensity", 0.05 Da matching tolerance, precursor removal tested both ways. Weighting: with S the spectral entropy, I_new = I^w with w = 1 if S ≥ 3 and w = 0.25 + 0.25·S if S < 3. Low-entropy (few dominant peaks) spectra are flattened; merged multi-CE spectra have higher entropy and therefore sit closer to the unweighted regime. Flash entropy search (ms_entropy 1.5.3, PyPI upload 2024-12-19, Python ≥ 3.7) exposes identity, open (any precursor), neutral-loss (peaks re-expressed as precursor − fragment) and hybrid (fragment OR neutral-loss match) modes; hybrid is the entropy analogue of modified cosine. low_memory modes 0/1/2 (2 = numpy.memmap index), GPU via CuPy "benefits searches exceeding ~0.1 seconds", and the docs warn 1 M × 1 M all-vs-all needs ~4 TB if stored dense.

4. Analog hit → candidate structures: what is actually published

Pipeline What it does with the analog Reported gain Verdict for us
MS2Query (2023) Returns the analog's SMILES as the answer; no structure generation 0.63 vs 0.45 mean Tanimoto at 35 % recall Gives a seed, not a candidate list
ModiFinder (2024/25) Given unknown + known analog differing by one modification, localises the site from shifted vs unshifted peaks MF-R evaluation score 0.625; +0.181/+0.180 over random baselines; better in 81 %/80 % of 8,033 pairs Directly usable: enumerate single-site modifications of the analog consistent with Δm and site score
CSI:FingerID + COSMIC (2022) Candidates from biomolecule DB (391,855 structures) vs PubChem (77 M); confidence score mean rank of correct 56.5 → 33.9 with confidence re-ranking; 57 vs 52 correct at 5 % FDR vs spectral library; PubChem shows "a substantial drop of correct annotations for small FDR values" Confirms Kaggle lesson: small, relevant pools beat PubChem
SIRIUS 6 "expansive search" Falls back to PubChem only if PubChem top-hit confidence ≥ 2× the requested-DB top hit docs only, no number A principled two-pool rule we can copy with our own confidence proxy
CANOPUS class prediction 1,270 ClassyFire classes, avg accuracy 99.4 %, 370 classes with MCC ≥ 0.8, rich classes mean MCC 0.729, sparse 0.531 No class-filtered structure re-ranking gain reported in the preprint; SIRIUS docs say CANOPUS runs downstream and does not filter Use as a soft prior only; sparse-class MCC 0.53 is too weak for a hard gate
DreaMS Atlas (2026) 3-NN graph over 201 M spectra; library spectra merged per canonical SMILES across adducts (79,000 merged from 819,000) similarity cutoff 0.9 → median precision 1; 67 % of edges > 0.8; median 6 edges to an annotated node Shows that structure-level de-duplication of the library is standard practice

Nothing we opened reports "scaffold + substituent enumeration from an analog hit" as an evaluated pipeline with MRR or hit-rate numbers — that remains our experiment to run.

5. Practical throughput for 2.5 M library × ~1,500 queries

Engine Published throughput Scaled to 1,500 queries × 2.5 M spectra Notes
matchms modified cosine (MS2Query run, 100 Da window) 10.6 spectra/min vs 302,514 library ≈ 1,500 × (2.5 M / 0.30 M) / 10.6 ≈ 1,170 min ≈ 19.5 h single-process Too slow naively; de-duplicate to ≤ 275,810 structures (9× fewer) → ≈ 2 h, or restrict the window
MS2Query full pipeline 80 spectra/min vs 302,514 ≈ 2.6 h after 8.3× library scaling (pessimistic linear) Embedding part is matrix-multiply; scales much better than linear
MS2DeepScore 1.0 pair scoring 6,485,401 pairs in 5–10 min on i7-8550U (≈ 11–22 k pairs/s) 1,500 × 2.5 M = 3.75 G pairs ≈ 47–95 h on that laptop CPU — but these are 200-d dot products, seconds on a GPU Precompute library embeddings once (the expensive part is 2.5 M forward passes)
Flash entropy search "query 1 billion spectra in less than 2 s" (multi-thread/GPU) 1,500 queries ≪ 1 h even on CPU Identity + hybrid modes cover exact and analog search; index persists via write()/read()
Spec2Vec 0.14 s/spectrum vs 76,062 library; 82 M pairs in 300 s ≈ 1,500 × 0.14 × 33 ≈ 1.9 h linear, far less with vectorised embeddings Model must be trained offline and shipped

Kaggle offline notebook budget (9–12 h per the brief, unverified): feasible for Flash entropy and embedding methods; feasible for modified cosine only after structure-level de-duplication and precursor-window indexing (matchms 0.33.1, PyPI 2026-06-08, now stores sparse score arrays for "several hundred thousands of spectra"). matchms and ms_entropy are pure pip packages, so they can be shipped as wheels in a Kaggle dataset.

6. Does merging collision energies help or hurt similarity?

Evidence points both ways, and the direction depends on what the library looks like:

  • Helps for learned embeddings. Giné et al. 2026 (JASMS 10.1021/jasms.5c00428, 71,561 compounds from NIST2023/METLIN/GNPS2/MS-DIAL) merged "spectra acquired at multiple collision energies into a single consolidated spectrum" and report that merged spectra "yielding predicted embeddings that more closely aligned with ground-truth Mol2Vec embeddings and improved compound ranking performance" versus individual-CE spectra.
  • Standard practice for CSI:FingerID. COSMIC built "merged spectra … by combining these three spectra (pseudo-ramp spectra)" from 10/20/40 eV.
  • Hurts for exact-match library scoring against single-CE references. Fu et al. 2025 (Anal Chem 10.1021/acs.analchem.5c01414; Orbitrap Exploris 120/480; ~180,000 spectra of > 4,500 metabolites; NCE 1–100 % plus stepped 20/40/60 %) found stepped-CE spectra scored cross-sectionally (entropy) reached average sensitivity 92.25 % / specificity 77.38 % at a 0.95 threshold, versus 98.89 % / 92.66 % for their multi-CE "longitudinal fragment profile" method, which improved identification by 25.9 % (C+), 12.6 % (C−), 8.7 % (A+), 16.9 % (A−) over single-spectrum entropy scoring.
  • Benchmarks keep CEs separate. MassSpecGym keeps spectra at different collision energies as distinct entries and stratifies splits by instrument, CE and adduct; DreaMS's merging was across adducts, not CEs.

Net: the hidden test's merged multi-CE timsTOF spectra will match single-CE library entries worse under cosine/entropy than under embeddings, and the right counter-move is to merge the library per structure (sum or max intensities across CEs, then re-normalise and re-apply the 1 % noise cut) so both sides are pseudo-ramp.

Forced analogy: search-and-rescue sweep width

The analogy. In Koopman's search theory a sensor has a lateral-range curve P(detect | x), x = lateral distance, and sweep width W = ∫ P(x) dx. Map x → structural distance d = 1 − Tanimoto(true, retrieved library molecule). A similarity measure "detects" when the true molecule's nearest library relative at distance d is ranked (or scored) above a threshold that we would act on. Published numbers give a few points per curve:

Sensor d ≈ 0 (identical) d ≈ 0.1–0.2 (one-bond isomer, single modification) d ≈ 0.4 (Tanimoto 0.6) d ≈ 0.55 (Tanimoto 0.45) Sketch of sweep
Cosine / entropy identity search FDR < 10 % at score 0.75 (Li 2021) detects, but ~30 % of false positives are one-bond isomers → labels them as the target ~chance ~chance very narrow, sharp edge
Modified cosine (δ-shift) as above ≤ 0.62 even for single-modification pairs (38 % have no shifted peaks, ModiFinder) mean top-1 Tanimoto 0.45 at 35 % recall → by d ≈ 0.4 the curve is already low ~0 medium, modification-type dependent
Spec2Vec high high ~0.6 (60 % of queries have a > 0.6 hit in top-10) lower broad, mass-dependent (> 400 Da much better)
MS2DeepScore / MS2Query high high mean top-1 0.63 at 35 % recall; RMSE 0.15 blurs the edge still > chance broad with soft edge
DreaMS (fine-tuned) best of 44 at 10 ppm calibrated directly on MCES k = 0…7 — this sensor's lateral-range curve was measured in edits (Ext. Data Fig. 5), the closest thing in the literature to a Koopman curve — — broadest, numbers not in text

These are sketches assembled from different benchmarks with different fingerprints; the shape, not the values, is the claim.

Orthogonality claim (cited). Cosine and entropy identity searches sweep the same strip (both are peak-overlap measures; entropy only re-weights intensities and the DreaMS 10-ppm benchmark ranks entropy as the best of the 44 conventional measures, which puts them on the same curve). MS2DeepScore and DreaMS likewise sweep the same broad strip (both regress Tanimoto/MCES; DreaMS beats MS2DeepScore on correlation but it is the same quantity). The most orthogonal pair is therefore modified cosine (or Flash hybrid search) × a Tanimoto-regression embedding (MS2DeepScore 2.0 or DreaMS): the first detects conserved-fragment, single-site modifications and is blind when fragmentation changes (Bittremieux: depends on modification location/type; ModiFinder: 38 % of single-modification pairs lack shifted peaks); the second detects global structural similarity even when no peaks align (rutin: MS2DeepScore 2.0 0.7 vs modified cosine 0.3 vs cosine 0.0) but cannot resolve isomers (RMSE 0.15 ≫ one-bond distance). The published evidence that the union widens the sweep is MS2Query's own ablation: starting from a modified-cosine search at 35 % recall (Tanimoto 0.45), the feature with "the biggest impact on the increased performance is the Average MS2Deepscore of multiple library molecules", lifting mean Tanimoto to 0.63 at the same recall.

Testable idea for MRR@25. Build a two-sensor candidate expander: for each test molecule, (1) run Flash hybrid search and MS2DeepScore 2.0/DreaMS nearest neighbours over the structure-level de-duplicated train library (≤ 275,810 merged pseudo-ramp spectra); (2) for the top-k analogs from each sensor, generate candidates as (a) all COCONUT/train structures within Tanimoto ≥ 0.5 of the analog and within 10 ppm of the query neutral mass, plus (b) single-site modifications of the analog whose mass change equals Δm (ModiFinder-style, when |Δm| < 50 % of the smaller precursor); (3) rank the union by the fingerprint model. Measure recall@25 on a held-out set of train structures with all their spectra removed (MS2Query-style split, or harsher MCES ≥ 10 as MassSpecGym). The prediction from the numbers above: analog seeds at Tanimoto ≈ 0.6 shrink the 10-ppm pool to a few dozen structures, which is where the current 0.55 recall@25 ceiling has room to move.

Does it hold? Partially. It holds for the lateral-range picture and for choosing orthogonal sensors. It breaks in two places: Koopman assumes a single target, whereas here several near-isomers sit inside every sweep and the metric pays only for the exact one — so a "detection" at d ≈ 0.1 is not a success but a candidate-generation event; and sweep width in Koopman is additive over independent sensors, whereas MS2DeepScore and DreaMS are trained on overlapping GNPS/NIST data, so their errors are correlated and their combined sweep is less than the sum.

Gotchas / what could fool us

  1. The visible test is train. Any library-search score on test.parquet is leakage; the brief's 0.06–0.10 hidden-test figure is the only honest baseline.
  2. Benchmarks are kinder than the hidden test. MS2Query/Spec2Vec/MS2DeepScore split on unique 2D structures but keep close analogs in the library; MassSpecGym's MCES ≥ 10 split drops MIST to 14.6 % hit@1. "None previously published" natural products are likely nearer the MassSpecGym regime.
  3. Tanimoto is not one number. Papers use different Morgan radii/bit lengths (not retrievable for every paper this session); cross-paper comparison of 0.45 vs 0.63 is only valid within MS2Query, where both were computed identically.
  4. Adduct errors poison δ. Modified cosine shifts by the precursor difference; with 7 adduct types in the test, a mis-assigned adduct makes δ wrong by 17.03/21.98/… Da and silently produces chance-level shifted matches.
  5. Merged-CE query vs single-CE library. Fu 2025 shows stepped-CE spectra scored against references lose specificity (77 % vs 93 %); the entropy weight w = 0.25 + 0.25·S also changes regime when merging raises S above 3.
  6. The 1 % noise cut is applied per spectrum. Merging before or after the cut changes peak counts and therefore min-match gates (6 or 10 peaks).
  7. Instrument domain shift. Spec2Vec/MS2DeepScore were trained on GNPS (Orbitrap/QTOF dominated; MassSpecGym says 98 % Orbitrap or QTOF); timsTOF is a QTOF with ion mobility, so expect closer-to-QTOF behaviour but no published timsTOF-specific number.
  8. Uncertainty filtering throws away most of the data. MS2DeepScore's 0.11 RMSE applies after discarding 75 % of pairs; the 0.15 figure is what a full-library search sees.
  9. Library redundancy inflates compute and ranks. 2.5 M spectra / 275,810 structures ≈ 9 spectra per structure; without structure-level aggregation, the top-25 analog list fills with copies of one molecule.
  10. Metric blind spot. An analog with Tanimoto 0.9 scores exactly 0 under MRR@25; only the converter step turns retrieval quality into score.
  11. PubChem-scale pools hurt. COSMIC saw "a substantial drop of correct annotations for small FDR values" on 77 M PubChem vs 391,855 biomolecules, matching the Kaggle lesson that PubChem-90 M pools hurt.

Implications for the challenge

  1. Build the library search at the structure level: merge all train spectra per InChIKey14 (and per adduct class) into pseudo-ramp spectra, re-normalise, re-apply the 1 % noise threshold; this both matches the merged-CE test format and cuts search cost ~9×.
  2. Use Flash entropy hybrid search (ms_entropy 1.5.3) as the fast peak-alignment sensor and MS2DeepScore 2.0 (or DreaMS embeddings) as the Tanimoto-regression sensor; skip plain cosine and skip Spec2Vec unless time allows (same strip as entropy / MS2DeepScore respectively).
  3. Treat every analog hit as a seed, not an answer: expand to the 10-ppm-consistent Tanimoto ≥ 0.5 neighbourhood in COCONUT + train structures, plus single-site Δm modifications when |Δm| < 50 % of the smaller precursor.
  4. For exact-match hits (identity score ≥ 0.75 entropy, ≥ 0.7 cosine with ≥ 6 peaks) also enumerate one-bond isomers of the hit into slots 2–25: 30 % of high-score false positives are such isomers.
  5. Gate the analog converter at a score where the published mean Tanimoto is ≥ 0.6 (MS2Query threshold 0.633 gave 35 % recall); below it the neighbourhood is too diffuse and wastes slots.
  6. Validate on a split that removes all spectra of held-out structures and, as a stress test, an MCES ≥ 10 split; report recall@25 of the candidate pool separately from MRR so the ceiling is visible.
  7. Budget: embeddings for 275,810 merged library spectra once (minutes on GPU), hybrid entropy index once, then ~1,500 queries — comfortably inside a 9–12 h offline notebook; avoid matchms ModifiedCosine over the raw 2.5 M rows (≈ 19 h single-process by MS2Query's rate).
  8. Use CANOPUS/NPClassifier class predictions only as a soft multiplicative prior on candidates (sparse-class MCC ≈ 0.53); no paper shows a hard class gate helping.

Open questions

  • The numeric lateral-range curves for DreaMS (AUROC vs MCES k = 0…7, Ext. Data Fig. 5) and MS2DeepScore 1.0's precision at Tanimoto > 0.6 by score percentile are in figures we could not read; a figure-level read would sharpen the sweep sketch.
  • Bittremieux 2022's per-modification-type and per-mass-shift precision numbers (body of the paper) are the missing quantitative basis for "modified cosine fails beyond Δm = X".
  • Flash entropy hybrid-search accuracy on analogs (vs modified cosine) is not in the abstract; the paper body or an in-house benchmark is needed.
  • Whether matchms 0.33.1's default ModifiedCosine tolerance is still 0.1 Da and whether its Hungarian variant survives — unverified.
  • Kaggle notebook wall-clock and RAM limits remain unverified (brief).
  • No timsTOF-specific analog-retrieval benchmark exists in what we opened; the Fu 2025 inter-instrument validation is Orbitrap-to-Orbitrap only.

Sources

Opened this session (web search budget was exhausted early; everything below was fetched directly or via the Europe PMC REST API):

  • Li Y, Kind T, Folz J, Vaniya A, Mehta SS, Fiehn O. Spectral entropy outperforms MS/MS dot product similarity for small-molecule compound identification. Nat Methods 2021. DOI 10.1038/s41592-021-01331-z; full text via PMC11492813.
  • Li Y, Fiehn O. Flash entropy search to query all mass spectral libraries in real time. Nat Methods 2023. DOI 10.1038/s41592-023-02012-9 (abstract via Europe PMC REST; full text not reachable this session).
  • MSEntropy README, https://github.com/YuanyueLi/MSEntropy ; docs https://msentropy.readthedocs.io/en/latest/entropy_search_advanced_usage.html ; PyPI metadata https://pypi.org/pypi/ms-entropy/json (1.5.3).
  • Huber F et al. Spec2Vec. PLoS Comput Biol 2021. DOI 10.1371/journal.pcbi.1008724.
  • Huber F, van der Burg S, van der Hooft JJJ, Ridder L. MS2DeepScore. J Cheminform 2021. DOI 10.1186/s13321-021-00558-4; PMC8556919.
  • de Jonge NF et al. Cross ionization mode chemical similarity prediction between tandem mass spectra (MS2DeepScore 2.0). Nat Commun 2026. DOI 10.1038/s41467-026-69083-y; PMC12992594. Preprint DOI 10.1101/2024.03.25.586580 (listed, not opened).
  • de Jonge NF et al. MS2Query. Nat Commun 2023. DOI 10.1038/s41467-023-37446-4; PMC10060387.
  • Bushuiev R et al. DreaMS. Nat Biotechnol 2026. DOI 10.1038/s41587-025-02663-3; PMC13090125.
  • Bushuiev R et al. MassSpecGym. arXiv 2410.23326 (HTML version).
  • Wang M et al. GNPS. Nat Biotechnol 2016. PMC5321674.
  • Bittremieux W et al. Comparison of cosine, modified cosine, and neutral loss based spectrum alignment. J Am Soc Mass Spectrom 2022. DOI 10.1021/jasms.2c00153 (abstract via Europe PMC; bioRxiv 10.1101/2022.06.01.494370 rate-limited).
  • Shahneh MRZ et al. ModiFinder. bioRxiv 10.1101/2024.02.17.580849; JASMS 2024 DOI 10.1021/jasms.4c00061.
  • Dührkop K et al. CANOPUS preprint. bioRxiv 10.1101/2020.04.17.046672 (journal version Nat Biotechnol 2021 DOI 10.1038/s41587-020-0740-8).
  • Hoffmann MA et al. COSMIC. Nat Biotechnol 2022. DOI 10.1038/s41587-021-01045-9; PMC8926923.
  • Fu X et al. Longitudinal fragment profiles based on multi-collision energy tandem mass spectra. Anal Chem 2025. DOI 10.1021/acs.analchem.5c01414; PMC12330898.
  • Giné R et al. Benchmarking MS/MS featurization strategies for machine learning. JASMS 2026. DOI 10.1021/jasms.5c00428; PMC13329996.
  • SIRIUS 6 documentation, Methods and algorithms: https://v6.docs.sirius-ms.io/methods-background/
  • matchms README https://github.com/matchms/matchms ; PyPI https://pypi.org/project/matchms/ (0.33.1, 2026-06-08).