Einführung in AI Platform-Pipelines

ML-Arbeitsabläufe umfassen Schritte zum Vorbereiten und Analysieren von Daten, Trainieren und Evaluieren von Modellen, Bereitstellen von trainierten Modellen für die Produktion, Erfassen von ML-Artefakten und Verstehen ihrer Abhängigkeiten usw. Das Verwalten dieser Schritte kann schwierig und zeitaufwendig sein.

Im Rahmen von MLOps werden DevOps-Verfahren zur Automatisierung, Verwaltung und Prüfung von ML-Workflows angewendet. AI Platform-Pipelines unterstützen Sie bei der Implementierung von MLOps, indem sie eine Plattform bereitstellen, auf der Sie die Schritte in Ihrem Workflow als Pipeline orchestrieren können. ML-Pipelines sind portable und reproduzierbare Definitionen von ML-Workflows.

AI Platform Pipelines erleichtert Ihnen den Einstieg in MLOps, da Ihnen die Einrichtung von Kubeflow Pipelines mit TensorFlow Extended (TFX) erspart bleibt. Kubeflow Pipelines ist eine Open-Source-Plattform zum Ausführen, Monitoring, Prüfen und Verwalten von ML-Pipelines in Kubernetes. TFX ist ein Open-Source-Projekt zur Erstellung von ML-Pipelines, die End-to-End-ML-Workflows orchestrieren.

Über Kubeflow und die Kubeflow Pipelines-Plattform

Kubeflow ist ein Open Source-Toolkit zum Ausführen von ML-Arbeitslasten auf Kubernetes. Kubeflow Pipelines ist eine Komponente von Kubeflow, die eine Plattform zum Erstellen und Deployment von ML-Workflows, sogenannten Pipelines, bereitstellt.

Über TensorFlow Extended

TFX ist ein Open Source-Projekt, mit dem Sie Ihre TensorFlow-basierten ML-Workflows als Pipeline definieren können. TFX stellt Komponenten bereit, mit denen Sie Daten aufnehmen und transformieren, ein Modell trainieren und auswerten, ein trainiertes Inferenzmodell bereitstellen können usw. Durch die Wiederverwendung von TFX-Komponenten können Sie Ihren ML-Prozess koordinieren, ohne für jeden Schritt benutzerdefinierte Komponenten erstellen zu müssen.

Informationen zu AI Plattform-Pipelines

AI Platform Pipelines erspart Ihnen die folgenden Schwierigkeiten:

Mit AI Plattform-Pipelines können Sie einen Kubeflow-Pipelines-Cluster in 15 Minuten einrichten, sodass Sie schnell mit ML-Pipelines loslegen können. AI Platform Pipelines erstellt auch einen Cloud Storage-Bucket, um die Ausführung von Pipeline-Anleitungen und ersten Schritten mit TFX-Pipeline-Vorlagen zu erleichtern.

Informationen zu ML-Pipelines

ML-Pipelines sind portable, skalierbare ML-Workflows, die auf Containern basieren. ML-Pipelines setzen sich aus einer Reihe von Eingabeparametern und einer Liste von Aufgaben zusammen. Jede Aufgabe ist eine Instanz einer Pipeline-Komponente.

Sie können ML-Pipelines für Folgendes verwenden:

  • Wenden Sie MLOps-Strategien an, um wiederholbare Prozesse zu automatisieren.
  • Experimentieren Sie, indem Sie einen ML-Workflow mit verschiedenen Gruppen von Hyperparametern, der Anzahl der Trainingsschritte oder -iterationen usw. ausführen.
  • Verwenden Sie den Workflow einer Pipeline wieder, um ein neues Modell zu trainieren.

Sie können Pipeline-Vorlagen aus TensorFlow Extended oder das Kubeflow Pipelines SDK verwenden, um Pipelines zu erstellen.

Informationen zu Pipelinekomponenten

Pipelinekomponenten sind eigenständige Code-Gruppen, die einen Schritt im Arbeitsablauf einer Pipeline ausführen, z. B. Datenvorverarbeitung, Datentransformation, Modelltraining usw.

Komponenten bestehen aus einer Reihe von Eingabeparametern, einem Satz von Ausgaben und dem Speicherort eines Container-Images. Das Container-Image einer Komponente ist ein Paket, das den ausführbaren Code der Komponente und eine Definition der Umgebung enthält, in der der Code ausgeführt wird.

Informationen zum Pipeline-Workflow

Jede Aufgabe in einer Pipeline führt einen Schritt im Arbeitsablauf der Pipeline aus. Da Aufgaben Instanzen von Pipelinekomponenten sind, haben Aufgaben Eingabeparameter, Ausgaben und ein Container-Image. Aufgabeneingabeparameter können über die Eingabeparameter der Pipeline festgelegt oder so eingestellt werden, dass sie von der Ausgabe anderer Aufgaben in dieser Pipeline abhängen. Kubeflow Pipelines verwendet diese Abhängigkeiten, um den Workflow der Pipeline als gerichtetes azyklisches Diagramm zu definieren.

Betrachten Sie zum Beispiel eine Pipeline mit den folgenden Aufgaben:

  • Vorverarbeitung: Diese Aufgabe bereitet die Trainingsdaten vor.
  • Training: Diese Aufgabe verwendet die vorverarbeiteten Trainingsdaten, um das Modell zu trainieren.
  • Vorhersage: Diese Aufgabe stellt das trainierte Modell als ML-Dienst bereit und ruft Vorhersagen für das Test-Dataset ab.
  • Konfusionsmatrix: Diese Aufgabe verwendet die Ausgabe der Vorhersageaufgabe, um eine Konfusionsmatrix zu erstellen.
  • ROC: Diese Aufgabe verwendet die Ausgabe der Vorhersageaufgabe, um eine Analyse der Betriebskennlinie des Empfängers durchzuführen.

Zur Erstellung des Workflow-Diagramms analysiert das Kubeflow Pipelines SDK die Aufgabenabhängigkeiten.

  • Die Vorverarbeitungsaufgabe ist unabhängig von anderen Aufgaben. Sie kann also die erste Aufgabe im Workflow sein oder sie kann gleichzeitig mit anderen Aufgaben ausgeführt werden.
  • Die Trainingsaufgabe basiert auf den Daten, die von der Vorverarbeitungsaufgabe erzeugt werden, sodass das Training nach der Vorverarbeitung erfolgen muss.
  • Die Vorhersageaufgabe basiert auf dem trainierten Modell, das von der Trainingsaufgabe erzeugt wird, sodass die Vorhersage nach dem Training erfolgen muss.
  • Die Erstellung der Konfusionsmatrix und die Durchführung einer ROC-Analyse basieren beide auf der Ausgabe der Vorhersageaufgabe. Sie müssen also nach Abschluss der Vorhersage erfolgen. Die Erstellung der Konfusionsmatrix und die Durchführung der ROC-Analyse können gleichzeitig erfolgen, da beide von der Ausgabe der Vorhersageaufgabe abhängen.

Basierend auf dieser Analyse führt das Kubeflow Pipelines-System die Vorverarbeitungs-, Trainings- und Vorhersageaufgaben sequentiell durch und führt dann die Konfusionsmatrix und die ROC-Aufgaben gleichzeitig aus.

Nächste Schritte