core Paket

Enthält grundlegende Funktionen für Azure Machine Learning-Pipelines, bei denen es sich um konfigurierbare Machine Learning-Workflows handelt.

Azure Machine Learning-Pipelines ermöglichen es Ihnen, wiederverwendbare Workflows für maschinelles Lernen zu erstellen, die als Vorlage für Ihre Machine Learning-Szenarien verwendet werden können. Dieses Paket enthält die grundlegenden Funktionen für die Arbeit mit Azure Machine Learning-Pipelines und wird in der Regel zusammen mit den Klassen im steps-Paket verwendet.

Eine Machine Learning-Pipeline wird durch eine Sammlung von PipelineStep-Objekten dargestellt, die sequenziert und parallelisiert oder mit expliziten Abhängigkeiten zwischen Schritten erstellt werden können. Pipelineschritte werden verwendet, um ein Pipeline-Objekt zu definieren, das den auszuführenden Workflow darstellt. Sie können Pipelines in einem Jupyter Notebook oder einer anderen integrierten Entwicklungsumgebung (Integrated Development Environment, IDE) erstellen und verwenden, wenn Azure ML SDK installiert ist.

Azure ML-Pipelines ermöglichen es Ihnen, sich auf maschinelles Lernen, anstatt auf die Infrastruktur zu konzentrieren. Informationen zu den ersten Schritten beim Erstellen einer Pipeline finden Sie unter https://aka.ms/pl-first-pipeline.

Weitere Informationen zu den Vorteilen der Machine Learning-Pipeline und ihrer Beziehung zu anderen von Azure angebotenen Pipelines finden Sie unter Beschreibung von Azure Machine Learning-Pipelines.

Module

builder

Definiert Klassen zum Erstellen einer Azure Machine Learning-Pipeline.

Ein Pipelinegraph besteht aus Pipelineschritten (PipelineStep), optionalen Pipelinedaten (PipelineData), die in jedem Schritt erzeugt oder genutzt werden, sowie einer optionalen Schrittausführungssequenz (StepSequence).

graph

Definiert Klassen zum Erstellen von Azure Machine Learning-Pipelinegraphen.

Azure ML-Pipelinegraphen werden für Pipeline-Objekte erstellt, wenn Sie PipelineStep (und abgeleitete Klassen), PipelineData und PipelineData-Objekte verwenden. In typischen Anwendungsfällen müssen die Klassen in diesem Modul nicht direkt verwendet werden.

Ein Pipelineausführungsgraph besteht aus Modulknoten, die grundlegende Einheiten wie eine Datenquelle oder einen Schritt darstellen. Knoten können über Ein- und Ausgabeports sowie über zugeordnete Parameter verfügen. Edges definieren Beziehungen zwischen zwei Knotenports in einem Graphen.

module

Enthält Klassen zum Erstellen und Verwalten von wiederverwendbaren Berechnungseinheiten einer Azure Machine Learning-Pipeline.

Durch Module können Sie Berechnungseinheiten in einer Pipeline erstellen, die Eingaben, Ausgaben und parameterbasierte Umgebungskonfigurationen enthalten können. Ein Modul kann versioniert und in verschiedenen Azure Machine Learning-Pipelines verwendet werden, im Gegensatz zu PipelineStep (und abgeleiteten Klassen), die in einer Pipeline verwendet werden.

Module werden für die Wiederverwendung in mehreren Pipelines konzipiert und können sich weiterentwickeln, um eine bestimmte Berechnungslogik an verschiedene Anwendungsfälle anzupassen. Ein Schritt in einer Pipeline kann in schnellen Iterationen verwendet werden, um einen Algorithmus zu verbessern. Sobald das Ziel erreicht ist, wird der Algorithmus in der Regel als Modul veröffentlicht, um die Wiederverwendung zu ermöglichen.

module_step_base

Enthält Funktionen zum Hinzufügen eines Schritts zu einer Pipeline mithilfe einer Version von Module.

pipeline

Definiert die Klasse zum Erstellen wiederverwendbarer Azure Machine Learning-Workflows.

pipeline_draft

Definiert Klassen zum Verwalten veränderlicher Pipelines.

pipeline_endpoint

Definiert Klassen zum Verwalten von Pipelines, einschließlich Versionsverwaltung und Endpunkte.

pipeline_output_dataset

Enthält Funktionen zum Höherstufen einer Zwischenausgabe zu einem Azure Machine Learning-Dataset.

