Basis Lab

Watching a Model After Launch

What You Can Measure Without Labels

On the day after launch the true answers stop arriving, so the instrument panel is built from inputs, scores and what people do next rather than from accuracy.

The instrument that disappears

During training there is a number. Accuracy on data held back, computed

against true answers, as precise as anybody wants.

On the day the model ships that number stops being computable. The cases

arriving now have no true answers attached, and most of them never will. The

loan either defaults in two years or does not. The flagged transaction is

disputed or is not, weeks later, and only if somebody noticed. The

recommendation is clicked or ignored, which is information about something but

not about whether the recommendation was right.

So the first question is not how to monitor quality. It is what is actually

visible, and then what that visible set can and cannot establish.

What is actually observable

Five things are free, in the sense that they require no labels and no extra

work beyond recording what already passes through.

FIG 1What production shows for nothing, and what each thing catches
needs labelscatches a broken pipelincatches a shifted worldcatches wrong answers
how many requests arrive0110
the distribution of each0110
the distribution of the 0110
response times0100
error and timeout rates0100
Coded 1 for yes and 0 for no. The striking column is the last one, which is empty: nothing available without labels detects answers that are simply wrong while everything continues to look normal. That is not a gap to be closed with better monitoring, it is the shape of the problem, and it is why the panel described in this course is an alarm for change rather than a measure of quality.

The second row is the one teams build last and need most. Recording the

distribution of every input, column by column, costs a little storage and

catches an enormous share of real failures, because most production failures

are an input that changed rather than a model that decayed.

The distribution of the scores

The single most informative free quantity is the distribution of the model

own output. Not the average, which hides almost everything, but the shape.

FIG 2The same model on two weeks of traffic
0.000.300.600.901.200.00.30.50.81.0score the model gave
the week after launcheleven weeks later
The average score moved from about 0.22 to about 0.38, and the spread widened. Something has changed, and the shape alone does not say what: the mixture of cases arriving could have changed, an input could have broken in a way that pushes scores up, or the relationship the model learned could have shifted. All three produce a picture like this, which is why the next two lessons are about telling them apart.

Three habits make the score distribution useful rather than decorative. Record

it in buckets rather than as an average, because a model that has started

answering half its cases with near certainty and the other half with near

zero has the same average as one answering everything with a shrug. Compare

against the distribution the model produced on its training data, which is the

only anchor available. And watch the extremes specifically, since a jump in

the share of cases scored above 0.95 is usually a broken input rather than a

sudden abundance of obvious cases.

Proxies, and a small budget for truth

Between the free signals and real labels sit the proxies: things people do

that correlate with the model being wrong.

FIG 3Four proxies for quality, and what each is worth
delay before it is visibhow strongly it tracks bcan be gamed by the mode
a human overrides the de030
the customer complains1420
the transaction is aband011
the recommendation is ig011
Tracking strength coded 1 for weak, 2 for moderate, 3 for strong. Overrides are the best of them, because a reviewer looking at a case and disagreeing is close to a label, and they are only available where humans review anything. The last two can be gamed by the model: a recommender that only ever suggests the obvious thing will be ignored less often while being less useful, so an improvement in that proxy is not evidence of anything.

None of these is a substitute for truth, and the alternative is cheaper than

teams expect. Take a sample of cases, have somebody establish the real answer,

and compute accuracy on the sample. A few hundred cases a week is usually

within reach, and it provides the one thing the whole free panel cannot.

FIG 4What share of cases a review budget can cover
cases a reviewer can get through in a day
cases the model handles in a day
the share of them the model flags, if only flagged cases are reviewed
the share of flagged cases that can be reviewed
Two hundred reviews a day against fifty thousand cases of which four per cent are flagged gives a tenth of the flags reviewed, which is enough to estimate the share of flags that are wrong to within a few points. The sampling has to be random within the flagged set, and the temptation to review the most interesting cases first destroys the estimate while feeling like diligence.

A deliberate blind spot remains. Reviewing only the flagged cases says nothing

about the cases the model let through, and those contain the failures nobody

hears about. A small random sample of unflagged cases, however unexciting, is

the only thing that measures them.

What the panel cannot settle

Worth stating plainly, because the dashboards built from this material look

authoritative and are not.

Nothing observable without labels can establish that the answers are right. A

model can be badly wrong with a perfectly stable score distribution, perfectly

normal inputs, unchanged response times and no complaints, and the panel will

be entirely green. This happens whenever the relationship between the inputs

and the answer has changed while the inputs themselves have not, which is the

subject of the third lesson and the most dangerous failure in the course.

What the panel does establish is that something has changed, which is worth

having for two reasons. Most failures are operational rather than statistical,

and those it catches immediately. And when the delayed labels eventually

arrive and show that quality fell, the panel is the record that says when it

started and what else moved at the same time, which is the difference between

diagnosing the problem in a morning and arguing about it for a fortnight.

The next lesson takes the first of the free signals seriously: deciding

whether the inputs have genuinely moved, or whether this is what an ordinary

week looks like.

Recap

  • Accuracy is not available in production, so the quantities actually on the dashboard are the inputs coming in, the scores going out, and what happens downstream of each decision.
  • The distribution of scores is the single most informative thing visible without labels, because it moves when the inputs move and also when the model is quietly being fed something broken.
  • Proxies such as overrides, complaints and abandoned transactions are weak evidence individually and strong evidence when several move together, and a small budget for real labels is worth more than all of them.

This is the reading half

Starting the course gives you your own copy of it. Every idea on every page has problems standing under it, marked with a reason rather than a tick, and any sentence you do not believe can be opened and argued with. None of that can happen on a page nobody owns.

The contents

NextWhen the Inputs Move →

The rest of this course

  1. 01What You Can Measure Without Labelsyou are here
  2. 02When the Inputs Moveopening only
  3. 03When the Right Answer Movesopening only
  4. 04Labels That Arrive Weeks Lateropening only
  5. 05The Model Changing Its Own Inputsopening only
  6. 06What Deserves an Alarmopening only
  7. 07Deciding to Retrainopening only
  8. 08The Failures That Make No Noiseopening only

Read alongside