Sofortantwort
Feature Drift einfach erklärt
Veränderung der Eingabedaten-Verteilung über Zeit.
- Kurz gesagt
- Eingabedaten verändern sich, Modell bleibt gleich → Performance sinkt
- Typischer Einsatz
- Marketing, Finanzwesen, Fraud Detection
- Wichtig zu wissen
- Erfordert kontinuierliches Monitoring und ggf. Retraining
Feature Drift im Überblick
Feature Drift ist eine spezifische Form von Data Drift: Die statistischen Eigenschaften der Input-Features eines ML-Modells verändern sich über die Zeit. Das Modell wurde auf einer bestimmten Feature-Verteilung trainiert – wenn sich diese Verteilung in Produktion verschiebt, werden die Vorhersagen unzuverlässig. Feature Drift ist oft der erste Indikator, bevor sich Modell-Performance-Metriken verschlechtern.
Feature Drift bedeutet, dass sich die Eingabedaten deines Modells verändern, obwohl das Modell selbst unverändert bleibt. Das Modell wurde auf Daten von “gestern” trainiert, aber die Daten von “heute” sehen anders aus.
Beispiel:
Training (2023): Durchschnittsalter der Kunden = 35 Jahre
Produktion (2024): Durchschnittsalter der Kunden = 28 Jahre
-> Modell wurde nie auf jüngere Kunden trainiert
-> Vorhersagen werden unzuverlässig
Warum passiert das?
- Saisonale Veränderungen (Weihnachten vs. Sommer)
- Marktveränderungen (neue Konkurrenz, Trends)
- Nutzerverhalten ändert sich
- Datenquellen ändern sich (neues Tracking, andere Formate)
Technisch betrachtet
Drift-Typen
| Typ | Was ändert sich | Beispiel |
|---|---|---|
| Feature Drift | P(X) | Altersverteilung der Kunden |
| Concept Drift | P(Y|X) | Was “Kaufwahrscheinlich” bedeutet |
| Label Drift | P(Y) | Anteil positiver Klassen |
Erkennung mit PSI (Population Stability Index)
import numpy as np
def calculate_psi(expected, actual, bins=10):
"""Population Stability Index berechnen"""
expected_percents = np.histogram(expected, bins=bins)[0] / len(expected)
actual_percents = np.histogram(actual, bins=bins)[0] / len(actual)
psi = np.sum((actual_percents - expected_percents) *
np.log(actual_percents / expected_percents))
return psi
# PSI < 0.1: Kein Drift
# PSI 0.1-0.2: Leichter Drift
# PSI > 0.2: Signifikanter Drift
Monitoring-Pipeline
Produktion-Daten → Feature-Statistiken berechnen
↓
Mit Baseline vergleichen
↓
Drift erkannt? → Alert + Dashboard
↓
Schwellwert überschritten? → Retraining triggern
Best Practices
- Baseline definieren: Referenz-Verteilung aus Trainingsdaten speichern
- Automatisches Monitoring: Drift-Checks in Pipeline integrieren
- Alerts konfigurieren: Bei signifikantem Drift benachrichtigen
- Retraining-Strategie: Wann und wie wird neu trainiert?