Die Zwischendaten (Ausgabe) in einer Pipeline werden standardmäßig nicht zu einem Azure Machine Learning-Dataset. Um Zwischendaten zu einem Azure Machine Learning-Dataset höherzustufen, rufen Sie die as_dataset-Methode in der PipelineData-Klasse auf, um ein PipelineOutputFileDataset-Objekt zurückzugeben. Aus einem PipelineOutputFileDataset-Objekt können Sie dann ein PipelineOutputTabularDataset-Objekt erstellen.

run

Definiert Klassen für übermittelte Pipelines, einschließlich Klassen zum Überprüfen des Status und Abrufen von Ausführungsdetails.

schedule

Definiert Klassen für die Planung von Übermittlungen von Azure Machine Learning-Pipelines.

Klassen

InputPortBinding

Definiert eine Bindung von einer Quelle mit einer Eingabe eines Pipelineschritts.

Eine InputPortBinding kann als Eingabe für einen Schritt verwendet werden. Die Quelle kann PipelineData, PortDataReference, DataReference, PipelineDataset oder OutputPortBinding sein.

InputPortBinding ist nützlich, um den Namen der Schritteingabe anzugeben, wenn er sich vom Namen des Bindungsobjekts unterscheiden sollte (d. h. um doppelte Ein-/Ausgabenamen zu vermeiden oder weil das Schrittskript eine Eingabe benötigt, um einen bestimmten Namen zu erhalten). Hiermit kann auch der Bindungsmodus (bind_mode) für PythonScriptStep-Eingaben angegeben werden.

Initialisieren Sie InputPortBinding.

Module

Stellt eine Berechnungsergebniseinheit dar, die in einer Azure Machine Learning-Pipeline verwendet wird.

Ein Modul ist eine Sammlung von Dateien, die auf einem Computeziel ausgeführt werden, und eine Beschreibung einer Schnittstelle. Die Sammlung von Dateien kann Skripts, Binärdateien oder andere Dateien umfassen, die für die Ausführung auf dem Computeziel erforderlich sind. Die Modulschnittstelle beschreibt Eingaben, Ausgaben und Parameterdefinitionen. Sie werden nicht an bestimmte Werte oder Daten gebunden. Einem Modul ist eine Momentaufnahme zugeordnet, die die Sammlung der für das Modul definierten Dateien erfasst.

Initialisieren Sie das Modul.

ModuleVersion

Stellt die tatsächliche Berechnungseinheit in einem Module dar.

Sie sollten diese Klasse nicht direkt verwenden. Verwenden Sie stattdessen eine der Publish-Methoden der Module-Klasse.

Initialisieren Sie ModuleVersion.

ModuleVersionDescriptor

Definiert die Version und ID einer ModuleVersion.

Initialisieren Sie ModuleVersionDescriptor.

OutputPortBinding

Definiert eine benannte Ausgabe eines Pipelineschritts.

Mit OutputPortBinding können Sie den Datentyp angeben, der von einem Schritt generiert wird, und festlegen, wie die Daten generiert werden. Sie kann mit InputPortBinding verwendet werden, um anzugeben, dass die Schrittausgabe eine erforderliche Eingabe eines anderen Schritts ist.

Initialisieren Sie OutputPortBinding.

Pipeline

Stellt eine Sammlung von Schritten dar, die als wiederverwendbarer Azure Machine Learning-Workflow ausgeführt werden können.

Nutzen Sie eine Pipeline zum Erstellen und Verwalten der Workflows, die verschiedene Phasen beim maschinellen Lernen zusammenfügen. Jede Phase beim maschinellen Lernen, z. B. die Datenaufbereitung und das Modelltraining, kann aus mindestens einem Schritt in einer Pipeline bestehen.

Eine Übersicht darüber, warum und wann Pipelines verwendet werden sollten, finden Sie unter https://aka.ms/pl-concept.

Informationen zur Konstruktion einer Pipeline finden Sie unter https://aka.ms/pl-first-pipeline.

Initialisieren der Pipeline.

PipelineData

Stellt Zwischendaten in einer Azure Machine Learning-Pipeline dar.

Daten, die in der Pipeline verwendet werden, können in einem Schritt erstellt und in einem anderen Schritt genutzt werden, indem ein PipelineData-Objekt als Ausgabe eines Schritts und eine Eingabe eines oder mehrerer nachfolgender Schritte zur Verfügung gestellt wird.

Hinweis Wenn Sie die Pipelinedaten verwenden, stellen Sie sicher, dass das verwendete Verzeichnis vorhanden ist.

