ConceptIntermediateEval-Driven Specification / Golden datasets and test set ownership / #6

What is a holdout set and when would you use one for an AI product?

The direct answer
A holdout set is a slice of your golden set that's sealed off from day one, so nobody tuning the model ever sees it. Use one the moment a golden set exists, before anyone starts tuning, not after leadership already trusts a number. Size it less by copying a round percentage and more by how many examples it actually takes to trust the score you get back.
Do this, in order
  1. Carve out the holdout from day one and never let anyone tuning the model see it.Why: a score computed from data the model was tuned against is a mirror, not a measurement.
  2. Break the size into two real terms, the golden set's total, and the fraction held back.Why: one guessed holdout number hides which term is actually doing the work.
  3. Size the fraction by how sure the final score needs to make you, not by copying a round number like 20 percent.Why: a holdout too small can't tell a real regression from noise.
  4. Give the holdout size as a range, not one number, since the golden set is still growing.Why: treating a moving target as fixed makes the whole plan brittle.
  5. Check the range against what it actually buys you, in points of honest wobble.Why: 80 examples might only be honest to within about 7 points, and that's not tight enough for every decision it gets asked to back up.
  6. Watch how sure you need to be, not how big the golden set gets, as the number that moves this most.Why: cutting the wobble in half costs roughly four times the examples, a bigger swing than growing the whole set.

How to answer this, stage by stage

Seven moves. The trap is naming a fraction, twenty percent, and stopping there, with nothing behind it.

1
Scope it to one real product and one real number people will trust
Say it like this
"Let's scope this. Say I'm the PM on Repline, the form-scoring feature inside Ironloop, a home strength app. We've built a 400-clip golden set, coached and scored by a real strength coach. The question is whether the score we report off that set is actually honest."
Why this works
Grounds an abstract term in one real product and one real number before defining anything.
2
Say what a golden set alone can't tell you
Say it like this
"Having 400 scored clips isn't the same as having a trustworthy number. If the people tuning the model's thresholds are the same people grading it against those 400 clips, of course it looks good. That's not a score. That's the model checking its own homework."
Why this works
Separates having test data from having an honest test, which is the whole reason a holdout exists.
3
State the holdout equation out loud (B)
Say it like this
"There's one equation here. Holdout size equals the total golden set, times the fraction we seal off and never let anyone touch while building the model. Two terms. Right now I have a number for neither one locked in."
Why this works
An estimate with no visible equation is a guess wearing a confident voice.
4
Own a real fraction and a real category list (O)
Say it like this
"I'll hold back a fifth, 20 percent, that's standard practice and gives the holdout room to mean something without starving development. Our golden set has eight fault categories, clean reps, knees caving in, missed depth, and so on, adding up to 400 clips. A fifth of 400 is 80. That's the number nobody tuning the model gets to see until the very end."
Why this works
Names the assumption out loud instead of hiding a guessed fraction inside one confident number.
5
Give it as a range, then check what that range buys you (U, N)
Say it like this
"Add up the categories and I get 400, 80 held out, with an honest range of 50 to 120 as the set keeps growing. Now the check: with 80 sealed clips, a measured 90 percent agreement could honestly be anywhere from 83 to 97. That catches a broken model. It won't catch a quiet slip from 90 down to 87."
Why this works
A range beats false precision, and checking it against a real question, can this catch what we need it to, is what makes it an estimate instead of a guess with decimals.
6
Name the assumption that swings it most (D)
Say it like this
"If I just grow the whole golden set, 250 up to 600, the holdout moves by 70 examples. If instead I decide I need a tighter number, cutting the wobble from about 10 points down to about 5, that alone moves the holdout by around 105 examples. How sure I need to be swings this more than how big the golden set gets."
Why this works
A good estimator names which knob actually matters. A bad one just reports the total.
7
Say what stays untouched, and close on the plan
Say it like this
"So: 80 clips sealed off today, out of 400, a fifth, honest range 50 to 120 as the set grows. The Friday spot-check, ten random clips the team eyeballs together, stays exactly as open as it's always been, that's a gut check, not a report to leadership. And the thing I'm watching is how tight a number the safety team actually needs, because that's what moves this figure, not how big the golden set gets."
Why this works
Ends on something someone could act on tomorrow morning, not a vibe about "enough test data."
If you remember one thing A holdout set isn't extra data. It's the slice of the golden set nobody tuning the model is allowed to open, sized by how sure you need the final number to be, not by copying a round percentage.

