Monitoring✓ Mathematical
◆ The PatternDetecting when the world changes under your model
Data drift means input distributions have shifted. Concept drift means the relationship between inputs and targets has changed. Both silently degrade model performance. Continuous monitoring with PSI, KS tests, and page-based detection catches drift before users notice.
PSI = Σ (pi − qi) · ln(pi / qi)
PSI < 0.1 = stable | 0.1–0.2 = moderate shift | > 0.2 = significant drift
// Interactive — reference vs production distributions
Drift Amount0.10
PSI—
# Python — drift detection with Evidently from evidently.report import Report from evidently.metric_preset import DataDriftPreset report = Report(metrics=[DataDriftPreset()]) report.run(reference_data=df_train, current_data=df_prod) report.save_html("drift_report.html")
Pattern bridge: Drift detection in ML is the same problem as data drift analysis in The Toolkit and regime detection in markets — the distribution has changed, and your old assumptions no longer hold.