Online Evaluation and Proxies
Real predictions meet real outcomes — mess and all
Online evaluation trades offline purity for reality: real predictions face real outcomes, scored on matured labels or outcome proxies when ground truth lags. It's the honest operating metric, full of bias and delay you design around.
What you will learn
- Score models on live outcomes with label-waiting windows
- Use outcome proxies with explicit time-to-signal
- Fairly compare live performance across periods
What is this?
Online evaluation measures live-model quality: predictions matched to matured outcomes (or outcome proxies with known time-to-signal) and scored window-by-window, including delay-adjusted comparisons so 'now' is never judged on immature labels.
Why do you need it?
- Online reveals what reality actually delivered.
- Proxies compress label lag from weeks to minutes.
- Maturation windows stop fake incidents from immature readers.
- Comparisons become fair and operational, not aspirational.
Mental model
Restaurant reviews: instant ratings vs the Michelin review
Proxies vs matured labels
Google maps ratings (proxies) appear instantly and reflect feel; the Michelin review (label) takes months but is ground truth. Both count — you route the instant proxy to catch breakdowns and respect the matured label for decisions.
How it works
- Predict → store → wait the maturity window for labels.
- Choose proxies where labels lag: CTR for recommenders, refunds for fraud-adjacent, engagement for chat.
- Score both proxy-now and label-later metrics in one dashboard.
- Maturity-calibrate comparisons: same window age, same segment.
- Keep the proxy-to-label gap visible — divergence means proxy drift.
Online evaluation with maturation.
In production
- A Recommender scores CTR instantly and conversion at +7 days — both live.
- A Fraud model tracks provisional-flag rates live and confirmed-fraud rates after review.
- A Credit model watches early-default lanes now and matured book performance quarterly.
Best practices
- Instrument predictions with IDs so labels can always be joined back.
- Publish proxy-now and label-later side by side with their windows.
- Reconcile proxy-to-label drift quarterly; a moved proxy is a moving target.
- Freeze the maturity window — publication discipline beats optimistic metrics.
Common mistakes
- Judging live 'now' on immature labels — manufactured incidents.
- Choosing a proxy whose drift mimics model quality noise (ops-induced).
- Comparing today's numbers to yesterday's on different maturity ages.
- Ignoring the proxy/label gap, so dashboards lie progressively.
Debugging tips
- Metric dips then climbs back — likely label maturation, not the model; look at window age.
- Proxy up, label down — the proxy itself moved (feature rollout?); decorrelate and re-baseline it.
- Online numbers swing every release — comparison cohort differs; align segments and maturity.
Interview checkpoint
Hands-on lab
- Store predictions and join labels after a maturity window
- Compute proxy and label-later metrics
- Diagnose a fake incident from immature labels
Score the Live Model
40 min · intermediate
Quick quiz
The maturation window solves…
A good proxy should also be monitored for its own drift.