A dashboard that only tracks accuracy will tell you a model is fine right up until the moment it isn't. That's not a bug in the dashboard — it's a real blind spot. Accuracy can average out a distribution shift so completely that the two numbers are identical to the decimal.
Overall accuracy: 0.840
Drift score vs. training: 0.0000 bits
No drift detected
Switch snapshots. The bars visibly reshape — traffic that used to sit mostly in the medium bin now spreads across all three — while the accuracy readout barely twitches.
Split inputs into bins, each with its own fixed accuracy . Overall accuracy is those accuracies weighted by how often each bin occurs:
- — the overall model accuracy on live traffic, averaged across bins.
- — index ranging over each bin the inputs are split into.
- — the fraction of inputs that fall into bin .
- — the fixed accuracy the model gets on inputs in bin .
A drift score measures the distributions directly, independent of what accuracy happens to do:
- — the drift score: how far the live input distribution has moved from the training one.
- — the KL divergence, short for Kullback–Leibler divergence: the extra bits it costs to describe one distribution using a code built for the other.
- — the distribution of inputs the model was trained and validated on.
- — the distribution of inputs the model is actually seeing in production right now.
- Accuracy can hide real change
Two very different bin distributions can land on the exact same weighted sum in the accuracy formula above — a coincidence of arithmetic, not evidence that nothing changed.
- Drift alerts independent of accuracy
Above a chosen threshold, the input distribution has moved enough to alert on — regardless of whether accuracy noticed.
An accuracy-only dashboard would show a flat line at 0.84 across both snapshots. Nothing in that number says the input distribution moved at all.
Same accuracy, four significant digits deep. A completely different drift score. One of these two numbers is actually watching the thing that changed.
- Training distribution: 20% low, 50% medium, 30% high
Weighted accuracy: .
- Live distribution: 30% low, 30% medium, 40% high
Weighted accuracy: — identical, to the hundredth.
- The distributions are not identical
:
- Low:
- Medium:
- High:
Sum: bits — well past a 0.05-bit alert threshold.
- The medium bin's share fell from 50% to 30% (a 40% relative drop).
- The high bin's share rose from 30% to 40% (a one-third relative gain).
Accuracy never had a chance to see it, because the per-bin accuracies happened to average out.
Three candidate live distributions. Find the one whose accuracy looks unchanged from training (≈0.84) — the one an accuracy-only dashboard would wave through — but whose distribution has genuinely drifted past the 0.05-bit alert threshold.
Accuracy is a lossy summary — it compresses a whole distribution of behavior into one number, and lossy compression can hide exactly the kind of change that matters. A drift score doesn't replace accuracy monitoring; it watches something accuracy structurally cannot: whether the inputs still look like the ones the model was validated on. Real feature stores and monitoring systems track both, because either one alone eventually gets fooled. The next chapter turns from watching a single model in production to training one across many machines at once.