Let's learn

Repline is the part of Ironloop, a home strength-training app, that watches a lifter's squat or deadlift video and scores their form.

Before anyone measured it carefully, the team judged Repline the same way every Friday: pull ten random clips, watch them together, and ship the update if none looked obviously wrong.

Now there's a real golden set. 400 clips, each one scored by a certified strength coach, covering the ways a squat or deadlift actually goes wrong: knees caving in, missed depth, a rounding lower back, the bar drifting forward, a bad camera angle, a rep too fast to count, even two people sharing one small home gym.

Knowledge spark: what's the wobble around a small number? Score 80 clips and get 90 right, and the real number could honestly sit a little higher or lower. A small sample always wobbles around the truth. More examples shrink the wobble. Fewer examples widen it.
# fault category, clips needed (own numbers)
Clean rep, textbook form: 40
Knees cave in (valgus): 60
Doesn't hit depth: 60
Lower back rounds: 60
Bar drifts forward: 50
Bad camera angle: 60
Rep too fast to count: 40
Two lifters, one frame: 30

# total (added up, not averaged)
400

# holdout, one fifth, sealed from day one
80
The build-up: total golden set, split into open and sealed
Low (250 total)
200 open
50
Point estimate (400 total)
320 open
80
High (600 total)
480 open
120
Open, tuned against Sealed, never touched during development
The fraction sealed off never moves, one fifth. What moves is the total it's taken from, from 250 up to 600, depending on how many fault categories the team ends up finishing.

Here's the turn. The problem isn't whether Repline agrees with the coach on those 400 clips. Of course it mostly does. The engineers tuning the model's thresholds, how far the knees can drift, how deep counts as deep enough, have been staring at every one of those same 400 clips for weeks. A model allowed to see the answer key while it studies will always pass a test written from that same key.

We didn't build a score. We built a mirror.
The decision that mattered Seal off a fifth of the golden set the day it exists, before anyone starts tuning against it. Not after the number already looks good.

What that costs at its worst: Repline reports 96 percent agreement with the coach, leadership signs off, and a real user's knee-valgus rep still gets scored "good form," because a small fix was made for that exact kind of clip, memorized rather than actually learned.

The choice I would take back. Letting every engineer tuning the model see the entire golden set. That made sense back when the set was brand new, only 40 clips, and holding any of it back felt wasteful. It stopped making sense the moment the set was big enough for someone to quietly tune around specific clips without meaning to.

What I would leave alone. The Friday review, ten random clips the whole team watches together, doesn't need to change. Nobody's reporting a number off that habit. It's a gut check, and a gut check doesn't need to be blind.

The lesson. A score computed from data the model already learned from isn't really a score. It's the model telling you what you already told it.

Now here is the same thing as a story

The short version is above. Read on if you want to feel why a sealed folder beat a number everyone already believed.

Every Thursday afternoon, Akosua opens the same shared folder and scrolls through all 400 scored clips, one more time, just to be sure nothing's drifted. She's the product manager on Repline, and she wrote the fault-category list herself, back when it was eight lines on a sticky note: knees, depth, back, bar path, camera, tempo, crowding, and clean.

She can spot a valgus knee from a thumbnail before the video even loads. Ask her which clip is the hardest one in the set and she'll tell you without checking, clip 214, a squat filmed from the worst possible angle in someone's garage.

When the golden set first came together, it felt like a small miracle, and for a few good weeks it was. Any engineer tuning a threshold could open the whole folder, watch exactly which clips their change helped or hurt, and ship with confidence. Nobody thought twice about it. The set was small, 40 clips at first, and holding any of it back had felt like throwing away scarce, hard-won data.

