Ein industrietaugliches Software-Engineering-System für Data Science, entwickelt zur präzisen Prognose von Kundenabwanderungen (Churn) auf E-Commerce-Plattformen. Im Gegensatz zu isolierten Notebook-Experimenten ist diese Architektur als modulare, versionierte und skalierbare Pipeline mit eigener MLOps-Tracking- und Monitoring-Engine konzipiert.
Geschäftlicher Mehrwert & Kernziele
| Säule | Operative Beschreibung | Zielmetrik |
|---|---|---|
| Präzises Frühwarnsystem | Frühzeitige Identifikation abwanderungsgefährdeter Konten für proaktive Kundenbindungsmaßnahmen | F1-Score > 0.85 |
| Erklärbarkeit via SHAP | Spieltheoretische Merkmalsattribution zur Identifikation exakter Abbruchgründe in der User Journey | Aktionierbare Kausalität |
| Gezielte Budgetoptimierung | Konzentration von Marketinggutscheinen und Bindungsangeboten auf hochwertige Bestandskunden | ROI-Maximierung |
| Modell-Governance | Durchgängige Datenversionierung, Model Registry, automatisierte Drift-Warnungen und Systemprüfungen | Maximale Verfügbarkeit |
Architektur und Datenfluss
E-Commerce Datensatz
Tabellen-Ingestion")] subgraph S1 ["📊 STUFE 1: Explorative Datenanalyse (EDA)"] direction TB B1["📂 Rohdaten laden"] B2["🔍 Fehlwert-Profilierung"] B3["📈 Korrelationsanalyse"] B4["📊 Verteilungs- & Schiefeprüfung"] B5["⚠️ Ausreißererkennung & IQR-Grenzen"] B1 ==> B2 ==> B3 ==> B4 ==> B5 end subgraph S2 ["🧹 STUFE 2: Datenbereinigung & Standardisierung"] direction TB C1["🔧 Bereinigung
✓ Duplikate & Schemaanomalien entfernen
✓ Kategoriale Werte standardisieren
✓ Datentypen korrigieren"] C2["✅ Qualitätsprüfung"] C3["✂️ Stratifizierter Split
80% Training | 20% Test"] C1 ==> C2 ==> C3 end subgraph S3 ["⚙️ STUFE 3: Zero-Leakage-Transformation"] direction LR D1["🎯 TRAININGSDATENSATZ"] D2["🔨 FIT + TRANSFORM
• Median/Modus-Imputation
• IQR-Ausreißer-Clipping
• Feature Engineering
• Kodierung & Skalierung"] D3{{"📦 GELERNTE ARTEFAKTE
Imputer | Clipping-Grenzen
Encoder | StandardScaler"}} D4["🧪 TESTDATENSATZ"] D5["🎨 TRANSFORM ONLY
Strikte Anwendung der gelernten Trainingsparameter"] D1 ==> D2 D2 ==> D3 D3 -.->|"persistieren"| D2 D4 ==> D5 D3 ==>|"anwenden"| D5 end subgraph S4 ["🎓 STUFE 4: Multi-Modell-Training & Balancing"] direction TB E1["⚖️ Klassen-Balancing
SMOTE + Tomek Links Hybrid-Sampling"] E2["🤖 6 Modellfamilien trainieren
Logistic Regression | SVM | Decision Tree
Random Forest | XGBoost | AdaBoost"] E3["🔍 Automatisierte Optimierung
RandomizedSearchCV mit Stratified K-Fold"] E4["🏆 Bester Modellkandidat
Ranking nach F1-Score & ROC-AUC"] E1 ==> E2 ==> E3 ==> E4 end subgraph S5 ["📈 STUFE 5: Evaluation & Interpretierbarkeit"] direction TB F1["📊 Konfusionsmatrix-Diagnostik"] F2["📉 ROC-AUC- & Precision-Recall-Kurven"] F3["🎯 Permutation Feature Importance"] F4["📋 Modellvergleichsmatrix"] F5["🔬 SHAP-Erklärbarkeit"] F1 ==> F2 ==> F3 ==> F4 ==> F5 end subgraph S6 ["📦 STUFE 6: MLOps-Integration"] direction TB G1["📝 Experiment-Tracking (JSON/YAML Snapshots)"] G2["🗃️ Model Registry & Versionskontrolle"] G3["🔖 Daten-Snapshot-Versionierung"] G4["👁️ Health- & Drift-Monitoring"] G1 ==> G2 ==> G3 ==> G4 end OUTPUT[("💾 GESPEICHERTE ARTEFAKTE
experiments/
registry/
monitoring/")] START ==> INPUT INPUT ==> S1 S1 ==> S2 S2 ==> S3 S3 ==> S4 S4 ==> S5 S5 ==> S6 S6 ==> OUTPUT OUTPUT ==> FINISH
Strikte Zero-Data-Leakage-Governance
Ein zentrales architektonisches Prinzip ist die strikte Trennung von Trainingsstatistiken und Testdaten:
[!IMPORTANT] Data-Governance-Vorgabe: Sämtliche statistischen Parameter (Imputationsmediane, IQR-Grenzwerte, Encodierungs-Mappings und Skalierungsmittelwerte) werden ausschließlich auf dem Trainingsdatensatz berechnet. Der Testdatensatz wird strikt ohne Neuberechnung transformiert (
transform(), niemalsfit_transform()).
Technische Kernmerkmale
- Hybrides Klassenbalancing (SMOTE + Tomek Links): Verbindet synthetische Überabtastung mit Tomek-Link-Filterung, um Rauschen an Entscheidungsgrenzen zu eliminieren.
- Systematisches Multi-Modell-Benchmarking: Validiert 6 Klassifikationsalgorithmen (
LogisticRegression,SVC,DecisionTreeClassifier,RandomForestClassifier,XGBClassifier,AdaBoostClassifier) viaRandomizedSearchCV. - Individuelle MLOps-Registry: Speichert Hyperparameter-Snapshots, Git-Commit-Hashes und serialisierte Modellobjekte in strukturierten Verzeichnissen mit automatisierten Integritätstests.
- Modelltransparenz mit SHAP: Berechnet globale und lokale Shapley-Werte zur fundierten Visualisierung von Kündigungsauslösern.