← blog
June 2026

EnergyFingerprint: missense variant classification with thermodynamic profiles

Multichannel 1D CNN (~228K parameters) that classifies missense variants as pathogenic or benign by combining mRNA stacking free energy with ESMC-300M evolutionary signal. 8 genes in the preprint, intra-gene AUC up to 0.994; 42-gene panel with results unpublished. Zero-shot transferability across protein families.

bio-ia paper line 1

The problem

Every human genome contains thousands of missense variants — single nucleotide substitutions that change an amino acid in the protein. Most are benign, but some cause serious disease. Genetic diagnostic laboratories need to classify them quickly and accurately, and existing predictors (CADD, REVEL, AlphaMissense) operate exclusively at the protein level: evolutionary conservation, 3D structure, physicochemical properties of the amino acid.

None of them looks at what lies beneath: the mRNA that encodes that protein. And the mRNA has its own physics — stacking energy between adjacent nucleotides, secondary structure, local stability — that a mutation can alter even when the amino acid change seems innocuous.

The idea: two orthogonal axes

EnergyFingerprint combines two signals into a single 11-channel × 128-nucleotide tensor per variant:

Biophysical axis (channels 1-4): mRNA stacking thermodynamic profiles computed with nearest-neighbor parameters (SantaLucia 1998, Turner 2004). They capture the Gibbs free energy (ΔG) between adjacent dinucleotides — local context information that simple metrics like GC3 cannot capture.

Evolutionary axis (channels 5-11): ESMC-300M protein language model (EvolutionaryScale, successor to ESM-1v). Masked marginal scoring: the mutated position is masked, and the log-likelihood ratio between the native and mutant amino acid is measured. It captures the evolutionary pressure that has acted on that position for millions of years.

The two axes are orthogonal: one operates at the nucleotide level, the other at the protein level. In missense, the classification is carried by the evolutionary axis; the thermodynamic one adds its distinctive value where the former is blind — synonymous variants and mRNA.

Results: the 8 genes of the preprint

8
Genes (preprint)
0.994
Max intra-gene AUC (PTEN)
~228K
CNN parameters
11
Channels
GeneTypeIntra-gene AUCZero-shot AUC
BRCA1Cancer (breast/ovarian)0.943— (training gene)
TP53Cancer (tumor suppressor)0.9070.854
PTENCancer (tumor suppressor)0.9940.975
PALB2Cancer (DNA repair)0.9500.954
CFTRCystic fibrosis (ABC channel)0.9790.777
HBBSickle cell disease (globin)0.7210.707
MECP2Rett syndrome (IDR)0.9110.430
SCN1AEpilepsy (TM ion channel)0.9130.637

A note on the AUCs: they are computed on ClinVar, where the value may reflect gene identity or variant position rather than the effect of the variant itself.

July 2026 update: The panel has expanded from 8 to 42 genes (12 trainable + 30 zero-shot only), with a mean zero-shot AUC of 0.876 across 41 evaluable genes. These 42-gene panel results are unpublished: only the 8 genes in the table above have a public source. The evolutionary model has been migrated from ESM-1v to ESMC-300M (CNN AUC 0.961 on BRCA1, a figure that is also unpublished). Seven-gene benchmark results in the TECH-2 technical report.

August 2026 update — channel audit. An internal pipeline audit over the 42-gene panel (5,023 variants) found that, in missense, the classification is carried by the evolutionary channel: the ESMC LLR read at the variant position discriminates with AUC ≈ 0.90, and the thermodynamic channel — though orthogonal — adds no net discriminative power in this regime. The zero-shot AUCs above mostly reflect that evolutionary axis. The thermodynamic channel's distinctive value shows up in synonymous variants, where the protein language model is blind and ΔG does classify. Methodology in Where thermodynamics wins: a regime contrast.

The transferability gradient

The most revealing finding is not the absolute AUCs, but the pattern that emerges when training on BRCA1 and predicting on the remaining genes without retraining (zero-shot):

Cancer ~0.9 > ABC channel ~0.78 > Globin ~0.71 > TM membrane ~0.64 > IDR ~0.43

This gradient is not noise — it reflects the thermodynamic grammar of each protein family. Globular proteins (BRCA1, TP53, PTEN) have informative ΔG profiles because the selective pressure on mRNA stability is strong. Proteins with intrinsically disordered regions (MECP2) have flat ΔG profiles — the thermodynamic signal is weak because there is no selective pressure on the mRNA physics.

This connects directly to the E1 hypothesis in the roadmap: the transferability gradient could be a functional protein classifier based exclusively on mRNA physics.

Technical architecture

The CNN is deliberately small (~228K parameters) to avoid overfitting on genetic datasets where samples are scarce. It uses CrossEntropyLoss with 2 outputs (not BCEWithLogitsLoss with 1), class weights [1.0, n_neg/n_pos] for imbalanced datasets, and GradCAM1D for explainability — the model indicates which mRNA regions contributed to its prediction.

The shared engine (energy.py) computes the nearest-neighbor ΔG profiles. For proteins longer than 1022 amino acids, ESMC-300M requires windowing.

Competitors and differentiation

CADD integrates multiple genomic annotations into a single score. REVEL ensembles 13 predictors. AlphaMissense uses AlphaFold2 representations. All operate at the protein level.

EnergyFingerprint combines mRNA thermodynamic signal with evolutionary signal from a protein language model. That the two axes are orthogonal is the working hypothesis; if they are, that complementarity would materialize mostly where protein-level predictors cannot reach — synonymous variants and mRNA. In missense the evolutionary axis already captures the signal; EF integrates both channels but it is the evolutionary one that classifies.

Preprint with all results, figures and supplementary data.