The habit crept in three small steps. First, engineers started naming clips by number in the team channel, "fixed the thing that broke 214." Then someone wrote a quick check that literally asserted clip 214 now passed, a fast way to confirm a fix landed. Then, without anyone deciding it on purpose, "did all 400 pass" quietly became the actual bar for shipping.

Nobody noticed, until a new hire on the ML team asked a small question in standup. "What's our holdout look like?" Silence. Akosua realized, mid-meeting, that there wasn't one. There never had been.

She went back and pulled the threshold code that weekend. Buried in a config file was a line that read, in effect, if this is one of clips 88, 214, or 305, allow two extra degrees of knee drift. Someone had tuned the model around three specific, hard clips instead of around the general rule those clips were supposed to represent.

A hand-sketched comparison scene: a soft grey folder labeled IN USE with the caption 320 clips, open, tuned against, next to a smaller amber-accented sealed document labeled SEALED with the caption 80 clips, never opened
Most of the set stays open for tuning. A fifth sits apart, sealed, until the very last step.
We didn't build a score. We built a mirror.

The old decision, from that first small meeting when the set was only 40 clips: let everyone see everything, because holding data back when there was so little of it felt like the wasteful move. What nobody said out loud in that meeting was that the golden set wouldn't stay small, and the day it grew past what one person could remember clip by clip was exactly the day it needed a slice nobody was allowed to touch.

So Akosua sealed 80 clips that Thursday night, picked to spread across all eight fault categories, and locked them out of every tuning script the team used. Then she reran the numbers against just that sealed 80.

Reported agreement dropped from a memorized 96 percent to an honest 89 percent. Still fine, on the whole. But knee-valgus accuracy on the sealed clips came back at 78 percent, against 95 percent on the clips the model had been tuned against. That 17-point gap was the whole story, in one number. The model hadn't learned to see a caving knee. It had learned to recognize the specific knees it had already been shown.

The part I'd go back and tell myself: I thought we needed more data. We needed a slice of the data nobody was allowed to look at.

BOUND, sized for a slice nobody's allowed to open

This is a sizing question wearing a definition's clothes, so BOUND fits and FLIPS doesn't. Nobody's habit snapped on a Tuesday here. A team just had to decide how much of its own test to hide from itself.

B, break it down. Holdout size equals the golden set's total, times the fraction sealed off from everyone tuning the model, added as one product, not guessed as a single number.
O, own the numbers. A fifth, 20 percent, held back. Eight fault categories add up to 400 clips: clean reps, knee valgus, missed depth, back rounding, bar drift, bad camera angle, fast tempo, and crowded frames. A fifth of 400 is 80.
U, use a range. At the point estimate, 80. If the set only reaches 250 by launch, 50. If it grows to 600 as more fault categories get written, 120. Honest range: 50 to 120.
N, nail the sanity check. With 80 sealed clips, a measured 90 percent agreement is honest only to within about 7 points, so it could really be anywhere from 83 to 97. That's enough to catch a model that's actually broken. It's not enough to catch a quiet two or three point slip.
D, direction. Growing the whole golden set from 250 to 600 moves the holdout by 70 examples. Wanting a tighter number instead, cutting the wobble from about 10 points down to about 5, moves it by about 105 examples on its own. How sure the team needs to be swings this more than how big the golden set gets.

A hand-sketched number line marking a low bound of 50 clips at a 250-clip total, a point estimate of 80 clips at a 400-clip total, a high bound of 120 clips at a 600-clip total, and a weekly spot-check of 12 clips marked separately for scale
The range against the number the Friday spot-check already runs on, for scale.
What moves the holdout more: the golden set's size, or how sure the score needs to be
How sure you need to be, loose to firm105 clips
Total golden set size, 250 to 600 clips70 clips
Growing the whole golden set from 250 to 600 only moves the holdout by 70 clips. Wanting a tighter number, cutting the wobble from about 10 points to about 5, moves it by about 105. Precision costs more than volume.
What I would leave alone The Friday spot-check doesn't need sealing. Nobody reports a number off it, so it stays a gut check, open to anyone, exactly as it always was.

And if you want to be sure it really works, try it somewhere else

