Machine Learning for Protein Engineering

Finding better proteins for fewer measurements

We reimplemented the reference models for deep mutational scanning, then measured the thing the benchmarks leave out: how many laboratory measurements the model actually saves.

Nine 96-well plates, measured against four hundred

Open the evaluation dashboardSee the results

The question a benchmark score does not answer

Deep mutational scanning measures tens of thousands of variants at once. A model trained on those measurements is meant to tell you which of the millions it did not measure are worth making. The literature scores that model with a correlation. A laboratory cannot spend a correlation.

What gets reported

Pearson r = 0.98 on a held-out split.

True, reproducible, and silent about what to do next.

What a laboratory decides

Which 96 variants go on the next plate

and whether the plate after that is worth paying for.

So we ask three different questions

  1. If I make a hundred of these, how good are they?
  2. How many measurements would random picking have needed for the same haul?
  3. Is the model’s best pick better than the best thing I have already measured?

What we do

1

Reproduce the reference models honestly

Four architectures over one-hot and AAindex features, on five public DMS datasets, in PyTorch. Reproduction is the baseline, not the result.

2

Replace correlation with a decision

Selection metrics throughout — captured gain, recall of the true top hundred, budget to the best — every one of them normalised against a random-picking null.

3

Price the target before fitting it

Enrichment scores are ratios of read counts, so they carry noise no model can predict. Splitting the reads gives a hard ceiling on any achievable correlation.

4

Replay the campaign, and cost it

Spend a budget the way a laboratory would — seed, retrain, choose, repeat — and score every strategy on reads it never trained on.

9 plates instead of 406

On the one combinatorially complete library in the set, 864 model-guided measurements bought 78 of the pool’s true top 100. Random spending of the same budget bought 1.

45×
Fewer measurements for the same haul: 864 against 38,997.
78
Of the true top 100, what the median campaign walks away with.
02040608010096192288384480576672768864measurements paid forvariants from the true top 100Model-guided 78Additive 68Random 1

Variants from the pool’s true top 100 recovered, by measurements spent (96 per plate), 50 independent repeats.

Scored on reads the model never trained on: the counts are split into two independent replicates, and the strategy is judged on the half it did not see. 50 independent repeats.

Where that gain actually comes from

Each rung adds one thing to the one below it. Read it before crediting the result to any single component — the answer is not the architecture.

1
Random
1
of the top 100
baseline
nothing
2
Greedy, no model
10
of the top 100
adds 11% of the gain
a round structure, with no fitted model
3
Additive ridge
68
of the top 100
adds 76% of the gain
a predictive model in that loop, linear
4
CNN
78
of the top 100
adds 13% of the gain
a network instead of the linear model

What earns the money is fitting any predictive model at all inside the loop — not the loop, and not the network. The network still pays for itself: it reaches the linear model’s final result at 592 measurements rather than 864, and it cuts the rate of a badly failing campaign from 22% to 6%.

What does not survive re-measurement

The single best variant each strategy found, measured a second time on the independent replicate. This is the column that decides whether a headline number can be quoted.

The ranking holds

78 of the true top 100, confirmed on reads the model never saw. A batch claim is safe.

The champion claim does not

Re-measured, every strategy lands within a few tenths — including random.

012345log2 enrichment of the best pickModel-guidedAdditiveGreedyRandom4.654.453.803.342.682.612.772.73As reportedRe-measured on the independent replicate

The test also has no power: with 50 repeats the standard error of the difference is about 0.17, so failing to separate is not the same as equivalence. And 0.62 of the 1.97 drop is incurred by random picking too — it is what taking a maximum over noisy values costs anyone.

Before pricing a model, check the target exists

All five dataset files are byte-identical to the published source, with no residue mismatches, no duplicate variants and no overlap between splits. Then there is this.

24.8%
Of one published library, the share of variants with zero input reads — no denominator, so the score is arithmetic rather than measurement.
99
Of that library’s top 100 scores, how many belong to those unmeasured rows.
15 vs 249
Median reads behind the top 100 of a clean library, against its own median — the winner’s curse, visible before any model is fitted.
What that means for anything measured on itEvery selection metric computed on the unfiltered library was scoring the recovery of rows nobody measured. The file is the published one, so this applies to the literature built on it as much as to us — and it was found by auditing read counts, not scores.

What we can take on

The part we do for someone else is evaluation: not making the model bigger, but working out which of its numbers can be acted on.

1

Measurement noise ceilings

The highest correlation any predictor can reach against your scores — so you know whether more tuning is worth paying for.

2

Data audits

Read depth, pseudocount artefacts, tie structure, split overlap, and a byte comparison against the published source.

3

Campaign replay

What model-guided selection returns against random, additive and zero-shot baselines at equal spend.

4

Pricing the winner’s curse

Separating selection bias from the reported improvement, and giving the corrected value.

If you need an evaluation, we can take the work on.

An in-house campaign, a model benchmark, or a pipeline on public data.  kwlee@caidesystems.com

Open the evaluation dashboard

CAIDE Systems, Inc. — Machine Learning for Protein Engineering. The full accounting, with every caveat, is on the evaluation dashboard.