ProteinGym DMS zero-shot (Spearman)

protein
protein-ml/proteingym-dms-zero-shot-spearman Task: regression Visibility: PUBLIC
OverviewLeaderboard

Leaderboard

Top-10 % recall (zero-shot)

↑ higher is better · zero-shot · atlas-n100-v1

ProteinGym's top-10 % recall: share of an assay's 10 % best-measured test mutants that are also among its 10 % highest-ranked, per assay, averaged over the 10 assays.

Best in the catalogue: 0.196 (the best visible result here, not a state of the art). Ranks are the server's: ties share a rank. A ≠ marks a row whose n differs from the board's usual n (1000). Floors are trivial baselines scored on the same items, shown unranked.

# Model Value 95% CI n Source Overlap
1 protein-ml/progen2-base
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.334]100
CASP3_HUMAN_Roychowdhury_20200.100 [0.000, 0.364]100
CCR5_HUMAN_Gill_20230.200 [0.000, 0.455]100
CP2C9_HUMAN_Amorosi_2021_abundance0.300 [0.000, 0.600]100
ILF3_HUMAN_Tsuboyama_2023_2L330.100 [0.000, 0.400]100
KCNE1_HUMAN_Muhammad_2023_expression0.000 [0.000, 0.000]100
MLAC_ECOLI_MacRae_20230.100 [0.000, 0.300]100
MTH3_HAEAE_RockahShmuel_20150.364 [0.091, 0.616]100
RPC1_BP434_Tsuboyama_2023_1R690.400 [0.083, 0.636]100
SPG1_STRSG_Olson_20140.300 [0.000, 0.545]100
0.196 best [0.106, 0.262] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: BFD, protein-ml/uniref90

2 protein-ml/amplify-120m
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.200 [0.000, 0.463]100
CASP3_HUMAN_Roychowdhury_20200.100 [0.000, 0.300]100
CCR5_HUMAN_Gill_20230.300 [0.000, 0.545]100
CP2C9_HUMAN_Amorosi_2021_abundance0.300 [0.091, 0.700]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.300]100
KCNE1_HUMAN_Muhammad_2023_expression0.200 [0.000, 0.455]100
MLAC_ECOLI_MacRae_20230.100 [0.000, 0.333]100
MTH3_HAEAE_RockahShmuel_20150.182 [0.000, 0.500]100
RPC1_BP434_Tsuboyama_2023_1R690.300 [0.000, 0.600]100
SPG1_STRSG_Olson_20140.200 [0.000, 0.500]100
0.188 [0.110, 0.278] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: UR100P (UniRef100 + OAS + SCOP)

3 protein-ml/progen2-small
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.000 [0.000, 0.300]100
CASP3_HUMAN_Roychowdhury_20200.100 [0.000, 0.300]100
CCR5_HUMAN_Gill_20230.100 [0.000, 0.300]100
CP2C9_HUMAN_Amorosi_2021_abundance0.400 [0.152, 0.700]100
ILF3_HUMAN_Tsuboyama_2023_2L330.100 [0.000, 0.364]100
KCNE1_HUMAN_Muhammad_2023_expression0.000 [0.000, 0.357]100
MLAC_ECOLI_MacRae_20230.200 [0.000, 0.455]100
MTH3_HAEAE_RockahShmuel_20150.182 [0.000, 0.500]100
RPC1_BP434_Tsuboyama_2023_1R690.400 [0.100, 0.700]100
SPG1_STRSG_Olson_20140.300 [0.000, 0.500]100
0.178 [0.107, 0.261] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: BFD, protein-ml/uniref90