Ironseam Fabrication builds the tool trainee welders use to grade their own bead technique from shop-floor photos: porosity, undercut, lack of fusion, overlap, or a clean pass. Five categories, fixed by the welding standard the shop certifies against, not something a product team gets to invent.

B, break it down. Holdout size equals the total golden set, times the fraction sealed off, added up across the five fixed categories.
O, own the numbers. Oluwaseun Bankole, Ironseam's eval lead, sizes each category by how much a defect's look actually varies: clean pass at 30, porosity at 45, undercut at 45, overlap at 30, lack of fusion at 50, the highest, because it's the one that can fail a weld nobody can see failed just by looking. Total: 200. Fraction held back: a quarter, 25 percent, higher than Repline's, because a wrong call here can fail a real weld. Holdout: 50.
U, use a range. The five categories are fixed by the standard, so the swing comes from budget instead: a lean pass at 20 examples per category gives 100 total, 25 held out. A thorough pass at 60 each gives 300 total, 75 held out. Range: 25 to 75.
N, nail the sanity check. At 50 held-out photos, a measured 88 percent agreement with a certified inspector is honest only to within about 9 points, so the real number could sit anywhere from 79 to 97. Against an 85 percent pass bar that decides whether a trainee gets signed off, that's too wide to call.
D, direction. In principle, tightening the confidence bar would move the holdout more than growing the total would, same shape as Repline's answer. But the inspection standard fixes how sure the shop has to be. Oluwaseun can't loosen or tighten that bar to make his life easier. The lever he can actually pull is the per-category budget, and that's what he watches.

The old decision Ironseam would take back is a cousin of Repline's, not a copy of it. Ironloop had let everyone tuning the model see the whole set because the set was once too small to spare any of it. Ironseam's old habit was different: a single inspector graded every photo used for both training the eye and proving the eye was trained, because the shop only had one inspector to spare. Same mistake wearing a different coat: nothing was ever kept apart from the process that was supposed to be judged by it.

Swap the trigger and it still runs.
Speed: an interviewer wants a usable answer before the meeting ends. Round the fraction to a clean quarter, keep 200 as the working total, revisit the exact split once real shop photos start arriving.
Cost: the shop can only pay an inspector for 40 hours of grading, total. At about 12 minutes per graded photo, that's a hard ceiling of 200 examples, whatever the split ends up being. The holdout gets carved from what they can afford, not from a bigger number they wish they had.
The model got better: a new camera rig gives sharper, better-lit photos, so fewer shots get thrown out as unreadable. That doesn't shrink the holdout. A clearer photo doesn't make a 50-example sample any less wobbly, it just means fewer of the 50 go to waste.

Where people run it wrong.
They let the same photos train the model's eye and then grade that eye, so a threshold tuned around one bad weld gets "proven" against that exact weld.
They pick a fraction, a fifth, a quarter, without checking whether that many held-back examples can actually tell a real problem from noise.
They size the holdout once at launch and never revisit it as the stakes grow, more welders, more weld types, past what the original number was ever built to answer.

How to use it live. Say the equation before naming a single number: total set, times the fraction sealed off, and that fraction gets checked against how sure the answer needs to make you, not against a habit. That buys a few real seconds to do the arithmetic instead of guessing out loud.

Flashcards (click a card to flip it)

