Modul 15 von 15 · 📖 8 min Lesezeit · ⏱ 30 min gesamt

FI-DPA 15 MLOps — Modelle produktiv betreiben

Inhaltsverzeichnis (6 Abschnitte)
  1. Konzepte und Hintergrund
  2. Architektur-Diagramm
  3. Praktische Schritte
  4. Häufige Fallstricke
  5. Weiterführende Ressourcen
  6. Wissens-Check

FI-DPA 15 MLOps — Modelle produktiv betreiben

In diesem Modul erlernen Sie die Konzepte und praktischen Umsetzungsschritte, um maschinelle Lernmodelle zuverlässig in Produktion zu betreiben. Sie verstehen, wie Sie Modelle versionieren, überwachen und bei Bedarf automatisch aktualisieren können, während Sie gleichzeitig ethische Aspekte und die Erklärbarkeit der Modelle berücksichtigen.

Konzepte und Hintergrund

Model Registry
Ein zentraler Speicherort für alle Modelle in verschiedenen Versionen, der Metadaten und den Lebenszyklus verwaltet.
Versionierung
Das Systematischen Speichern von Modellen mit eindeutigen Identifikatoren, um Reproduzierbarkeit und Rollbacks zu ermöglichen.
A/B-Testing
Ein Verfahren zum Vergleich zweier Modelle, bei dem verschiedene Benutzergruppen unterschiedliche Versionen erhalten, um die Leistung objektiv zu bewerten.
Drift Detection
Die kontinuierliche Überwachung von Modellausgaben und Eingabedaten auf Abweichungen vom erwarteten Verhalten, die zu Leistungseinbußen führen können.
Explainable AI (XAI)
Methoden zur Erklärung von Vorhersagen maschineller Lernmodelle, um Transparenz und Vertrauen in die Ergebnisse zu schaffen.

Architektur-Diagramm

flowchart LR
    A[Datenquelle] --> B[Datenvorverarbeitung]
    B --> C[Modelltraining]
    C --> D[MLflow Registry]
    D --> E[Modellauslieferung]
    E --> F[A/B-Testing]
    F --> G[Überwachung]
    G --> H[Drift Detection]
    H --> I{Drift erkannt?}
    I -->|Ja| J[Retraining]
    I -->|Nein| K[Produktivbetrieb]
    J --> C

Praktische Schritte

  1. MLflow Server installieren und konfigurieren. Dies dient als zentrale Plattform für die Verwaltung Ihrer Modelle.
  2. pip install mlflow
    mlflow server --host 0.0.0.0 --port 5000
  3. Ein MLflow Experiment für Ihr Projekt erstellen, um alle Runs und Modelle zu gruppieren.
  4. mlflow create experiment --experiment-name "Kundenklassifizierung"
  5. Ein Modell trainieren und automatisch in der MLflow Registry registrieren.
  6. mlflow.sklearn.log_model(
        sk_model=model,
        artifact_path="model",
        registered_model_name="kunden_churn_model"
    )
  7. Eine Version des Modells für den A/B-Test markieren und bereitstellen.
  8. client = MlflowClient()
    client.transition_model_version_stage(
        name="kunden_churn_model",
        version=1,
        stage="Staging"
    )
  9. Eine Überwachungspipeline für Daten- und Konzeptdrift implementieren.
  10. from evidently.report import Report
    from evidently.metrics import DataDriftMetric
    
    report = Report(metrics=[DataDriftMetric()])
    report.run(reference_data=reference_df, current_data=new_data)
  11. Einen Retraining-Workflow mit Apache Airflow oder ähnlichen Tools erstellen.
  12. Eine SHAP-Integration für die Erklärbarkeit der Modellevorhersagen implementieren.
  13. import shap
    explainer = shap.TreeExplainer(model)
    shap_values = explainer.shap_values(X_test)
  14. Ethische Guidelines für die Modellevaluation und -auswahl festlegen.

Häufige Fallstricke

Weiterführende Ressourcen

Wissens-Check

Vier Fragen zur Selbstkontrolle. Klicken Sie jede Frage an, um die richtige Antwort und Erklärung zu sehen.

Was ist der primäre Zweck eines Model Registry in MLOps?
  • A) Das automatische Training von Modellen
  • B) Ein zentraler Speicherort für Modelle in verschiedenen Versionen mit Metadaten-Verwaltung
  • C) Die Visualisierung von Modellausgaben
  • D) Die Datenerfassung für das Training

Richtige Antwort: B. Ein Model Registry dient als zentraler Speicher für Modelle in verschiedenen Versionen und verwaltet deren Metadaten und Lebenszyklus. Option A beschreibt das Training, nicht die Speicherung. Option C ist Aufgabe von XAI-Tools und Option D betrifft die Datenvorverarbeitung.

Was ist der Hauptzweck von A/B-Testing im Kontext von ML-Modellen?
  • A) Die automatische Aktualisierung von Modellen
  • B) Die kontinuierliche Überwachung von Modellausgaben
  • C) Der objektive Vergleich von zwei Modellen durch den Einsatz an verschiedenen Benutzergruppen
  • D) Die Erklärung von Modellausgaben

Richtige Antwort: C. A/B-Testing vergleicht zwei Modelle, indem verschiedene Benutzergruppen unterschiedliche Versionen erhalten, um die Leistung objektiv zu bewerten. Option A beschcribes Retraining, Option B ist Drift Detection und Option D ist Aufgabe von XAI.

Was ist Explainable AI (XAI) im Kontext von MLOps?
  • A) Ein Verfahren zur automatischen Modelloptimierung
  • B) Methoden zur Erklärung von Modellausgaben für Transparenz und Vertrauen
  • C) Ein System zur Versionsverwaltung von Trainingsdaten
  • D) Ein Protokoll für die Modellbereitstellung

Richtige Antwort: B. XAI umfasst Methoden zur Erklärung von Vorhersagen maschineller Lernmodelle, um Transparenz und Vertrauen zu schaffen. Option A beschreibt Hyperparameter-Optimierung, Option C ist Teil der Datenverwaltung und Option D bezieht sich auf Deployment-Prozesse.

Was passiert im MLOps-Lebenszyklus, wenn ein Drift erkannt wird?
  • A) Das Modell wird automatisch in der Registry archiviert
  • B) Das System führt automatisch ein Retraining durch
  • C) Das System benachrichtigt den Administrator per E-Mail
  • D) Das System setzt den Produktivbetrieb fort

Richtige Antwort: B. Bei erkanntem Drift führt das System gemäß dem gezeigten Architektur-Diagramm ein Retraining durch, um die Modellleistung wiederherzustellen. Option A ist kein automatischer Prozess, Option C ist nur ein Teil der Lösung und Option D wäre bei erkanntem Drift nicht korrekt.