Ein Python-Beispiel, um sicherzustellen, dass das Verzeichnis vorhanden ist. Angenommen, Sie verfügen über einen Ausgabeport mit dem Namen output_folder in einem Pipelineschritt. Sie möchten einige Daten in den relativen Pfad in diesem Ordner schreiben.


   import os
   os.makedirs(args.output_folder, exist_ok=True)
   f = open(args.output_folder + '/relative_path/file_name', 'w+')

PipelineData verwendet die zugrundeliegende DataReference, was nicht mehr der empfohlene Ansatz für den Datenzugriff und die Datenübermittlung ist. Verwenden Sie stattdessen OutputFileDatasetConfig. Ein Beispiel finden Sie hier: Pipeline mit OutputFileDatasetConfig.

Initialisieren Sie PipelineData.

PipelineDataset

Fungiert als Adapter für Dataset und Pipeline.

Hinweis

Diese Klasse ist veraltet. Informationen zur Verwendung von Datasets mit Pipeline finden Sie unter https://aka.ms/pipeline-with-dataset.

Dies ist eine interne Klasse. Sie sollten diese Klasse nicht direkt erstellen, sondern stattdessen die Instanzmethoden vom Typ „as_*“ für die Dataset- oder OutputDatasetConfig-Klassen aufrufen.

Fungieren Sie als Adapter für Dataset und Pipeline.

Dies ist eine interne Klasse. Sie sollten diese Klasse nicht direkt erstellen, sondern stattdessen die as_*-Instanzmethoden für die Dataset- oder OutputDatasetConfig-Klassen aufrufen.

PipelineDraft

Stellt eine veränderliche Pipeline dar, mit der Ausführungen übermittelt und veröffentlichte Pipelines erstellt werden können.

Verwenden Sie PipelineDrafts, um Pipelines zu durchlaufen. PipelineDrafts können von Grund auf neu erstellt werden oder auf der Grundlage eines anderen PipelineDraft oder auf der Grundlage vorhandener Pipelines erstellt werden: Pipeline, PublishedPipelineoder PipelineRun.

Initialisieren Sie PipelineDraft.

PipelineEndpoint

Stellt einen Pipeline-Workflow dar, der von einer eindeutigen Endpunkt-URL ausgelöst werden kann.

PipelineEndpoints können verwendet werden, um neue Versionen einer PublishedPipeline unter Beibehaltung desselben Endpunkts zu erstellen. PipelineEndpoints sind innerhalb eines Arbeitsbereichs eindeutig benannt.

Mithilfe des Endpunkt-Attributs eines PipelineEndpoint-Objekts können Sie über externe Anwendungen mit REST-Aufrufen neue Pipelineausführungen auslösen. Informationen zur Authentifizierung beim Aufrufen von REST-Endpunkten finden Sie unter https://aka.ms/pl-restep-auth.

Weitere Informationen zum Erstellen und Ausführen von Machine Learning-Pipelines finden Sie unter https://aka.ms/pl-first-pipeline.

Initialisieren Sie PipelineEndpoint.

PipelineParameter

Definiert einen Parameter in einer Pipelineausführung.

PipelineParameter dienen zum Erstellen vielseitiger Pipelines, die später mit variierenden Parameterwerten erneut übermittelt werden können.

Initialisieren Sie Pipelineparameter.

PipelineRun

Stellt eine Ausführung eines Pipeline-Objekts dar

Mit dieser Klasse können Sie eine Pipelineausführung verwalten, ihren Ausführungsstatus überprüfen und Ausführungsdetails zu ihr abrufen, nachdem sie übermittelt wurde. Verwenden Sie get_steps, um die StepRun-Objekte abzurufen, die von der Pipelineausführung erstellt werden. Weitere Anwendungsfälle sind das Abrufen des der Pipelineausführung zugeordneten Graph-Objekts, das Abrufen des Status der Pipelineausführung und das Warten auf den Abschluss der Ausführung.

Initialisieren Sie eine Pipelineausführung.

PipelineStep

Stellt einen Ausführungsschritt in einer Azure Machine Learning-Pipeline dar.

Pipelines setzen sich aus mehreren Pipelineschritten (PipelineSteps) zusammen, bei denen es sich um unterschiedliche Recheneinheiten in der Pipeline handelt. Jeder Schritt kann unabhängig ausgeführt werden und isolierte Computeressourcen verwenden. Jeder Schritt verfügt in der Regel über eigene benannte Eingaben, Ausgaben und Parameter.