4 protein-ml/esm2-t6-8m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.500]100
CASP3_HUMAN_Roychowdhury_20200.000 [0.000, 0.201]100
CCR5_HUMAN_Gill_20230.100 [0.000, 0.400]100
CP2C9_HUMAN_Amorosi_2021_abundance0.300 [0.091, 0.600]100
ILF3_HUMAN_Tsuboyama_2023_2L330.100 [0.000, 0.364]100
KCNE1_HUMAN_Muhammad_2023_expression0.200 [0.000, 0.500]100
MLAC_ECOLI_MacRae_20230.200 [0.000, 0.500]100
MTH3_HAEAE_RockahShmuel_20150.000 [0.000, 0.101]100
RPC1_BP434_Tsuboyama_2023_1R690.500 [0.100, 0.727]100
SPG1_STRSG_Olson_20140.200 [0.000, 0.500]100
0.170 [0.098, 0.257] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: protein-ml/uniref50

5 protein-ml/esm2-t12-35m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.500]100
CASP3_HUMAN_Roychowdhury_20200.200 [0.000, 0.500]100
CCR5_HUMAN_Gill_20230.100 [0.000, 0.400]100
CP2C9_HUMAN_Amorosi_2021_abundance0.400 [0.100, 0.700]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.200]100
KCNE1_HUMAN_Muhammad_2023_expression0.200 [0.000, 0.463]100
MLAC_ECOLI_MacRae_20230.000 [0.000, 0.200]100
MTH3_HAEAE_RockahShmuel_20150.091 [0.000, 0.357]100
RPC1_BP434_Tsuboyama_2023_1R690.300 [0.083, 0.600]100
SPG1_STRSG_Olson_20140.300 [0.000, 0.500]100
0.169 [0.100, 0.261] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: protein-ml/uniref50

5 protein-ml/esm2-t33-650m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.200 [0.000, 0.500]100
CASP3_HUMAN_Roychowdhury_20200.200 [0.000, 0.456]100
CCR5_HUMAN_Gill_20230.000 [0.000, 0.100]100
CP2C9_HUMAN_Amorosi_2021_abundance0.400 [0.091, 0.700]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.100]100
KCNE1_HUMAN_Muhammad_2023_expression0.100 [0.000, 0.364]100
MLAC_ECOLI_MacRae_20230.000 [0.000, 0.250]100
MTH3_HAEAE_RockahShmuel_20150.091 [0.000, 0.400]100
RPC1_BP434_Tsuboyama_2023_1R690.400 [0.083, 0.700]100
SPG1_STRSG_Olson_20140.300 [0.000, 0.500]100
0.169 [0.096, 0.243] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: protein-ml/uniref50

7 protein-ml/prot-bert
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.334]100
CASP3_HUMAN_Roychowdhury_20200.200 [0.000, 0.400]100
CCR5_HUMAN_Gill_20230.100 [0.000, 0.400]100
CP2C9_HUMAN_Amorosi_2021_abundance0.200 [0.000, 0.545]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.300]100
KCNE1_HUMAN_Muhammad_2023_expression0.100 [0.000, 0.300]100
MLAC_ECOLI_MacRae_20230.000 [0.000, 0.273]100
MTH3_HAEAE_RockahShmuel_20150.364 [0.091, 0.616]100
RPC1_BP434_Tsuboyama_2023_1R690.400 [0.091, 0.636]100
SPG1_STRSG_Olson_20140.200 [0.000, 0.500]100
0.166 [0.095, 0.246] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: UniRef100

8 protein-ml/esm2-t36-3b-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.417]100
CASP3_HUMAN_Roychowdhury_20200.200 [0.000, 0.400]100
CCR5_HUMAN_Gill_20230.000 [0.000, 0.300]100
CP2C9_HUMAN_Amorosi_2021_abundance0.300 [0.077, 0.600]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.100]100
KCNE1_HUMAN_Muhammad_2023_expression0.100 [0.000, 0.300]100
MLAC_ECOLI_MacRae_20230.100 [0.000, 0.333]100
MTH3_HAEAE_RockahShmuel_20150.091 [0.000, 0.417]100
RPC1_BP434_Tsuboyama_2023_1R690.400 [0.083, 0.700]100
SPG1_STRSG_Olson_20140.300 [0.000, 0.500]100
0.159 [0.078, 0.232] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: protein-ml/uniref50

