ProteinGym DMS zero-shot (Spearman)

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

Leaderboard

NDCG, top 10 % (zero-shot)

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

ProteinGym's NDCG: discounted cumulative gain of the 10 mutants per assay ranked highest (the top 10 % of 100), with min-max scaled DMS scores as gains, over that of the ideal ranking; averaged over the 10 assays.

Best in the catalogue: 0.814 (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/amplify-350m
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.793 [0.686, 0.925]100
CASP3_HUMAN_Roychowdhury_20200.843 [0.767, 0.917]100
CCR5_HUMAN_Gill_20230.827 [0.613, 0.882]100
CP2C9_HUMAN_Amorosi_2021_abundance0.812 [0.760, 0.863]100
ILF3_HUMAN_Tsuboyama_2023_2L330.835 [0.755, 0.917]100
KCNE1_HUMAN_Muhammad_2023_expression0.612 [0.446, 0.746]100
MLAC_ECOLI_MacRae_20230.878 [0.814, 0.932]100
MTH3_HAEAE_RockahShmuel_20150.834 [0.759, 0.906]100
RPC1_BP434_Tsuboyama_2023_1R690.877 [0.783, 0.938]100
SPG1_STRSG_Olson_20140.833 [0.704, 0.942]100
0.814 best [0.774, 0.842] 1000 reproduced
overlap

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

2 protein-ml/progen2-base
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.809 [0.694, 0.943]100
CASP3_HUMAN_Roychowdhury_20200.793 [0.691, 0.888]100
CCR5_HUMAN_Gill_20230.834 [0.617, 0.897]100
CP2C9_HUMAN_Amorosi_2021_abundance0.856 [0.770, 0.921]100
ILF3_HUMAN_Tsuboyama_2023_2L330.824 [0.745, 0.903]100
KCNE1_HUMAN_Muhammad_2023_expression0.550 [0.430, 0.662]100
MLAC_ECOLI_MacRae_20230.835 [0.717, 0.911]100
MTH3_HAEAE_RockahShmuel_20150.894 [0.823, 0.945]100
RPC1_BP434_Tsuboyama_2023_1R690.883 [0.804, 0.958]100
SPG1_STRSG_Olson_20140.857 [0.733, 0.943]100
0.814 [0.773, 0.841] 1000 reproduced
overlap

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

3 protein-ml/amplify-120m
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.785 [0.676, 0.923]100
CASP3_HUMAN_Roychowdhury_20200.807 [0.712, 0.891]100
CCR5_HUMAN_Gill_20230.863 [0.629, 0.927]100
CP2C9_HUMAN_Amorosi_2021_abundance0.866 [0.802, 0.927]100
ILF3_HUMAN_Tsuboyama_2023_2L330.811 [0.720, 0.892]100
KCNE1_HUMAN_Muhammad_2023_expression0.588 [0.441, 0.745]100
MLAC_ECOLI_MacRae_20230.883 [0.792, 0.940]100
MTH3_HAEAE_RockahShmuel_20150.795 [0.708, 0.881]100
RPC1_BP434_Tsuboyama_2023_1R690.854 [0.779, 0.936]100
SPG1_STRSG_Olson_20140.876 [0.763, 0.943]100
0.813 [0.775, 0.839] 1000 reproduced
overlap

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

4 protein-ml/prot-bert
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.694 [0.527, 0.889]100
CASP3_HUMAN_Roychowdhury_20200.780 [0.692, 0.863]100
CCR5_HUMAN_Gill_20230.839 [0.624, 0.911]100
CP2C9_HUMAN_Amorosi_2021_abundance0.822 [0.760, 0.881]100
ILF3_HUMAN_Tsuboyama_2023_2L330.790 [0.707, 0.874]100
KCNE1_HUMAN_Muhammad_2023_expression0.612 [0.486, 0.732]100
MLAC_ECOLI_MacRae_20230.864 [0.779, 0.919]100
MTH3_HAEAE_RockahShmuel_20150.890 [0.776, 0.958]100
RPC1_BP434_Tsuboyama_2023_1R690.864 [0.778, 0.934]100
SPG1_STRSG_Olson_20140.805 [0.615, 0.928]100
0.796 [0.753, 0.827] 1000 reproduced
overlap

Train/test overlap declared by the evaluator: UniRef100

5 protein-ml/esm2-t33-650m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.818 [0.708, 0.940]100
CASP3_HUMAN_Roychowdhury_20200.858 [0.751, 0.912]100
CCR5_HUMAN_Gill_20230.819 [0.656, 0.874]100
CP2C9_HUMAN_Amorosi_2021_abundance0.862 [0.761, 0.924]100
ILF3_HUMAN_Tsuboyama_2023_2L330.823 [0.754, 0.904]100
KCNE1_HUMAN_Muhammad_2023_expression0.529 [0.366, 0.690]100
MLAC_ECOLI_MacRae_20230.842 [0.753, 0.907]100
MTH3_HAEAE_RockahShmuel_20150.681 [0.492, 0.828]100
RPC1_BP434_Tsuboyama_2023_1R690.886 [0.801, 0.951]100
SPG1_STRSG_Olson_20140.820 [0.700, 0.939]100
0.794 [0.750, 0.824] 1000 reproduced
overlap

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

6 protein-ml/esm2-t36-3b-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.795 [0.694, 0.922]100
CASP3_HUMAN_Roychowdhury_20200.804 [0.722, 0.885]100
CCR5_HUMAN_Gill_20230.796 [0.569, 0.887]100
CP2C9_HUMAN_Amorosi_2021_abundance0.840 [0.767, 0.913]100
ILF3_HUMAN_Tsuboyama_2023_2L330.825 [0.748, 0.904]100
KCNE1_HUMAN_Muhammad_2023_expression0.561 [0.419, 0.673]100
MLAC_ECOLI_MacRae_20230.843 [0.742, 0.917]100
MTH3_HAEAE_RockahShmuel_20150.718 [0.545, 0.836]100
RPC1_BP434_Tsuboyama_2023_1R690.887 [0.802, 0.953]100
SPG1_STRSG_Olson_20140.837 [0.637, 0.938]100
0.791 [0.741, 0.820] 1000 reproduced
overlap

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

7 protein-ml/progen2-small
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.744 [0.632, 0.884]100
CASP3_HUMAN_Roychowdhury_20200.742 [0.669, 0.847]100
CCR5_HUMAN_Gill_20230.828 [0.651, 0.871]100
CP2C9_HUMAN_Amorosi_2021_abundance0.872 [0.799, 0.962]100
ILF3_HUMAN_Tsuboyama_2023_2L330.838 [0.744, 0.916]100
KCNE1_HUMAN_Muhammad_2023_expression0.533 [0.342, 0.679]100
MLAC_ECOLI_MacRae_20230.826 [0.663, 0.899]100
MTH3_HAEAE_RockahShmuel_20150.565 [0.326, 0.837]100
RPC1_BP434_Tsuboyama_2023_1R690.877 [0.814, 0.950]100
SPG1_STRSG_Olson_20140.875 [0.765, 0.944]100
0.770 [0.723, 0.812] 1000 reproduced
overlap

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

8 protein-ml/esm2-t30-150m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.783 [0.679, 0.915]100
CASP3_HUMAN_Roychowdhury_20200.783 [0.729, 0.881]100
CCR5_HUMAN_Gill_20230.843 [0.687, 0.884]100
CP2C9_HUMAN_Amorosi_2021_abundance0.856 [0.754, 0.939]100
ILF3_HUMAN_Tsuboyama_2023_2L330.847 [0.775, 0.925]100
KCNE1_HUMAN_Muhammad_2023_expression0.492 [0.286, 0.708]100
MLAC_ECOLI_MacRae_20230.836 [0.741, 0.902]100
MTH3_HAEAE_RockahShmuel_20150.585 [0.330, 0.778]100
RPC1_BP434_Tsuboyama_2023_1R690.849 [0.740, 0.927]100
SPG1_STRSG_Olson_20140.801 [0.671, 0.938]100
0.768 [0.722, 0.809] 1000 reproduced
overlap

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

9 protein-ml/esm2-t12-35m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.766 [0.669, 0.906]100
CASP3_HUMAN_Roychowdhury_20200.777 [0.715, 0.881]100
CCR5_HUMAN_Gill_20230.818 [0.636, 0.873]100
CP2C9_HUMAN_Amorosi_2021_abundance0.861 [0.718, 0.943]100
ILF3_HUMAN_Tsuboyama_2023_2L330.829 [0.748, 0.909]100
KCNE1_HUMAN_Muhammad_2023_expression0.565 [0.406, 0.710]100
MLAC_ECOLI_MacRae_20230.810 [0.725, 0.881]100
MTH3_HAEAE_RockahShmuel_20150.514 [0.253, 0.712]100
RPC1_BP434_Tsuboyama_2023_1R690.845 [0.741, 0.932]100
SPG1_STRSG_Olson_20140.845 [0.720, 0.942]100
0.763 [0.712, 0.798] 1000 reproduced
overlap

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

10 protein-ml/esm2-t6-8m-ur50d
By assay: 10 levels
assayValue [95% CI]n
ANCSZ_Hobbs_20220.785 [0.653, 0.917]100
CASP3_HUMAN_Roychowdhury_20200.697 [0.639, 0.781]100
CCR5_HUMAN_Gill_20230.806 [0.594, 0.875]100
CP2C9_HUMAN_Amorosi_2021_abundance0.813 [0.690, 0.898]100
ILF3_HUMAN_Tsuboyama_2023_2L330.828 [0.746, 0.907]100
KCNE1_HUMAN_Muhammad_2023_expression0.582 [0.418, 0.709]100
MLAC_ECOLI_MacRae_20230.772 [0.552, 0.904]100
MTH3_HAEAE_RockahShmuel_20150.406 [0.212, 0.582]100
RPC1_BP434_Tsuboyama_2023_1R690.891 [0.806, 0.964]100
SPG1_STRSG_Olson_20140.873 [0.724, 0.950]100
0.745 [0.695, 0.779] 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.718 [0.575, 0.880]100
CASP3_HUMAN_Roychowdhury_20200.655 [0.563, 0.808]100
CCR5_HUMAN_Gill_20230.822 [0.649, 0.867]100
CP2C9_HUMAN_Amorosi_2021_abundance0.594 [0.375, 0.760]100
ILF3_HUMAN_Tsuboyama_2023_2L330.775 [0.697, 0.868]100
KCNE1_HUMAN_Muhammad_2023_expression0.380 [0.210, 0.536]100
MLAC_ECOLI_MacRae_20230.851 [0.673, 0.938]100
MTH3_HAEAE_RockahShmuel_20150.466 [0.205, 0.796]100
RPC1_BP434_Tsuboyama_2023_1R690.875 [0.750, 0.926]100
SPG1_STRSG_Olson_20140.646 [0.458, 0.840]100
0.678 [0.620, 0.730] 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.