Die PipelineStep-Klasse ist die Basisklasse, von der andere integrierte Schrittklassen erben, die für gängige Szenarien konzipiert sind, etwa PythonScriptStep, DataTransferStep und HyperDriveStep.

Eine Übersicht über die Beziehung zwischen Pipelines und PipelineSteps finden Sie unter Beschreibung von Azure Machine Learning-Pipelines.

Initialisieren Sie PipelineStep.

PortDataReference

Modelliert Daten, die einer Ausgabe einer abgeschlossenen Schrittausführung (StepRun) zugeordnet sind.

Mit einem PortDataReference-Objekt können die Ausgabedaten, die von einem StepRun erzeugt wurden, heruntergeladen werden. Es kann auch als Schritteingabe in einer zukünftigen Pipeline verwendet werden.

Initialisieren Sie PortDataReference.

PublishedPipeline

Stellt eine Pipeline dar, die ohne den für ihre Erstellung verwendeten Python-Code übermittelt werden soll.

Darüber hinaus kann eine PublishedPipeline verwendet werden, um eine Pipeline mit anderen PipelineParameter-Werten und Eingaben erneut zu übermitteln.

Initialisieren Sie PublishedPipeline.

:p aram-Endpunkt Die REST-Endpunkt-URL zum Übermitteln der Pipeline wird für diese Pipeline ausgeführt. :type endpoint: str :p aram total_run_steps: Die Anzahl der Schritte in dieser Pipeline :type total_run_steps: int :p aram-Arbeitsbereich: Der Arbeitsbereich der veröffentlichten Pipeline. :type workspace: azureml.core.Workspace :p aram continue_on_step_failure: Gibt an, ob die Ausführung anderer Schritte im PipelineRun fortgesetzt werden soll

wenn ein Schritt fehlschlägt, ist der Standardwert false.

Schedule

Definiert einen Zeitplan, nach dem eine Pipeline übermittelt werden soll.

Nachdem eine Pipeline veröffentlicht wurde, kann ein Zeitplan verwendet werden, um die Pipeline in einem angegebenen Intervall oder wenn Änderungen an einem Blobspeicherort erkannt werden zu übermitteln.

Initialisieren Sie Zeitplan.

ScheduleRecurrence

Definiert die Häufigkeit, das Intervall und die Startzeit eines Pipeline-Schedule.

Mit ScheduleRecurrence können Sie auch die Zeitzone und die Stunden, Minuten oder Wochentage für die Serie angeben.

Initialisieren Sie eine Terminserie.

Es ermöglicht auch, die Zeitzone und die Stunden oder Minuten oder Wochentage für die Wiederholung anzugeben.

StepRun

Eine Ausführung eines Schritts in einer Pipeline.

Diese Klasse kann zum Verwalten, Überprüfen des Status und Abrufen von Ausführungsdetails verwendet werden, nachdem die Ausführung der übergeordneten Pipeline übermittelt wurde und die Pipeline die Schrittausführung übermittelt hat.

Initialisieren Sie ein StepRun-Objekt.

StepRunOutput

Stellt eine Ausgabe dar, die von einem StepRun-Objekt in einer Pipeline erstellt wurde

StepRunOutput kann verwendet werden, um auf das PortDataReference-Objekt zuzugreifen, das durch den Schritt erstellt wurde.

Initialisieren Sie StepRunOutput.

StepSequence

Stellt eine Liste der Schritte in einer Pipeline und die Reihenfolge dar, in der sie ausgeführt werden sollen.

Verwendet eine StepSequence beim Initialisieren einer Pipeline, um einen Workflow zu erstellen, der Schritte enthält, die in einer bestimmten Reihenfolge ausgeführt werden sollen.

Initialisieren Sie StepSequence.

TrainingOutput

Definiert eine spezielle Ausgabe bestimmter PipelineSteps für die Verwendung in einer Pipeline.

Mit TrainingOutput können automatisierte Machine Learning-Metriken oder -Modelle als Schrittausgabe bereitgestellt werden, die wiederum von einem anderen Schritt einer Azure Machine Learning-Pipeline verarbeitet werden kann. Kann mit AutoMLStep oder HyperDriveStep verwendet werden

Initialisieren Sie TrainingOutput.

param model_file: Die spezifische Modelldatei, die in die Ausgabe aufgenommen werden soll. Nur für HyperDriveStep

Enumerationen

TimeZone

Listet die gültigen Zeitzonen für einen Wiederholungszeitplan (Schedule) auf.