9 protein-ml/amplify-350m
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.400]100
CASP3_HUMAN_Roychowdhury_20200.200 [0.000, 0.455]100
CCR5_HUMAN_Gill_20230.100 [0.000, 0.334]100
CP2C9_HUMAN_Amorosi_2021_abundance0.000 [0.000, 0.300]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.250]100
KCNE1_HUMAN_Muhammad_2023_expression0.100 [0.000, 0.364]100
MLAC_ECOLI_MacRae_20230.100 [0.000, 0.462]100
MTH3_HAEAE_RockahShmuel_20150.273 [0.000, 0.600]100
RPC1_BP434_Tsuboyama_2023_1R690.400 [0.091, 0.700]100
SPG1_STRSG_Olson_20140.200 [0.000, 0.500]100
0.147 [0.091, 0.240] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: UR100P (UniRef100 + OAS + SCOP)

10 protein-ml/esm2-t30-150m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.100 [0.000, 0.400]100
CASP3_HUMAN_Roychowdhury_20200.100 [0.000, 0.500]100
CCR5_HUMAN_Gill_20230.000 [0.000, 0.200]100
CP2C9_HUMAN_Amorosi_2021_abundance0.300 [0.083, 0.636]100
ILF3_HUMAN_Tsuboyama_2023_2L330.100 [0.000, 0.364]100
KCNE1_HUMAN_Muhammad_2023_expression0.100 [0.000, 0.364]100
MLAC_ECOLI_MacRae_20230.000 [0.000, 0.200]100
MTH3_HAEAE_RockahShmuel_20150.091 [0.000, 0.364]100
RPC1_BP434_Tsuboyama_2023_1R690.300 [0.000, 0.600]100
SPG1_STRSG_Olson_20140.200 [0.000, 0.500]100
0.129 [0.078, 0.224] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: protein-ml/uniref50

11 protein-ml/protgpt2
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.000 [0.000, 0.300]100
CASP3_HUMAN_Roychowdhury_20200.100 [0.000, 0.500]100
CCR5_HUMAN_Gill_20230.000 [0.000, 0.273]100
CP2C9_HUMAN_Amorosi_2021_abundance0.200 [0.000, 0.500]100
ILF3_HUMAN_Tsuboyama_2023_2L330.000 [0.000, 0.273]100
KCNE1_HUMAN_Muhammad_2023_expression0.000 [0.000, 0.000]100
MLAC_ECOLI_MacRae_20230.200 [0.000, 0.500]100
MTH3_HAEAE_RockahShmuel_20150.182 [0.000, 0.400]100
RPC1_BP434_Tsuboyama_2023_1R690.300 [0.000, 0.500]100
SPG1_STRSG_Olson_20140.000 [0.000, 0.300]100
0.098 [0.056, 0.190] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: protein-ml/uniref50

Protocol

What is measured. How well a model ranks single amino-acid substitutions of a protein by their experimentally measured effect, on ten deep mutational scanning (DMS) assays of ProteinGym v1 (Notin et al., NeurIPS 2023). DMS_score is oriented by ProteinGym so that higher means fitter.

Assays. Two per ProteinGym coarse_selection_type, drawn by seed-hash rank among the substitution assays whose wild type has at most 1,022 residues and that measure at least 600 single mutants. The choice is a function of the seed and the pinned reference file, not a hand-picked list:

selection typeassays
ActivityANCSZ_Hobbs_2022, CASP3_HUMAN_Roychowdhury_2020
BindingCCR5_HUMAN_Gill_2023, SPG1_STRSG_Olson_2014
ExpressionCP2C9_HUMAN_Amorosi_2021_abundance, KCNE1_HUMAN_Muhammad_2023_expression
OrganismalFitnessMLAC_ECOLI_MacRae_2023, MTH3_HAEAE_RockahShmuel_2015
StabilityILF3_HUMAN_Tsuboyama_2023_2L33, RPC1_BP434_Tsuboyama_2023_1R69

Items. Single substitutions only; multi-mutants are dropped. Per assay, 100 test and 500 train mutants, disjoint, both drawn by seed-hash rank.

