Einführung in Vertex Pipelines

Als ML-Vorgänge (MLOps) wird die Anwendung von DevOps-Strategien auf ML-Systeme (maschinelles Lernen) bezeichnet. Mit DevOps-Strategien können Sie Codeänderungen effizient erstellen und freigeben sowie Systeme beobachten, um sicherzustellen, dass Sie Ihre Zuverlässigkeitsziele erreichen. MLOps erweitert diese Vorgehensweise dahingehend, dass Sie schneller zuverlässig von der Datenaufnahme zur Bereitstellung Ihres Modells in der Produktion wechseln und dabei Ihr ML-System überwachen und verstehen können.

Vertex Pipelines ermöglicht es Ihnen, Ihre ML-Systeme zu automatisieren, zu überwachen und zu steuern. Dazu wird der ML-Workflow serverlos automatisiert und die Artefakte Ihres Workflows mit Vertex ML Metadata gespeichert. Durch das Speichern der Artefakte Ihres ML-Workflows in Vertex ML Metadata können Sie die Herkunft der Artefakte Ihres Workflows analysieren. Die Herkunft eines ML-Modells kann beispielsweise Trainingsdaten, Hyperparameter und Code enthalten, die zum Erstellen des Modells verwendet wurden.

Informationen zu ML-Pipelines

Um Ihren ML-Workflow in Vertex Pipelines zu orchestrieren, müssen Sie Ihren Workflow als Pipeline beschreiben. ML-Pipelines sind portable und skalierbare ML-Workflows, die auf Containern basieren. ML-Pipelines setzen sich aus einer Reihe von Eingabeparametern und einer Liste von Schritten zusammen. Jeder Schritt ist eine Instanz einer Pipeline-Komponente.

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

  • MLOps-Strategien anwenden, um wiederholbare Prozesse zu automatisieren und zu überwachen.
  • 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 Vertex-Pipelines verwenden, um Pipelines auszuführen, die mit dem Kubeflow Pipelines SDK oder mit TensorFlow Extended erstellt wurden. Weitere Informationen zum Auswählen des Kubeflow Pipelines SDK und TFX

Informationen zu Pipelinekomponenten

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

Komponenten bestehen aus einer Reihe von Eingaben, 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.

Sie können benutzerdefinierte Komponenten erstellen oder vordefinierte Komponenten wiederverwenden. Wenn Sie Features von Vertex AI wie AutoML in Ihrer Pipeline verwenden möchten, nutzen Sie die Komponenten der Google Cloud-Pipeline. Weitere Informationen zur Verwendung von Google Cloud-Pipelinekomponenten in Ihrer Pipeline.

Informationen zum Pipeline-Workflow

Jeder Schritt in einer Pipeline führt einen Teil des Workflows der Pipeline aus. Da Schritte Instanzen von Pipeline-Komponenten sind, haben Schritte Eingaben, Ausgaben und ein Container-Image. Schritteingaben können aus den Eingaben der Pipeline festgelegt werden oder von der Ausgabe anderer Schritte innerhalb der Pipeline abhängen. Diese Abhängigkeiten definieren den Workflow der Pipeline als gerichtetes azyklisches Diagramm.

Betrachten Sie zum Beispiel eine Pipeline mit den folgenden Schritten:

  • Daten aufnehmen: Dieser Schritt lädt Trainingsdaten in die Pipeline.
  • Daten vorverarbeiten: Mit diesem Schritt werden die aufgenommenen Trainingsdaten vorverarbeitet.
  • Modell trainieren: Bei diesem Schritt werden die vorverarbeiteten Trainingsdaten zum Trainieren eines Modells verwendet.
  • Modell bewerten: Dieser Schritt bewertet das trainierte Modell.
  • Bereitstellen: In diesem Schritt wird das trainierte Modell für Vorhersagen bereitgestellt.

Wenn Sie die Pipeline kompilieren, analysiert das Pipelines SDK (das Kubeflow Pipelines SDK oder TFX) die Datenabhängigkeiten zwischen den Schritten, um das Workflow-Diagramm zu erstellen.

  • Der Schritt zur Datenaufnahme hängt nicht von anderen Aufgaben ab, er kann also der erste Schritt im Workflow sein oder gleichzeitig mit anderen Schritten ausgeführt werden.
  • Der Schritt der Vorverarbeitungsphase bezieht sich auf die Daten, die im Schritt „Datenaufnahme“ erzeugt wurden, sodass die Vorverarbeitung der Daten nach der Datenaufnahme erfolgen muss.
  • Der Schritt des Modelltrainings basiert auf den vorverarbeiteten Trainingsdaten. Daher muss das Modell nach der Vorverarbeitung der Daten trainiert werden.
  • Die Modellbewertung und die Bereitstellung eines trainierten Modells basieren beide auf dem trainierten Modell und müssen daher nach dem Modelltrainingsschritt erfolgen. Die Modellbewertung und die Bereitstellung eines trainierten Modells für Vorhersagen können gleichzeitig erfolgen, da beide vom Modelltrainingsschritt abhängen.

Basierend auf dieser Analyse führt Vertex Pipeline die Schritte zur Aufnahme der Daten, zur Vorverarbeitung der Daten und zum Trainieren des Modells nacheinander aus und lässt dann die Schritte zur Modellevaluierung und -bereitstellung parallel laufen.

Die Herkunft Ihrer ML-Artefakte verstehen

Um Änderungen der Leistung oder Genauigkeit Ihres ML-Systems zu verstehen, müssen Sie die Metadaten von Pipelineausführungen und die Herkunft von ML-Artefakten analysieren können. Die Abstammung eines Artefakts umfasst alle Faktoren, die zu seiner Erstellung beigetragen haben, sowie Artefakte und Metadaten, die von diesem Artefakt abgeleitet werden. Die Verwaltung dieser Metadaten auf Ad-hoc-Basis kann schwierig und zeitaufwendig sein.

Die Abstammung eines Modells kann zum Beispiel Folgendes enthalten:

  • Die Trainings-, Test- und Evaluationsdaten, die zum Erstellen des Modells verwendet wurden.
  • Die Hyperparameter, die während des Modelltrainings verwendet werden.
  • Der Code, der zum Trainieren des Modells verwendet wurde.
  • Metadaten, die aus dem Trainings- und Bewertungsprozess aufgezeichnet wurden, z. B. die Genauigkeit des Modells.
  • Artefakte, die von diesem Modell abstammen, z. B. die Ergebnisse von Batchvorhersagen.

Wenn Sie eine Pipeline mit Vertex Pipelines ausführen, werden die Artefakte und Metadaten der Pipeline-Ausführung mithilfe von Vertex ML Metadata gespeichert. Sie können mit diesen Metadaten die folgenden Fragen beantworten:

  • Warum hat ein bestimmter Pipeline-Ausführung ein besonders genaues Modell erzeugt?
  • Welche Pipelineausführung hat das genaueste Modell erzeugt und welche Hyperparameter wurden zum Trainieren des Modells verwendet?
  • Abhängig von den Schritten in Ihrer Pipeline können Sie mit Vertex ML Metadata Fragen zur Systemverwaltung beantworten. Mit Metadaten können Sie beispielsweise feststellen, welche Version Ihres Modells zu einem bestimmten Zeitpunkt in der Produktion war.

Weitere Informationen zum Visualisieren von Pipeline-Ausführungen oder zum Analysieren der Herkunft von ML-Artefakten.

Nächste Schritte