1 · THE FRAMEWORK
Which framework fits a question asking what a holdout set is and when to use one, and why not FLIPS?
Tap to flip
ANSWER
BOUND. This is arithmetic behind a sizing decision, a total, a fraction, a range, not a habit that snaps on a Tuesday.
2 · THE PERSON
Who is this answer about?
Tap to flip
ANSWER
Akosua Mensah, product manager for Repline, Ironloop's form-scoring feature. She wrote the fault-category list the golden set is built around.
3 · WHAT THE OLD SETUP HID
What did letting everyone see the whole golden set actually hide?
Tap to flip
ANSWER
That Repline's reported 96 percent agreement was partly memorized. Thresholds had been quietly tuned around specific numbered clips instead of the general pattern.
4 · THE EQUATION
State the holdout-size equation in one line.
Tap to flip
ANSWER
Holdout size equals the golden set's total, times the fraction sealed off from everyone tuning the model, never averaged, never guessed as one round number.
5 · THE OLD DECISION
What decision would you take back, and why did it make sense at the time?
Tap to flip
ANSWER
Letting engineers tuning the model see the entire golden set. It made sense when the set was only 40 clips and holding any of it back felt wasteful.
6 · THE NUMBER
Fill in the blank: Repline's golden set adds up to ______ clips, and a fifth of that, ______ clips, becomes the holdout.
Tap to flip
ANSWER
400 clips, and 80 held out, with an honest range of 50 to 120 as the set keeps growing.
7 · THE REPLAY
Same 80 sealed clips, real result. What did checking against them actually find?
Tap to flip
ANSWER
Reported agreement dropped from a memorized 96 percent to an honest 89 percent, and knee-valgus accuracy on the sealed clips was only 78 percent, against 95 percent on the clips the model had been tuned against.
8 · CROSS-PRODUCT TRANSFER
Section 4 answers this same question again for a different product. Which product, and which assumption actually moves the number in practice?
Tap to flip
ANSWER
Ironseam Fabrication's weld bead scorer. Tightening confidence would swing the holdout most in theory, but the inspection standard fixes that bar, so the lever Oluwaseun can actually pull is the per-category example budget.

Check yourself Score: 0 / 0

Fill in the blank
1. Ironloop's golden set for Repline adds up to ______ clips across eight fault categories, and a fifth of that, ______ clips, gets sealed off as the holdout.
Show hint
Add the eight category counts from the calc block, then take a fifth of the total.
Show answer
400 clips, and 80 clips. 40 + 60 + 60 + 60 + 50 + 60 + 40 + 30 = 400. A fifth of 400 is 80.
Multiple choice
2. Which assumption swings the size of Repline's holdout the most?
  • A. How many clips are in the golden set total.
  • B. How sure the team needs to be about the reported score.
  • C. Which camera angle a clip was filmed from.
  • D. The day of the week the Friday review happens.
Show hint
Compare the two sensitivity bars: one holds the fraction steady and grows the total, the other holds the total steady and tightens the wobble.
Show answer
B. Wanting a tighter number moves the holdout by about 105 clips across its range, versus 70 clips for growing the whole golden set.
True or false
3. True or false: because the coach's score on every clip is correct, it's fine to let the engineers tuning the model see the whole golden set.
  • True
  • False
Show hint
Ask what happened to the threshold code, not to the coach's grading.
Show answer
False. A correct score doesn't stop the model from being tuned around specific clips instead of the general pattern. That's exactly what a holdout guards against, no matter how accurate the grading is.
Short answer
4. What old decision does this answer take back, and why did it make sense when it was made?
Show hint
Look at the size of the golden set the first time anyone decided who could see it.
Show answer
Model answer: Letting every engineer tuning the model see the entire golden set. It made sense when the set was only 40 clips and setting any of it aside felt like throwing away scarce, hard-won data.
Short answer, apply it yourself
5. Think of an AI feature you use that reports some kind of accuracy or score. What's one reason that score might be graded on data the system already got to study?
Show hint
Think about who picks the examples used to prove a feature works, and whether that's the same person who just finished tuning it.
Show answer
Model answer: If the same small team that fixed the feature's rough edges also picked the examples used to show it's fixed, the "proof" is really just a replay of exactly what got fixed. You'd need examples nobody on that team ever looked at while making the fix.
Fill in the blank
6. If Ironloop's golden set grows from 400 to 600 clips while the holdout fraction stays at a fifth, the holdout grows from 80 to about ______ clips.
Show hint
Take a fifth of the new total.
Show answer
About 120 clips. A fifth of 600 is 120, a 40-clip jump from growing the total by 200.
From U2xAI Academy

From answering questions to owning outcomes.

A live workshop where you ship a working AI agent, defend a launch decision, and walk away with a portfolio recruiters can't wave off, not just more questions to study.

  • A live AI agent you actually shipped
  • A launch decision you can defend under pressure
  • An interview-ready portfolio, not more flashcards
Know more