Zero-shot (spearman_zero_shot). The model scores each test mutant from the wild-type sequence and the mutation alone (for a masked language model, typically the masked-marginal log-ratio), higher meaning fitter, and never sees assay data. Spearman ρ against DMS_score per assay, then the mean over the ten assays.

Probe (spearman_probe). The model embeds each mutated sequence (last layer, mean over residues). Per assay, a ridge head is fit on the 500 train mutants and predicts the 100 test mutants; Spearman ρ per assay, mean over assays. Labels stay in the runner: the model only ever sees sequences.

ProteinGym's other metrics (both protocols, per assay, then the mean over the ten, as ProteinGym's performance_DMS_benchmarks.py computes them). auc_*: ROC AUC of the score against DMS_score_bin, the assay's binarised measurement (ProteinGym's per-assay DMS_binarization_cutoff), joined from the item table's label_bin. mcc_*: Matthews correlation between the score split at its median and DMS_score_bin. ndcg_top10_*: NDCG of the 10 % highest-scored mutants (10 of 100), min-max scaled DMS scores as gains. top10_recall_*: share of the true top 10 % that the score also puts in its top 10 %. A top decile of 10 mutants per assay makes the NDCG and recall intervals wide.

Uncertainty. 95 % bootstrap interval, 1,000 resamples of test mutants drawn within each assay.

Caveats. Train and test are disjoint by mutant, not by position, so a probe can learn from train mutants at a test mutant's position that the position is intolerant; the zero-shot metric is unaffected. Ten assays and 100 mutants each are a subset of ProteinGym's own protocol (every mutant of 217 assays): numbers compare models here, not with the official leaderboard.

Data

  • pg: hf_dataset OATML-Markslab/ProteinGym_v1 at revision 1ea2aa10a328cc085b64328e790c54755fe32b10, licence MIT, catalogued as protein-ml/proteingym-v1
  • pg_ref: url https://raw.githubusercontent.com/OATML-Markslab/ProteinGym/144fe22b07dfaeec2b366f2346203a9838a55b4c/reference_files/DMS_substitutions.csv, licence MIT, catalogued as protein-ml/proteingym

Subset

  • seed 20261006
  • test: 100 item(s) per group
  • train: 500 item(s) per group
  • results at atlas-n100-v1 use subset 09197ac2b2f80dc3

Metrics

  • spearman_zero_shot — Spearman ρ (zero-shot); protocol zero_shot; higher is better; range [-1.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • auc_zero_shot — AUC (zero-shot); protocol zero_shot; higher is better; range [0.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • mcc_zero_shot — MCC (zero-shot); protocol zero_shot; higher is better; range [-1.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • ndcg_top10_zero_shot — NDCG, top 10 % (zero-shot); protocol zero_shot; higher is better; range [0.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • top10_recall_zero_shot — Top-10 % recall (zero-shot); protocol zero_shot; higher is better; range [0.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • spearman_probe — Spearman ρ (ridge probe); protocol probe; higher is better; range [-1.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • auc_probe — AUC (ridge probe); protocol probe; higher is better; range [0.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • mcc_probe — MCC (ridge probe); protocol probe; higher is better; range [-1.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • ndcg_top10_probe — NDCG, top 10 % (ridge probe); protocol probe; higher is better; range [0.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group
  • top10_recall_probe — Top-10 % recall (ridge probe); protocol probe; higher is better; range [0.0, 1.0]; mean over group; 95% bootstrap CI, 1000 resamples, stratified by group

Sample

Assay SPG1_STRSG_Olson_2014: binding of the protein G B1 domain to IgG-Fc (448-residue wild type MEKEKKVKYF…GALAVASKRKED, 1,045 single mutants). Three of its training mutants:

item_idmutantDMS_score
SPG1_STRSG_Olson_2014:A252KA252K−4.61
SPG1_STRSG_Olson_2014:G264SG264S0.03
SPG1_STRSG_Olson_2014:A250YA250Y2.16

Input: the wild-type sequence, the mutant string and the mutated sequence. Expected output: one score per mutant whose order matches the measured one, here A252K < G264S < A250Y.