Freigeben über


Run Klasse

Definiert die Basisklasse für alle Ausführungen des Azure Machine Learning-Experiments.

Eine Ausführung stellt eine einzelne Testversion eines Experiments dar. Die Ausführung wird verwendet, um die asynchrone Ausführung einer Testversion zu überwachen, Metriken zu protokollieren und die Ausgabe der Testversion zu speichern und Ergebnisse und Zugriffsartefakte zu analysieren, die von der Testversion generiert werden.

Run objects are created when you submit a script to train a model in many different scenarios in Azure Machine Learning, including HyperDrive runs, Pipeline runs, and AutoML runs. Ein Run-Objekt wird auch erstellt, wenn Sie submit oder start_logging die Klasse verwenden Experiment .

Informationen zu den ersten Schritten mit Experimenten und Läufen finden Sie unter

Initialisieren Sie das Run-Objekt.

Konstruktor

Run(experiment, run_id, outputs=None, **kwargs)

Parameter

Name Beschreibung
experiment
Erforderlich

Das enthaltende Experiment.

run_id
Erforderlich
str

Die ID für die Ausführung.

outputs
str

Die ausgaben, die nachverfolgt werden sollen.

Standardwert: None
_run_dto
Erforderlich
<xref:azureml._restclient.models.run_dto.RunDto>

Nur zur internen Verwendung.

kwargs
Erforderlich

Ein Wörterbuch mit zusätzlichen Konfigurationsparametern.

experiment
Erforderlich

Das enthaltende Experiment.

run_id
Erforderlich
str

Die ID für die Ausführung.

outputs
Erforderlich
str

Die ausgaben, die nachverfolgt werden sollen.

kwargs
Erforderlich

Ein Wörterbuch mit zusätzlichen Konfigurationsparametern.

Hinweise

Eine Ausführung stellt eine einzelne Testversion eines Experiments dar. Ein Run-Objekt wird verwendet, um die asynchrone Ausführung einer Testversion zu überwachen, Metriken zu protokollieren und die Ausgabe der Testversion zu speichern und Ergebnisse und Zugriffsartefakte zu analysieren, die von der Testversion generiert werden.

"Ausführen" wird in Ihrem Experimentiercode verwendet, um Metriken und Artefakte beim Run History-Dienst zu protokollieren.

Die Ausführung wird außerhalb Ihrer Experimente verwendet, um den Fortschritt zu überwachen und die Metriken und Ergebnisse abzufragen und zu analysieren, die generiert wurden.

Die Funktionalität von Run umfasst:

  • Speichern und Abrufen von Metriken und Daten

  • Hochladen und Herunterladen von Dateien

  • Verwenden von Tags und der untergeordneten Hierarchie für einfache Nachschlagevorgänge vergangener Läufe

  • Registrieren gespeicherter Modelldateien als Modell, das operationalisiert werden kann

  • Speichern, Ändern und Abrufen von Eigenschaften einer Ausführung

  • Laden der aktuellen Ausführung aus einer Remoteumgebung mit der get_context Methode

  • Effizientes Snapshotn einer Datei oder eines Verzeichnisses zur Reproduzierbarkeit

Diese Klasse funktioniert in den Experiment folgenden Szenarien:

  • Erstellen einer Ausführung durch Ausführen von Code mithilfe von submit

  • Interaktives Erstellen einer Ausführung in einem Notizbuch mithilfe von start_logging

  • Protokollieren von Metriken und Hochladen von Artefakten in Ihrem Experiment, z. B. bei Verwendung log

  • Lesen von Metriken und Herunterladen von Artefakten beim Analysieren experimenteller Ergebnisse, z. B. bei Verwendung get_metrics

Um eine Ausführung zu übermitteln, erstellen Sie ein Konfigurationsobjekt, das beschreibt, wie das Experiment ausgeführt wird. Hier sind Beispiele für die verschiedenen Konfigurationsobjekte, die Sie verwenden können:

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.train.hyperdrive.HyperDriveConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

Die folgenden Metriken können während des Trainings eines Experiments zu einer Ausführung hinzugefügt werden.

  • Skalar

    • Protokollieren Sie einen numerischen oder Zeichenfolgenwert für die Ausführung mit dem angegebenen Namen mithilfe von log. Wenn Sie eine Metrik für eine Ausführung protokollieren, wird diese Metrik im Ausführungsdatensatz im Experiment gespeichert. Sie können dieselbe Metrik mehrmals innerhalb einer Ausführung protokollieren, wobei das Ergebnis als Vektor dieser Metrik betrachtet wird.

    • Beispiel: run.log("accuracy", 0.95)

  • Liste

    • Protokollieren Sie eine Liste der Werte für die Ausführung mit dem angegebenen Namen mithilfe von log_list.

    • Beispiel: run.log_list("accuracies", [0.6, 0.7, 0.87])

  • Reihe

    • Die Verwendung log_row erstellt eine Metrik mit mehreren Spalten, wie in kwargs. Jeder benannte Parameter generiert eine Spalte mit dem angegebenen Wert. log_row kann einmal aufgerufen werden, um ein beliebiges Tupel zu protokollieren, oder mehrmals in einer Schleife, um eine vollständige Tabelle zu generieren.

    • Beispiel: run.log_row("Y over X", x=1, y=0.4)

  • Tabelle

    • Protokollieren Sie ein Wörterbuchobjekt bei der Ausführung mit dem angegebenen Namen mithilfe von log_table.

    • Beispiel: run.log_table("Y over X", {"x":[1, 2, 3], "y":[0.6, 0.7, 0.89]})

  • Abbildung

    • Protokollieren Sie ein Bild beim Ausführungsdatensatz. Dient log_image zum Protokollieren einer Bilddatei oder eines Matplotlib-Plots für die Ausführung. Diese Bilder werden im Laufdatensatz sichtbar und vergleichbar sein.

    • Beispiel: run.log_image("ROC", path)

Methoden

add_properties

Fügen Sie der Ausführung unveränderliche Eigenschaften hinzu.

Tags und Eigenschaften (beide dict[str, str]) unterscheiden sich in ihrer Veränderbarkeit. Eigenschaften sind unveränderlich, sodass sie eine permanente Aufzeichnung zu Überwachungszwecken erstellen. Tags sind änderbar. Weitere Informationen zum Arbeiten mit Tags und Eigenschaften finden Sie unter Tag und Finden von Ausführungen.

add_type_provider

Erweiterbarkeits-Hook für benutzerdefinierte Run-Typen, die im Ausführungsverlauf gespeichert sind.

cancel

Markieren Sie die Ausführung als abgebrochen.

Wenn ein zugeordneter Auftrag mit einem satz cancel_uri Feld vorhanden ist, beenden Sie diesen Auftrag ebenfalls.

child_run

Erstellen Sie eine untergeordnete Ausführung.

clean

Entfernen Sie die Dateien, die der aktuellen Ausführung auf dem in der Ausführungskonfiguration angegebenen Ziel entsprechen.

complete

Warten Sie, bis die Aufgabenwarteschlange verarbeitet wird.

Anschließend wird die Ausführung als abgeschlossen markiert. Dies wird in der Regel in interaktiven Notizbuchszenarien verwendet.

create_children

Erstellen Eines oder mehrerer untergeordneter Elemente wird ausgeführt.

download_file

Laden Sie eine zugeordnete Datei aus dem Speicher herunter.

download_files

Laden Sie Dateien aus einem bestimmten Speicherpräfix (Ordnername) oder dem gesamten Container herunter, wenn das Präfix nicht angegeben ist.

fail

Markieren Sie die Ausführung als fehlgeschlagen.

Legen Sie optional die Error-Eigenschaft der Ausführung mit einer Nachricht oder Ausnahme fest, die an error_details.

flush

Warten Sie, bis die Aufgabenwarteschlange verarbeitet wird.

get

Rufen Sie die Ausführung für diesen Arbeitsbereich mit ihrer Ausführungs-ID ab.

get_all_logs

Laden Sie alle Protokolle für die Ausführung in ein Verzeichnis herunter.

get_children

Ruft alle untergeordneten Elemente für die aktuelle Ausführung ab, die von angegebenen Filtern ausgewählt wurde.

get_context

Gibt den aktuellen Dienstkontext zurück.

Verwenden Sie diese Methode, um den aktuellen Dienstkontext zum Protokollieren von Metriken und hochladen von Dateien abzurufen. Wenn allow_offline "True" (Standardeinstellung) ist, werden Aktionen für das Run-Objekt auf Standardausdruck gedruckt.

get_detailed_status

Rufen Sie den neuesten Status der Ausführung ab. Wenn der Status der Ausführung "In der Warteschlange" lautet, werden die Details angezeigt.

get_details

Rufen Sie die Definition, Statusinformationen, aktuelle Protokolldateien und andere Details der Ausführung ab.

get_details_with_logs

Gibt den Ausführungsstatus einschließlich des Protokolldateiinhalts zurück.

get_environment

Rufen Sie die Umgebungsdefinition ab, die von dieser Ausführung verwendet wurde.

get_file_names

Listet die Dateien auf, die in Verbindung mit der Ausführung gespeichert sind.

get_metrics

Rufen Sie die metriken ab, die bei der Ausführung protokolliert werden.

Wenn recursive "True" ist (standardmäßig "False"), rufen Sie Metriken für Die Ausführung in der Unterstruktur des angegebenen Laufs ab.

get_properties

Rufen Sie die neuesten Eigenschaften der Ausführung vom Dienst ab.

get_secret

Rufen Sie den geheimen Wert aus dem Kontext einer Ausführung ab.

Rufen Sie den geheimen Wert für den angegebenen Namen ab. Der geheime Name verweist auf einen Wert, der in Azure Key Vault gespeichert ist, der Ihrem Arbeitsbereich zugeordnet ist. Ein Beispiel für das Arbeiten mit geheimen Schlüsseln finden Sie unter Verwenden von geheimen Schlüsseln in Schulungsläufen.

get_secrets

Rufen Sie die geheimen Werte für eine bestimmte Liste geheimer Namen ab.

Rufen Sie ein Wörterbuch mit gefundenen und nicht gefundenen Geheimschlüsseln für die Liste der bereitgestellten Namen ab. Jeder geheime Name verweist auf einen Wert, der in Azure Key Vault gespeichert ist, der Ihrem Arbeitsbereich zugeordnet ist. Ein Beispiel für das Arbeiten mit geheimen Schlüsseln finden Sie unter Verwenden von geheimen Schlüsseln in Schulungsläufen.

get_snapshot_id

Rufen Sie die neueste Momentaufnahme-ID ab.

get_status

Rufen Sie den neuesten Status der Ausführung ab.

Die zurückgegebenen allgemeinen Werte umfassen "Running", "Completed" und "Failed".

get_submitted_run

VERALTET. Verwenden Sie get_context.

Rufen Sie die übermittelte Ausführung für dieses Experiment ab.

get_tags

Rufen Sie den neuesten Satz von änderbaren Tags für die Ausführung vom Dienst ab.

list

Dient zum Abrufen einer Liste von Läufen in einem Experiment, das durch optionale Filter angegeben wird.

list_by_compute

Dient zum Abrufen einer Liste der Ausführungen in einer Berechnung, die durch optionale Filter angegeben wird.

log

Protokollieren Sie einen Metrikwert für die Ausführung mit dem angegebenen Namen.

log_accuracy_table

Protokollieren Sie eine Genauigkeitstabelle im Artefaktspeicher.

Die Genauigkeitstabellenmetrik ist eine nicht skalare Metrik, die verwendet werden kann, um mehrere Liniendiagrammtypen zu erzeugen, die kontinuierlich über den Raum der vorhergesagten Wahrscheinlichkeiten variieren. Beispiele für diese Diagramme sind ROC-, Präzisionsrückruf- und Liftkurven.

Die Berechnung der Genauigkeitstabelle ähnelt der Berechnung einer ROC-Kurve. Eine ROC-Kurve speichert echte positive Raten und falsch positive Raten bei vielen unterschiedlichen Wahrscheinlichkeitsschwellenwerten. Die Genauigkeitstabelle speichert die rohe Anzahl wahrer Positiver, falsch positiver Ergebnisse, wahrer Negativer und falsch negativer Ergebnisse bei vielen Wahrscheinlichkeitsschwellenwerten.

Es gibt zwei Methoden zum Auswählen von Schwellenwerten: "Wahrscheinlichkeit" und "Quantil". Sie unterscheiden sich darin, wie sie aus dem Raum der vorhergesagten Wahrscheinlichkeiten probieren.

Wahrscheinlichkeitsschwellenwerte sind gleichmäßig verteilte Schwellenwerte zwischen 0 und 1. Wenn NUM_POINTS 5 ist, sind die Wahrscheinlichkeitsschwellenwerte [0,0, 0,25, 0,5, 0,75, 1,0].

Quantilschwellenwerte werden entsprechend der Verteilung der vorhergesagten Wahrscheinlichkeiten verteilt. Jeder Schwellenwert entspricht dem Quantil der Daten an einem Wahrscheinlichkeitsschwellenwert. Wenn z. B. NUM_POINTS 5 ist, liegt der erste Schwellenwert am 0. Quantil, der zweite am 25. Quantil, dem dritten am 50. usw.

Die Wahrscheinlichkeitstabellen und Quantiltabellen sind beide 3D-Listen, in denen die erste Dimension die Klassenbezeichnung darstellt, die zweite Dimension stellt das Beispiel an einem Schwellenwert dar (Skalierungen mit NUM_POINTS), und die dritte Dimension hat immer 4 Werte: TP, FP, TN, FN und immer in dieser Reihenfolge.

Die Verwirrungswerte (TP, FP, TN, FN) werden mit der 1 vs. Reststrategie berechnet. Weitere Informationen finden Sie unter dem folgenden Link: https://en.wikipedia.org/wiki/Multiclass_classification

N = Anzahl von Beispielen im Validierungsdatenset (200 in Beispiel) M = # Schwellenwerte = # Stichproben aus dem Wahrscheinlichkeitsraum (5 in Beispiel) C = # Klassen im vollständigen Dataset (3 in Beispiel)

Einige Invarianten der Genauigkeitstabelle:

  • TP + FP + TN + FN = N für alle Schwellenwerte für alle Klassen
  • TP + FN ist bei allen Schwellenwerten für jede Klasse gleich
  • TN + FP ist bei allen Schwellenwerten für jede Klasse gleich
  • Wahrscheinlichkeitstabellen und Quantiltabellen haben Form [C, M, 4]

Hinweis: M kann ein beliebiger Wert sein und steuert die Auflösung der Diagramme. Dies ist unabhängig vom Dataset, wird bei der Berechnung von Metriken definiert und gibt Speicherplatz, Berechnungszeit und Auflösung ab.

Klassenbeschriftungen sollten Zeichenfolgen sein, Verwirrungswerte sollten ganze Zahlen sein, und Schwellenwerte sollten floats sein.

log_confusion_matrix

Protokollieren Sie eine Verwirrungsmatrix im Artefaktspeicher.

Dadurch wird ein Wrapper um die Knöchelverwechslungsmatrix protokolliert. Die Metrikdaten enthalten die Klassenbeschriftungen und eine 2D-Liste für die Matrix selbst. Weitere Informationen zur Berechnung der Metrik finden Sie im folgenden Link: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html

log_image

Protokollieren Sie eine Bildmetrik für den Ausführungsdatensatz.

log_list

Protokollieren Sie eine Liste der Metrikwerte für die Ausführung mit dem angegebenen Namen.

log_predictions

Protokollieren Sie Vorhersagen für den Artefaktspeicher.

Dadurch wird eine Metrikbewertung protokolliert, die verwendet werden kann, um die Verteilung der tatsächlichen Zielwerte mit der Verteilung vorhergesagter Werte für eine Regressionsaufgabe zu vergleichen.

Die Vorhersagen sind binniert, und Standardabweichungen werden für Fehlerindikatoren in einem Liniendiagramm berechnet.

log_residuals

Protokollieren Sie Reste im Artefaktspeicher.

Dadurch werden die daten protokolliert, die zum Anzeigen eines Histogramms von Resten für eine Regressionsaufgabe erforderlich sind. Die Reste werden vorhergesagt - tatsächlich.

Es sollte mindestens ein Rand als die Anzahl der Anzahlen vorhanden sein. Beispiele für die Verwendung von Anzahlen und Kanten zur Darstellung eines Histogramms finden Sie in der Numpy Histogramm-Dokumentation. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_row

Protokollieren Sie eine Zeilenmetrik für die Ausführung mit dem angegebenen Namen.

log_table

Protokollieren Sie eine Tabellenmetrik für die Ausführung mit dem angegebenen Namen.

register_model

Registrieren Sie ein Modell für die Operationalisierung.

remove_tags

Löschen Sie die Liste der veränderbaren Tags bei dieser Ausführung.

restore_snapshot

Stellen Sie eine Momentaufnahme als ZIP-Datei wieder her. Gibt den Pfad zur ZIP-Datei zurück.

set_tags

Hinzufügen oder Ändern einer Gruppe von Tags bei der Ausführung. Tags, die nicht im Wörterbuch übergeben werden, bleiben unberührt.

Sie können auch einfache Zeichenfolgentags hinzufügen. Wenn diese Tags im Tagwörterbuch als Schlüssel angezeigt werden, weisen sie den Wert "None" auf. Weitere Informationen finden Sie unter Tag und Finden von Ausführungen.

start

Markieren Sie die Ausführung als gestartet.

Dies wird in der Regel in erweiterten Szenarien verwendet, wenn die Ausführung von einem anderen Akteur erstellt wurde.

submit_child

Senden Sie ein Experiment, und geben Sie die aktive untergeordnete Ausführung zurück.

tag

Markieren Sie die Ausführung mit einem Zeichenfolgenschlüssel und einem optionalen Zeichenfolgenwert.

take_snapshot

Speichern Sie eine Momentaufnahme der Eingabedatei oder des Ordners.

upload_file

Laden Sie eine Datei in den Ausführungsdatensatz hoch.

upload_files

Laden Sie Dateien in den Ausgeführten Datensatz hoch.

upload_folder

Laden Sie den angegebenen Ordner in den angegebenen Präfixnamen hoch.

wait_for_completion

Warten Sie auf den Abschluss dieser Ausführung. Gibt das Statusobjekt nach der Wartezeit zurück.

add_properties

Fügen Sie der Ausführung unveränderliche Eigenschaften hinzu.

Tags und Eigenschaften (beide dict[str, str]) unterscheiden sich in ihrer Veränderbarkeit. Eigenschaften sind unveränderlich, sodass sie eine permanente Aufzeichnung zu Überwachungszwecken erstellen. Tags sind änderbar. Weitere Informationen zum Arbeiten mit Tags und Eigenschaften finden Sie unter Tag und Finden von Ausführungen.

add_properties(properties)

Parameter

Name Beschreibung
properties
Erforderlich

Die ausgeblendeten Eigenschaften, die im Run-Objekt gespeichert sind.

add_type_provider

Erweiterbarkeits-Hook für benutzerdefinierte Run-Typen, die im Ausführungsverlauf gespeichert sind.

static add_type_provider(runtype, run_factory)

Parameter

Name Beschreibung
runtype
Erforderlich
str

Der Wert von Run.type, für den die Factory aufgerufen wird. Beispiele sind "hyperdrive" oder "azureml.scriptrun", können aber mit benutzerdefinierten Typen erweitert werden.

run_factory
Erforderlich
<xref:function>

Eine Funktion mit Signatur (Experiment, RunDto) –> Ausführen, die beim Ausführen der Auflistung aufgerufen werden soll.

cancel

Markieren Sie die Ausführung als abgebrochen.

Wenn ein zugeordneter Auftrag mit einem satz cancel_uri Feld vorhanden ist, beenden Sie diesen Auftrag ebenfalls.

cancel()

child_run

Erstellen Sie eine untergeordnete Ausführung.

child_run(name=None, run_id=None, outputs=None)

Parameter

Name Beschreibung
name
str

Ein optionaler Name für die untergeordnete Ausführung, in der Regel für einen "Teil" angegeben.

Standardwert: None
run_id
str

Eine optionale Ausführungs-ID für das untergeordnete Element, andernfalls wird sie automatisch generiert. Dieser Parameter wird in der Regel nicht festgelegt.

Standardwert: None
outputs
str

Optionale Ausgabeverzeichnis zum Nachverfolgen des untergeordneten Elements.

Standardwert: None

Gibt zurück

Typ Beschreibung
Run

Das untergeordnete Element wird ausgeführt.

Hinweise

Dies wird verwendet, um einen Teil einer Ausführung in einen Unterabschnitt zu isolieren. Dies kann für identifizierbare "Teile" einer Ausführung erfolgen, die interessant für die Trennung sind, oder um unabhängige Metriken über eine Interation eines Teilprozesses hinweg zu erfassen.

Wenn für die untergeordnete Ausführung ein Ausgabeverzeichnis festgelegt ist, wird der Inhalt dieses Verzeichnisses nach Abschluss des untergeordneten Datensatzes in den untergeordneten Ausführungsdatensatz hochgeladen.

clean

Entfernen Sie die Dateien, die der aktuellen Ausführung auf dem in der Ausführungskonfiguration angegebenen Ziel entsprechen.

clean()

Gibt zurück

Typ Beschreibung

Eine Liste der gelöschten Dateien.

complete

Warten Sie, bis die Aufgabenwarteschlange verarbeitet wird.

Anschließend wird die Ausführung als abgeschlossen markiert. Dies wird in der Regel in interaktiven Notizbuchszenarien verwendet.

complete(_set_status=True)

Parameter

Name Beschreibung
_set_status

Gibt an, ob das Statusereignis zur Nachverfolgung gesendet werden soll.

Standardwert: True

create_children

Erstellen Eines oder mehrerer untergeordneter Elemente wird ausgeführt.

create_children(count=None, tag_key=None, tag_values=None)

Parameter

Name Beschreibung
count
int

Eine optionale Anzahl von untergeordneten Elementen, die erstellt werden sollen.

Standardwert: None
tag_key
str

Ein optionaler Schlüssel zum Auffüllen des Tags-Eintrags in allen erstellten untergeordneten Elementen.

Standardwert: None
tag_Values
Erforderlich

Eine optionale Liste von Werten, die tags[tag_key] für die erstellte Liste der erstellten Ausführung zugeordnet werden.

tag_values
Standardwert: None

Gibt zurück

Typ Beschreibung

Die Liste der untergeordneten Ausführungen.

Hinweise

Entweder parameter count OR parameters tag_key AND tag_values must be specified.

download_file

Laden Sie eine zugeordnete Datei aus dem Speicher herunter.

download_file(name, output_file_path=None, _validate_checksum=False)

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name des artefakts, das heruntergeladen werden soll.

output_file_path
Erforderlich
str

Der lokale Pfad, in dem das Artefakt gespeichert werden soll.

download_files

Laden Sie Dateien aus einem bestimmten Speicherpräfix (Ordnername) oder dem gesamten Container herunter, wenn das Präfix nicht angegeben ist.

download_files(prefix=None, output_directory=None, output_paths=None, batch_size=100, append_prefix=True, timeout_seconds=None)

Parameter

Name Beschreibung
prefix
Erforderlich
str

Das Dateipfadpräfix innerhalb des Containers, aus dem alle Artefakte heruntergeladen werden sollen.

output_directory
Erforderlich
str

Ein optionales Verzeichnis, das alle Artefaktpfade als Präfix verwenden.

output_paths
Erforderlich
[str]

Optionale Dateipfade, in denen die heruntergeladenen Artefakte gespeichert werden sollen. Sollte eindeutig sein und der Länge der Pfade entsprechen.

batch_size
Erforderlich
int

Die Anzahl der Dateien, die pro Batch heruntergeladen werden sollen. Der Standardwert ist 100 Dateien.

append_prefix
Erforderlich

Ein optionales Kennzeichen, ob das angegebene Präfix vom endgültigen Ausgabedateipfad angefügt werden soll. If False then then the prefix is removed from the output file path.

timeout_seconds
Erforderlich
int

Timeout zum Herunterladen von Dateien.

fail

Markieren Sie die Ausführung als fehlgeschlagen.

Legen Sie optional die Error-Eigenschaft der Ausführung mit einer Nachricht oder Ausnahme fest, die an error_details.

fail(error_details=None, error_code=None, _set_status=True)

Parameter

Name Beschreibung
error_details

Optionale Details des Fehlers.

Standardwert: None
error_code
str

Optionaler Fehlercode des Fehlers für die Fehlerklassifizierung.

Standardwert: None
_set_status

Gibt an, ob das Statusereignis zur Nachverfolgung gesendet werden soll.

Standardwert: True

flush

Warten Sie, bis die Aufgabenwarteschlange verarbeitet wird.

flush(timeout_seconds=300)

Parameter

Name Beschreibung
timeout_seconds
int

Wie lange (in Sekunden) gewartet werden muss, bis die Aufgabenwarteschlange verarbeitet wird.

Standardwert: 300

get

Rufen Sie die Ausführung für diesen Arbeitsbereich mit ihrer Ausführungs-ID ab.

static get(workspace, run_id)

Parameter

Name Beschreibung
workspace
Erforderlich

Der enthaltende Arbeitsbereich.

run_id
Erforderlich

Die Ausführungs-ID.

Gibt zurück

Typ Beschreibung
Run

Die übermittelte Ausführung.

get_all_logs

Laden Sie alle Protokolle für die Ausführung in ein Verzeichnis herunter.

get_all_logs(destination=None)

Parameter

Name Beschreibung
destination
str

Der Zielpfad zum Speichern von Protokollen. Wenn nicht angegeben, wird ein Verzeichnis mit dem Namen "Run ID" im Projektverzeichnis erstellt.

Standardwert: None

Gibt zurück

Typ Beschreibung

Eine Liste der Namen der heruntergeladenen Protokolle.

get_children

Ruft alle untergeordneten Elemente für die aktuelle Ausführung ab, die von angegebenen Filtern ausgewählt wurde.

get_children(recursive=False, tags=None, properties=None, type=None, status=None, _rehydrate_runs=True)

Parameter

Name Beschreibung
recursive

Gibt an, ob alle Nachfolger rekursiert werden sollen.

Standardwert: False
tags
str oder dict

Wenn angegeben, wird die Ausführung mit dem angegebenen Tag oder {"tag" zurückgegeben: "value"}.

Standardwert: None
properties
str oder dict

Wenn angegeben, wird die Ausführung mit dem angegebenen "Property" oder {"property": "value"} zurückgegeben.

Standardwert: None
type
str

Wenn angegeben, wird dieser Typ zurückgegeben.

Standardwert: None
status
str

Wenn angegeben, wird die Ausführung mit dem angegebenen Status "status" zurückgegeben.

Standardwert: None
_rehydrate_runs

Gibt an, ob eine Ausführung des ursprünglichen Typs oder der Basisausführung instanziieren soll.

Standardwert: True

Gibt zurück

Typ Beschreibung

Eine Liste von Run Objekten.

get_context

Gibt den aktuellen Dienstkontext zurück.

Verwenden Sie diese Methode, um den aktuellen Dienstkontext zum Protokollieren von Metriken und hochladen von Dateien abzurufen. Wenn allow_offline "True" (Standardeinstellung) ist, werden Aktionen für das Run-Objekt auf Standardausdruck gedruckt.

get_context(allow_offline=True, used_for_context_manager=False, **kwargs)

Parameter

Name Beschreibung
cls
Erforderlich

Gibt die Klassenmethode an.

allow_offline

Ermöglichen Sie dem Dienstkontext, auf den Offlinemodus zurückzugreifen, damit das Schulungsskript lokal getestet werden kann, ohne einen Auftrag mit dem SDK zu übermitteln. True standardmäßig.

Standardwert: True
kwargs
Erforderlich

Ein Wörterbuch mit zusätzlichen Parametern.

used_for_context_manager
Standardwert: False

Gibt zurück

Typ Beschreibung
Run

Die übermittelte Ausführung.

Hinweise

Diese Funktion wird häufig verwendet, um das authentifizierte Run-Objekt innerhalb eines Skripts abzurufen, das für die Ausführung über experiment.submit() übermittelt werden soll. Dieses Ausführungsobjekt ist sowohl ein authentifizierter Kontext für die Kommunikation mit Azure Machine Learning-Diensten als auch ein konzeptioneller Container, in dem Metriken, Dateien (Artefakte) und Modelle enthalten sind.


   run = Run.get_context() # allow_offline=True by default, so can be run locally as well
   ...
   run.log("Accuracy", 0.98)
   run.log_row("Performance", epoch=e, error=err)

get_detailed_status

Rufen Sie den neuesten Status der Ausführung ab. Wenn der Status der Ausführung "In der Warteschlange" lautet, werden die Details angezeigt.

get_detailed_status()

Gibt zurück

Typ Beschreibung

Der neueste Status und details

Hinweise

  • status: Der aktuelle Status der Ausführung. Derselbe Wert wie der von get_status()zurückgegebene Wert.

  • Details: Die detaillierten Informationen für den aktuellen Status.


   run = experiment.submit(config)
   details = run.get_detailed_status()
   # details = {
   #     'status': 'Queued',
   #     'details': 'Run requested 1 node(s). Run is in pending status.',
   # }

get_details

Rufen Sie die Definition, Statusinformationen, aktuelle Protokolldateien und andere Details der Ausführung ab.

get_details()

Gibt zurück

Typ Beschreibung

Zurückgeben der Details für die Ausführung

Hinweise

Das zurückgegebene Wörterbuch enthält die folgenden Schlüsselwertpaare:

  • runId: ID dieser Ausführung.

  • Ziel-

  • status: Der aktuelle Status der Ausführung. Derselbe Wert wie der von get_status()zurückgegebene Wert.

  • startTimeUtc: UTC-Zeit, zu der diese Ausführung gestartet wurde, in ISO8601.

  • endTimeUtc: UTC-Zeit, zu der diese Ausführung abgeschlossen wurde (entweder abgeschlossen oder fehlgeschlagen), in ISO8601.

    Dieser Schlüssel ist nicht vorhanden, wenn die Ausführung noch ausgeführt wird.

  • properties: Unveränderliche Schlüsselwertpaare, die der Ausführung zugeordnet sind. Zu den Standardeigenschaften gehören die Snapshot-ID der Ausführung und Informationen zum Git-Repository, aus dem die Ausführung erstellt wurde (sofern vorhanden). Zusätzliche Eigenschaften können einer Ausführung mit hinzugefügt add_propertieswerden.

  • inputDatasets: Eingabe-Datasets, die der Ausführung zugeordnet sind.

  • outputDatasets: Output-Datasets, die der Ausführung zugeordnet sind.

  • logFiles

  • submittedBy


   run = experiment.start_logging()

   details = run.get_details()
   # details = {
   #     'runId': '5c24aa28-6e4a-4572-96a0-fb522d26fe2d',
   #     'target': 'sdk',
   #     'status': 'Running',
   #     'startTimeUtc': '2019-01-01T13:08:01.713777Z',
   #     'endTimeUtc': '2019-01-01T17:15:65.986253Z',
   #     'properties': {
   #         'azureml.git.repository_uri': 'https://example.com/my/git/repo',
   #         'azureml.git.branch': 'master',
   #         'azureml.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'azureml.git.dirty': 'True',
   #         'mlflow.source.git.repoURL': 'https://example.com/my/git/repo',
   #         'mlflow.source.git.branch': 'master',
   #         'mlflow.source.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'ContentSnapshotId': 'b4689489-ce2f-4db5-b6d7-6ad11e77079c'
   #     },
   #     'inputDatasets': [{
   #         'dataset': {'id': 'cdebf245-701d-4a68-8055-41f9cf44f298'},
   #         'consumptionDetails': {
   #             'type': 'RunInput',
   #             'inputName': 'training-data',
   #             'mechanism': 'Mount',
   #             'pathOnCompute': '/mnt/datasets/train'
   #         }
   #     }],
   #     'outputDatasets': [{
   #         'dataset': {'id': 'd04e8a19-1caa-4b1f-b318-4cbff9af9615'},
   #         'outputType': 'RunOutput',
   #         'outputDetails': {
   #             'outputName': 'training-result'
   #         }
   #     }],
   #     'runDefinition': {},
   #     'logFiles': {},
   #     'submittedBy': 'Alan Turing'
   # }

get_details_with_logs

Gibt den Ausführungsstatus einschließlich des Protokolldateiinhalts zurück.

get_details_with_logs()

Gibt zurück

Typ Beschreibung

Gibt den Status für die Ausführung mit Protokolldateiinhalten zurück.

get_environment

Rufen Sie die Umgebungsdefinition ab, die von dieser Ausführung verwendet wurde.

get_environment()

Gibt zurück

Typ Beschreibung

Gibt das Umgebungsobjekt zurück.

get_file_names

Listet die Dateien auf, die in Verbindung mit der Ausführung gespeichert sind.

get_file_names()

Gibt zurück

Typ Beschreibung

Die Liste der Pfade für vorhandene Artefakte

get_metrics

Rufen Sie die metriken ab, die bei der Ausführung protokolliert werden.

Wenn recursive "True" ist (standardmäßig "False"), rufen Sie Metriken für Die Ausführung in der Unterstruktur des angegebenen Laufs ab.

get_metrics(name=None, recursive=False, run_type=None, populate=False)

Parameter

Name Beschreibung
name
str

Der Name der Metrik.

Standardwert: None
recursive

Gibt an, ob alle Nachfolger rekursiert werden sollen.

Standardwert: False
run_type
str
Standardwert: None
populate

Gibt an, ob der Inhalt externer Daten abgerufen werden soll, die mit der Metrik verknüpft sind.

Standardwert: False

Gibt zurück

Typ Beschreibung

Ein Wörterbuch, das die Benutzermetriken enthält.

Hinweise


   run = experiment.start_logging() # run id: 123
   run.log("A", 1)
   with run.child_run() as child: # run id: 456
       child.log("A", 2)

   metrics = run.get_metrics()
   # metrics = { 'A': 1 }

   metrics = run.get_metrics(recursive=True)
   # metrics = { '123': { 'A': 1 }, '456': { 'A': 2 } } note key is runId

get_properties

Rufen Sie die neuesten Eigenschaften der Ausführung vom Dienst ab.

get_properties()

Gibt zurück

Typ Beschreibung

Die Eigenschaften der Ausführung.

Hinweise

Eigenschaften sind unveränderliche vom System generierte Informationen wie Dauer, Ausführungsdatum, Benutzer und benutzerdefinierte Eigenschaften, die mit der add_properties Methode hinzugefügt werden. Weitere Informationen finden Sie unter Tag und Finden von Ausführungen.

Wenn Sie einen Auftrag an Azure Machine Learning übermitteln, wenn Quelldateien in einem lokalen Git-Repository gespeichert werden, werden Informationen zum Repository als Eigenschaften gespeichert. Diese Git-Eigenschaften werden beim Erstellen einer Ausführung oder aufrufen von Experiment.submit hinzugefügt. Weitere Informationen zu Git-Eigenschaften finden Sie unter Git-Integration für Azure Machine Learning.

get_secret

Rufen Sie den geheimen Wert aus dem Kontext einer Ausführung ab.

Rufen Sie den geheimen Wert für den angegebenen Namen ab. Der geheime Name verweist auf einen Wert, der in Azure Key Vault gespeichert ist, der Ihrem Arbeitsbereich zugeordnet ist. Ein Beispiel für das Arbeiten mit geheimen Schlüsseln finden Sie unter Verwenden von geheimen Schlüsseln in Schulungsläufen.

get_secret(name)

Parameter

Name Beschreibung
name
Erforderlich
str

Der geheime Name, für den ein Geheimer Schlüssel zurückgegeben werden soll.

Gibt zurück

Typ Beschreibung
str

Der geheime Wert.

get_secrets

Rufen Sie die geheimen Werte für eine bestimmte Liste geheimer Namen ab.

Rufen Sie ein Wörterbuch mit gefundenen und nicht gefundenen Geheimschlüsseln für die Liste der bereitgestellten Namen ab. Jeder geheime Name verweist auf einen Wert, der in Azure Key Vault gespeichert ist, der Ihrem Arbeitsbereich zugeordnet ist. Ein Beispiel für das Arbeiten mit geheimen Schlüsseln finden Sie unter Verwenden von geheimen Schlüsseln in Schulungsläufen.

get_secrets(secrets)

Parameter

Name Beschreibung
secrets
Erforderlich

Eine Liste mit geheimen Namen, für die geheime Werte zurückgegeben werden sollen.

Gibt zurück

Typ Beschreibung

Gibt ein Wörterbuch mit gefundenen und nicht gefundenen geheimen Schlüsseln zurück.

get_snapshot_id

Rufen Sie die neueste Momentaufnahme-ID ab.

get_snapshot_id()

Gibt zurück

Typ Beschreibung
str

Die aktuellste Momentaufnahme-ID.

get_status

Rufen Sie den neuesten Status der Ausführung ab.

Die zurückgegebenen allgemeinen Werte umfassen "Running", "Completed" und "Failed".

get_status()

Gibt zurück

Typ Beschreibung
str

Der neueste Status.

Hinweise

  • NotStarted – Dies ist ein temporärer Zustand clientseitige Run-Objekte vor der Cloudübermittlung.

  • Starting – The Run has started being processed in the cloud. Der Aufrufer verfügt zu diesem Zeitpunkt über eine Ausführungs-ID.

  • Bereitstellung – Wird zurückgegeben, wenn die On-Demand-Berechnung für eine bestimmte Auftragsübermittlung erstellt wird.

  • Vorbereiten – Die Ausführungsumgebung wird vorbereitet:

    • Docker-Imagebuild

    • Conda-Umgebungseinrichtung

  • In die Warteschlange gestellt – Der Auftrag wird im Computeziel in die Warteschlange gestellt. Beispiel: In BatchAI befindet sich der Auftrag in der Warteschlange

    warten, bis alle angeforderten Knoten bereit sind.

  • Ausführen – Der Auftrag wurde im Computeziel ausgeführt.

  • Abschluss : Der Benutzercode wurde abgeschlossen, und die Ausführung erfolgt in Nachbearbeitungsphasen.

  • CancelRequested – Die Stornierung wurde für den Auftrag angefordert.

  • Abgeschlossen – Die Ausführung wurde erfolgreich abgeschlossen. Dies umfasst sowohl den Benutzercode als auch die Ausführung

    Phasen nach der Verarbeitung.

  • Fehler : Fehler bei der Ausführung. In der Regel enthält die Error-Eigenschaft einer Ausführung Details dazu.

  • Abgebrochen – Folgt einer Abbruchanforderung und gibt an, dass die Ausführung jetzt erfolgreich abgebrochen wurde.

  • NotResponding – Für Ausführungen mit aktivierten Takten wurde kürzlich kein Takt gesendet.


   run = experiment.submit(config)
   while run.get_status() not in ['Completed', 'Failed']: # For example purposes only, not exhaustive
       print('Run {} not in terminal state'.format(run.id))
       time.sleep(10)

get_submitted_run

VERALTET. Verwenden Sie get_context.

Rufen Sie die übermittelte Ausführung für dieses Experiment ab.

get_submitted_run(**kwargs)

Gibt zurück

Typ Beschreibung
Run

Die übermittelte Ausführung.

get_tags

Rufen Sie den neuesten Satz von änderbaren Tags für die Ausführung vom Dienst ab.

get_tags()

Gibt zurück

Typ Beschreibung

Die tags, die im Run-Objekt gespeichert sind.

list

Dient zum Abrufen einer Liste von Läufen in einem Experiment, das durch optionale Filter angegeben wird.

static list(experiment, type=None, tags=None, properties=None, status=None, include_children=False, _rehydrate_runs=True)

Parameter

Name Beschreibung
experiment
Erforderlich

Das enthaltende Experiment.

type
str

Wenn angegeben, wird der angegebene Typ zurückgegeben.

Standardwert: None
tags
str oder dict

Wenn angegeben, wird die Ausführung mit dem angegebenen Tag oder {"tag" zurückgegeben: "value"}.

Standardwert: None
properties
str oder dict

Wenn angegeben, wird die Ausführung mit dem angegebenen "Property" oder {"property": "value"} zurückgegeben.

Standardwert: None
status
str

Wenn angegeben, wird die Ausführung mit dem angegebenen Status "status" zurückgegeben.

Standardwert: None
include_children

Wenn dieser Wert auf "true" festgelegt ist, rufen Sie nicht nur alle Läufe der obersten Ebene ab.

Standardwert: False
_rehydrate_runs

Bei Festlegung auf "True" (standardmäßig) wird der registrierte Anbieter verwendet, um ein Objekt für diesen Typ anstelle der Basisausführung erneut zu erstellen.

Standardwert: True

Gibt zurück

Typ Beschreibung

Eine Liste der Ausführungen.

Hinweise

Das folgende Codebeispiel zeigt einige Verwendungen der list Methode.


   favorite_completed_runs = Run.list(experiment, status='Completed', tags='favorite')

   all_distinct_runs = Run.list(experiment)
   and_their_children = Run.list(experiment, include_children=True)

   only_script_runs = Run.list(experiment, type=ScriptRun.RUN_TYPE)

list_by_compute

Dient zum Abrufen einer Liste der Ausführungen in einer Berechnung, die durch optionale Filter angegeben wird.

static list_by_compute(compute, type=None, tags=None, properties=None, status=None)

Parameter

Name Beschreibung
compute
Erforderlich

Der enthaltende Compute.

type
str

Wenn angegeben, wird der angegebene Typ zurückgegeben.

Standardwert: None
tags
str oder dict

Wenn angegeben, wird die Ausführung mit dem angegebenen Tag oder {"tag" zurückgegeben: "value"}.

Standardwert: None
properties
str oder dict

Wenn angegeben, wird die Ausführung mit dem angegebenen "Property" oder {"property": "value"} zurückgegeben.

Standardwert: None
status
str

Wenn angegeben, wird die Ausführung mit dem angegebenen Status "status" zurückgegeben. Nur zulässige Werte sind "Running" und "Queued".

Standardwert: None

Gibt zurück

Typ Beschreibung
<xref:builtin.generator>

ein Generator von ~_restclient.models.RunDto

log

Protokollieren Sie einen Metrikwert für die Ausführung mit dem angegebenen Namen.

log(name, value, description='', step=None)

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Metrik.

value
Erforderlich

Der Wert, der an den Dienst gepostet werden soll.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

step
int

Eine optionale Achse zum Angeben der Wertreihenfolge innerhalb einer Metrik.

Standardwert: None

Hinweise

Wenn Sie eine Metrik für eine Ausführung protokollieren, wird diese Metrik im Ausführungsdatensatz im Experiment gespeichert. Sie können dieselbe Metrik mehrmals innerhalb einer Ausführung protokollieren, wobei das Ergebnis als Vektor dieser Metrik betrachtet wird. Wenn Schritt für eine Metrik angegeben ist, muss er für alle Werte angegeben werden.

log_accuracy_table

Protokollieren Sie eine Genauigkeitstabelle im Artefaktspeicher.

Die Genauigkeitstabellenmetrik ist eine nicht skalare Metrik, die verwendet werden kann, um mehrere Liniendiagrammtypen zu erzeugen, die kontinuierlich über den Raum der vorhergesagten Wahrscheinlichkeiten variieren. Beispiele für diese Diagramme sind ROC-, Präzisionsrückruf- und Liftkurven.

Die Berechnung der Genauigkeitstabelle ähnelt der Berechnung einer ROC-Kurve. Eine ROC-Kurve speichert echte positive Raten und falsch positive Raten bei vielen unterschiedlichen Wahrscheinlichkeitsschwellenwerten. Die Genauigkeitstabelle speichert die rohe Anzahl wahrer Positiver, falsch positiver Ergebnisse, wahrer Negativer und falsch negativer Ergebnisse bei vielen Wahrscheinlichkeitsschwellenwerten.

Es gibt zwei Methoden zum Auswählen von Schwellenwerten: "Wahrscheinlichkeit" und "Quantil". Sie unterscheiden sich darin, wie sie aus dem Raum der vorhergesagten Wahrscheinlichkeiten probieren.

Wahrscheinlichkeitsschwellenwerte sind gleichmäßig verteilte Schwellenwerte zwischen 0 und 1. Wenn NUM_POINTS 5 ist, sind die Wahrscheinlichkeitsschwellenwerte [0,0, 0,25, 0,5, 0,75, 1,0].

Quantilschwellenwerte werden entsprechend der Verteilung der vorhergesagten Wahrscheinlichkeiten verteilt. Jeder Schwellenwert entspricht dem Quantil der Daten an einem Wahrscheinlichkeitsschwellenwert. Wenn z. B. NUM_POINTS 5 ist, liegt der erste Schwellenwert am 0. Quantil, der zweite am 25. Quantil, dem dritten am 50. usw.

Die Wahrscheinlichkeitstabellen und Quantiltabellen sind beide 3D-Listen, in denen die erste Dimension die Klassenbezeichnung darstellt, die zweite Dimension stellt das Beispiel an einem Schwellenwert dar (Skalierungen mit NUM_POINTS), und die dritte Dimension hat immer 4 Werte: TP, FP, TN, FN und immer in dieser Reihenfolge.

Die Verwirrungswerte (TP, FP, TN, FN) werden mit der 1 vs. Reststrategie berechnet. Weitere Informationen finden Sie unter dem folgenden Link: https://en.wikipedia.org/wiki/Multiclass_classification

N = Anzahl von Beispielen im Validierungsdatenset (200 in Beispiel) M = # Schwellenwerte = # Stichproben aus dem Wahrscheinlichkeitsraum (5 in Beispiel) C = # Klassen im vollständigen Dataset (3 in Beispiel)

Einige Invarianten der Genauigkeitstabelle:

  • TP + FP + TN + FN = N für alle Schwellenwerte für alle Klassen
  • TP + FN ist bei allen Schwellenwerten für jede Klasse gleich
  • TN + FP ist bei allen Schwellenwerten für jede Klasse gleich
  • Wahrscheinlichkeitstabellen und Quantiltabellen haben Form [C, M, 4]

Hinweis: M kann ein beliebiger Wert sein und steuert die Auflösung der Diagramme. Dies ist unabhängig vom Dataset, wird bei der Berechnung von Metriken definiert und gibt Speicherplatz, Berechnungszeit und Auflösung ab.

Klassenbeschriftungen sollten Zeichenfolgen sein, Verwirrungswerte sollten ganze Zahlen sein, und Schwellenwerte sollten floats sein.

log_accuracy_table(name, value, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Genauigkeitstabelle.

value
Erforderlich
str oder dict

JSON mit Namen, Version und Dateneigenschaften.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

Hinweise

Beispiel für einen gültigen JSON-Wert:


   {
       "schema_type": "accuracy_table",
       "schema_version": "1.0.1",
       "data": {
           "probability_tables": [
               [
                   [82, 118, 0, 0],
                   [75, 31, 87, 7],
                   [66, 9, 109, 16],
                   [46, 2, 116, 36],
                   [0, 0, 118, 82]
               ],
               [
                   [60, 140, 0, 0],
                   [56, 20, 120, 4],
                   [47, 4, 136, 13],
                   [28, 0, 140, 32],
                   [0, 0, 140, 60]
               ],
               [
                   [58, 142, 0, 0],
                   [53, 29, 113, 5],
                   [40, 10, 132, 18],
                   [24, 1, 141, 34],
                   [0, 0, 142, 58]
               ]
           ],
           "percentile_tables": [
               [
                   [82, 118, 0, 0],
                   [82, 67, 51, 0],
                   [75, 26, 92, 7],
                   [48, 3, 115, 34],
                   [3, 0, 118, 79]
               ],
               [
                   [60, 140, 0, 0],
                   [60, 89, 51, 0],
                   [60, 41, 99, 0],
                   [46, 5, 135, 14],
                   [3, 0, 140, 57]
               ],
               [
                   [58, 142, 0, 0],
                   [56, 93, 49, 2],
                   [54, 47, 95, 4],
                   [41, 10, 132, 17],
                   [3, 0, 142, 55]
               ]
           ],
           "probability_thresholds": [0.0, 0.25, 0.5, 0.75, 1.0],
           "percentile_thresholds": [0.0, 0.01, 0.24, 0.98, 1.0],
           "class_labels": ["0", "1", "2"]
       }
   }

log_confusion_matrix

Protokollieren Sie eine Verwirrungsmatrix im Artefaktspeicher.

Dadurch wird ein Wrapper um die Knöchelverwechslungsmatrix protokolliert. Die Metrikdaten enthalten die Klassenbeschriftungen und eine 2D-Liste für die Matrix selbst. Weitere Informationen zur Berechnung der Metrik finden Sie im folgenden Link: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html

log_confusion_matrix(name, value, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Verwirrungsmatrix.

value
Erforderlich
str oder dict

JSON mit Namen, Version und Dateneigenschaften.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

Hinweise

Beispiel für einen gültigen JSON-Wert:


   {
       "schema_type": "confusion_matrix",
       "schema_version": "1.0.0",
       "data": {
           "class_labels": ["0", "1", "2", "3"],
           "matrix": [
               [3, 0, 1, 0],
               [0, 1, 0, 1],
               [0, 0, 1, 0],
               [0, 0, 0, 1]
           ]
       }
   }

log_image

Protokollieren Sie eine Bildmetrik für den Ausführungsdatensatz.

log_image(name, path=None, plot=None, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Metrik.

path
Erforderlich
str

Der Pfad oder datenstrom des Bilds.

plot
Erforderlich
<xref:matplotlib.pyplot>

Die Zeichnung, die als Bild protokolliert werden soll.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

Hinweise

Verwenden Sie diese Methode, um eine Bilddatei oder ein Matplotlib-Plot für die Ausführung zu protokollieren. Diese Bilder werden im Laufdatensatz sichtbar und vergleichbar sein.

log_list

Protokollieren Sie eine Liste der Metrikwerte für die Ausführung mit dem angegebenen Namen.

log_list(name, value, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Metrik.

value
Erforderlich

Die Werte der Metrik.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

log_predictions

Protokollieren Sie Vorhersagen für den Artefaktspeicher.

Dadurch wird eine Metrikbewertung protokolliert, die verwendet werden kann, um die Verteilung der tatsächlichen Zielwerte mit der Verteilung vorhergesagter Werte für eine Regressionsaufgabe zu vergleichen.

Die Vorhersagen sind binniert, und Standardabweichungen werden für Fehlerindikatoren in einem Liniendiagramm berechnet.

log_predictions(name, value, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Vorhersagen.

value
Erforderlich
str oder dict

JSON mit Namen, Version und Dateneigenschaften.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

Hinweise

Beispiel für einen gültigen JSON-Wert:


   {
       "schema_type": "predictions",
       "schema_version": "1.0.0",
       "data": {
           "bin_averages": [0.25, 0.75],
           "bin_errors": [0.013, 0.042],
           "bin_counts": [56, 34],
           "bin_edges": [0.0, 0.5, 1.0]
       }
   }

log_residuals

Protokollieren Sie Reste im Artefaktspeicher.

Dadurch werden die daten protokolliert, die zum Anzeigen eines Histogramms von Resten für eine Regressionsaufgabe erforderlich sind. Die Reste werden vorhergesagt - tatsächlich.

Es sollte mindestens ein Rand als die Anzahl der Anzahlen vorhanden sein. Beispiele für die Verwendung von Anzahlen und Kanten zur Darstellung eines Histogramms finden Sie in der Numpy Histogramm-Dokumentation. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_residuals(name, value, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Reste.

value
Erforderlich
str oder dict

JSON mit Namen, Version und Dateneigenschaften.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

Hinweise

Beispiel für einen gültigen JSON-Wert:


   {
       "schema_type": "residuals",
       "schema_version": "1.0.0",
       "data": {
           "bin_edges": [50, 100, 200, 300, 350],
           "bin_counts": [0.88, 20, 30, 50.99]
       }
   }

log_row

Protokollieren Sie eine Zeilenmetrik für die Ausführung mit dem angegebenen Namen.

log_row(name, description=None, **kwargs)

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Metrik.

description
str

Eine optionale Metrikbeschreibung.

Standardwert: None
kwargs
Erforderlich

Ein Wörterbuch mit zusätzlichen Parametern. In diesem Fall die Spalten der Metrik.

Hinweise

Die Verwendung log_row erstellt eine Tabellenmetrik mit Spalten, wie in Kwargs beschrieben. Jeder benannte Parameter generiert eine Spalte mit dem angegebenen Wert. log_row kann einmal aufgerufen werden, um ein beliebiges Tupel zu protokollieren, oder mehrmals in einer Schleife, um eine vollständige Tabelle zu generieren.


   citrus = ['orange', 'lemon', 'lime']
   sizes = [ 10, 7, 3]
   for index in range(len(citrus)):
       run.log_row("citrus", fruit = citrus[index], size=sizes[index])

log_table

Protokollieren Sie eine Tabellenmetrik für die Ausführung mit dem angegebenen Namen.

log_table(name, value, description='')

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der Metrik.

value
Erforderlich

Der Tabellenwert der Metrik, ein Wörterbuch, in dem Schlüssel spalten sind, die an den Dienst gepostet werden sollen.

description
Erforderlich
str

Eine optionale Metrikbeschreibung.

register_model

Registrieren Sie ein Modell für die Operationalisierung.

register_model(model_name, model_path=None, tags=None, properties=None, model_framework=None, model_framework_version=None, description=None, datasets=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None, **kwargs)

Parameter

Name Beschreibung
model_name
Erforderlich
str

Der Name des Modells.

model_path
str

Der relative Cloudpfad zum Modell, z. B. "outputs/modelname". Wenn nicht angegeben (None), model_name wird als Pfad verwendet.

Standardwert: None
tags

Ein Wörterbuch mit Schlüsselwerttags, das dem Modell zugewiesen werden soll.

Standardwert: None
properties

Ein Wörterbuch mit Schlüsselwerteigenschaften, die dem Modell zugewiesen werden sollen. Diese Eigenschaften können nach der Modellerstellung nicht geändert werden, aber neue Schlüsselwertpaare können hinzugefügt werden.

Standardwert: None
model_framework
str

Das Framework des zu registrierenden Modells. Derzeit unterstützte Frameworks: TensorFlow, ScikitLearn, Onnx, Custom, Multi

Standardwert: None
model_framework_version
str

Die Frameworkversion des registrierten Modells.

Standardwert: None
description
str

Eine optionale Beschreibung des Modells.

Standardwert: None
datasets

Eine Liste von Tupeln, in denen das erste Element die Datasetmodellbeziehung und das zweite Element das Dataset beschreibt.

Standardwert: None
sample_input_dataset

Wahlfrei. Beispieleingabe-Dataset für das registrierte Modell

Standardwert: None
sample_output_dataset

Wahlfrei. Beispielausgabe-Dataset für das registrierte Modell

Standardwert: None
resource_configuration

Wahlfrei. Ressourcenkonfiguration zum Ausführen des registrierten Modells

Standardwert: None
kwargs
Erforderlich

Optionale Parameter.

Gibt zurück

Typ Beschreibung

Das registrierte Modell.

Hinweise


   model = best_run.register_model(model_name = 'best_model', model_path = 'outputs/model.pkl')

remove_tags

Löschen Sie die Liste der veränderbaren Tags bei dieser Ausführung.

remove_tags(tags)

Parameter

Name Beschreibung
tags
Erforderlich

Eine Liste der zu entfernenden Tags.

Gibt zurück

Typ Beschreibung

Die tags, die im Run-Objekt gespeichert sind

restore_snapshot

Stellen Sie eine Momentaufnahme als ZIP-Datei wieder her. Gibt den Pfad zur ZIP-Datei zurück.

restore_snapshot(snapshot_id=None, path=None)

Parameter

Name Beschreibung
snapshot_id
str

Die momentaufnahme-ID, die wiederhergestellt werden soll. Die neueste wird verwendet, wenn sie nicht angegeben ist.

Standardwert: None
path
str

Der Pfad, in dem die heruntergeladene ZIP-Datei gespeichert wird.

Standardwert: None

Gibt zurück

Typ Beschreibung
str

Der Pfad.

set_tags

Hinzufügen oder Ändern einer Gruppe von Tags bei der Ausführung. Tags, die nicht im Wörterbuch übergeben werden, bleiben unberührt.

Sie können auch einfache Zeichenfolgentags hinzufügen. Wenn diese Tags im Tagwörterbuch als Schlüssel angezeigt werden, weisen sie den Wert "None" auf. Weitere Informationen finden Sie unter Tag und Finden von Ausführungen.

set_tags(tags)

Parameter

Name Beschreibung
tags
Erforderlich
dict[str] oder str

Die im Run-Objekt gespeicherten Tags.

start

Markieren Sie die Ausführung als gestartet.

Dies wird in der Regel in erweiterten Szenarien verwendet, wenn die Ausführung von einem anderen Akteur erstellt wurde.

start()

submit_child

Senden Sie ein Experiment, und geben Sie die aktive untergeordnete Ausführung zurück.

submit_child(config, tags=None, **kwargs)

Parameter

Name Beschreibung
config
Erforderlich

Die zu übermittelnde Konfiguration.

tags

Tags, die der übermittelten Ausführung hinzugefügt werden sollen, z. B. {"tag": "value"}.

Standardwert: None
kwargs
Erforderlich

Zusätzliche Parameter, die in der Submit-Funktion für Konfigurationen verwendet werden.

Gibt zurück

Typ Beschreibung
Run

Ein Run-Objekt.

Hinweise

Submit ist ein asynchroner Aufruf der Azure Machine Learning-Plattform, um eine Testversion auf lokaler oder Remotehardware auszuführen. Abhängig von der Konfiguration bereitet absenden ihre Ausführungsumgebungen automatisch vor, führen Den Code aus, erfassen Den Quellcode und Ergebnisse im Ausführungsverlauf des Experiments.

Um ein Experiment zu übermitteln, müssen Sie zuerst ein Konfigurationsobjekt erstellen, das beschreibt, wie das Experiment ausgeführt werden soll. Die Konfiguration hängt von der Art der erforderlichen Testversion ab.

Ein Beispiel für das Übermitteln eines untergeordneten Experiments von Ihrem lokalen Computer ist ScriptRunConfig wie folgt:


   from azureml.core import ScriptRunConfig

   # run a trial from the train.py code in your current directory
   config = ScriptRunConfig(source_directory='.', script='train.py',
       run_config=RunConfiguration())
   run = parent_run.submit_child(config)

   # get the url to view the progress of the experiment and then wait
   # until the trial is complete
   print(run.get_portal_url())
   run.wait_for_completion()

Ausführliche Informationen zum Konfigurieren einer Ausführung finden Sie unter submit.

tag

Markieren Sie die Ausführung mit einem Zeichenfolgenschlüssel und einem optionalen Zeichenfolgenwert.

tag(key, value=None)

Parameter

Name Beschreibung
key
Erforderlich
str

Die Tagtaste

value
str

Ein optionaler Wert für das Tag

Standardwert: None

Hinweise

Tags und Eigenschaften für eine Ausführung sind beide Wörterbücher von Zeichenfolge -> Zeichenfolge. Der Unterschied zwischen ihnen ist die Veränderbarkeit: Tags können festgelegt, aktualisiert und gelöscht werden, während Eigenschaften nur hinzugefügt werden können. Dies macht Eigenschaften für System-/Workflow-bezogene Verhaltensauslöser besser geeignet, während Tags im Allgemeinen für die Benutzer des Experiments benutzerbezogen und aussagekräftig sind.


   run = experiment.start_logging()
   run.tag('DeploymentCandidate')
   run.tag('modifiedBy', 'Master CI')
   run.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable

   run.add_properties({'BuildId': os.environ.get('VSTS_BUILD_ID')}) # Properties are not

   tags = run.get_tags()
   # tags = { 'DeploymentCandidate': None, 'modifiedBy': 'release pipeline' }

take_snapshot

Speichern Sie eine Momentaufnahme der Eingabedatei oder des Ordners.

take_snapshot(file_or_folder_path)

Parameter

Name Beschreibung
file_or_folder_path
Erforderlich
str

Die Datei oder der Ordner, die den Ausführungsquellcode enthält.

Gibt zurück

Typ Beschreibung
str

Gibt die Momentaufnahme-ID zurück.

Hinweise

Momentaufnahmen sollen der Quellcode sein, der zum Ausführen der Experimentausführung verwendet wird. Diese werden mit der Ausführung gespeichert, sodass die Testphase in Zukunft repliziert werden kann.

Hinweis

Momentaufnahmen werden automatisch beim Aufrufen erstellt submit . In der Regel ist die take_snapshot-Methode nur für interaktive Ausführung (Notizbuch) erforderlich.

upload_file

Laden Sie eine Datei in den Ausführungsdatensatz hoch.

upload_file(name, path_or_stream, datastore_name=None)

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name der hochzuladenden Datei.

path_or_stream
Erforderlich
str

Der relative lokale Pfad oder Datenstrom zur Datei, die hochgeladen werden soll.

datastore_name
Erforderlich
str

Optionaler Name des Datenspeichers

Gibt zurück

Typ Beschreibung

Hinweise


   run = experiment.start_logging()
   run.upload_file(name='important_file', path_or_stream="path/on/disk/file.txt")

Hinweis

Führt die Automatische Erfassungsdatei im angegebenen Ausgabeverzeichnis aus, die standardmäßig für die meisten Ausführungstypen auf "./outputs" festgelegt ist. Verwenden Sie upload_file nur, wenn zusätzliche Dateien hochgeladen werden müssen oder kein Ausgabeverzeichnis angegeben ist.

upload_files

Laden Sie Dateien in den Ausgeführten Datensatz hoch.

upload_files(names, paths, return_artifacts=False, timeout_seconds=None, datastore_name=None)

Parameter

Name Beschreibung
names
Erforderlich

Die Namen der hochzuladenden Dateien. Bei Festlegung müssen auch Pfade festgelegt werden.

paths
Erforderlich

Die relativen lokalen Pfade zu den hochzuladenden Dateien. Wenn festgelegt, sind Namen erforderlich.

return_artifacts
Erforderlich

Gibt an, dass ein Artefaktobjekt für jede hochgeladene Datei zurückgegeben werden soll.

timeout_seconds
Erforderlich
int

Das Timeout für das Hochladen von Dateien.

datastore_name
Erforderlich
str

Optionaler Name des Datenspeichers

Hinweise

upload_files hat den gleichen Effekt wie upload_file bei separaten Dateien, es gibt jedoch Leistungs- und Ressourcennutzungsvorteile bei der Verwendung upload_files.


   import os

   run = experiment.start_logging()
   file_name_1 = 'important_file_1'
   file_name_2 = 'important_file_2'
   run.upload_files(names=[file_name_1, file_name_2],
                       paths=['path/on/disk/file_1.txt', 'other/path/on/disk/file_2.txt'])

   run.download_file(file_name_1, 'file_1.txt')

   os.mkdir("path")  # The path must exist
   run.download_file(file_name_2, 'path/file_2.txt')

Hinweis

Führt automatisch Dateien im angegebenen Ausgabeverzeichnis aus, die für die meisten Ausführungstypen standardmäßig auf "./outputs" festgelegt sind. Verwenden Sie upload_files nur, wenn zusätzliche Dateien hochgeladen werden müssen oder kein Ausgabeverzeichnis angegeben ist.

upload_folder

Laden Sie den angegebenen Ordner in den angegebenen Präfixnamen hoch.

upload_folder(name, path, datastore_name=None)

Parameter

Name Beschreibung
name
Erforderlich
str

Der Name des Ordners der hochzuladenden Dateien.

folder
Erforderlich
str

Der relative lokale Pfad zum Ordner, der hochgeladen werden soll.

datastore_name
Erforderlich
str

Optionaler Name des Datenspeichers

Hinweise


   run = experiment.start_logging()
   run.upload_folder(name='important_files', path='path/on/disk')

   run.download_file('important_files/existing_file.txt', 'local_file.txt')

Hinweis

Führt automatisch Dateien im angegebenen Ausgabeverzeichnis aus, die für die meisten Ausführungstypen standardmäßig auf "./outputs" festgelegt sind. Verwenden Sie upload_folder nur, wenn zusätzliche Dateien hochgeladen werden müssen oder kein Ausgabeverzeichnis angegeben ist.

wait_for_completion

Warten Sie auf den Abschluss dieser Ausführung. Gibt das Statusobjekt nach der Wartezeit zurück.

wait_for_completion(show_output=False, wait_post_processing=False, raise_on_error=True)

Parameter

Name Beschreibung
show_output

Gibt an, ob die Ausführungsausgabe auf sys.stdout angezeigt werden soll.

Standardwert: False
wait_post_processing

Gibt an, ob nach Abschluss der Ausführung auf die Nachbearbeitung gewartet werden soll.

Standardwert: False
raise_on_error

Gibt an, ob ein Fehler ausgelöst wird, wenn sich die Ausführung in einem fehlgeschlagenen Zustand befindet.

Standardwert: True

Gibt zurück

Typ Beschreibung

Das Statusobjekt.

Attribute

description

Geben Sie die Beschreibung der Ausführung zurück.

Die optionale Beschreibung der Ausführung ist eine vom Benutzer angegebene Zeichenfolge, die für die Beschreibung einer Ausführung hilfreich ist.

Gibt zurück

Typ Beschreibung
str

Die Beschreibung der Ausführung.

display_name

Gibt den Anzeigenamen der Ausführung zurück.

Der optionale Anzeigename der Ausführung ist eine vom Benutzer angegebene Zeichenfolge, die für die spätere Identifizierung der Ausführung nützlich ist.

Gibt zurück

Typ Beschreibung
str

Der Anzeigename der Ausführung.

experiment

Abrufen des Experiments, das die Ausführung enthält.

Gibt zurück

Typ Beschreibung

Ruft das Experiment ab, das der Ausführung entspricht.

id

Get run ID.

Die ID der Ausführung ist ein Bezeichner, der für das enthaltende Experiment eindeutig ist.

Gibt zurück

Typ Beschreibung
str

Die Ausführungs-ID.

name

VERALTET. Verwenden Sie display_name.

Der optionale Name der Ausführung ist eine vom Benutzer angegebene Zeichenfolge, die für die spätere Identifizierung der Ausführung nützlich ist.

Gibt zurück

Typ Beschreibung
str

Die Ausführungs-ID.

number

Get run number.

Eine monoton steigende Zahl, die die Reihenfolge der Läufe innerhalb eines Experiments darstellt.

Gibt zurück

Typ Beschreibung
int

Die Ausführungsnummer.

parent

Rufen Sie die übergeordnete Ausführung für diese Ausführung aus dem Dienst ab.

"Runs" kann über ein optionales übergeordnetes Element verfügen, was zu einer potenziellen Strukturhierarchie von Läufen führt. Verwenden Sie die log Methode des übergeordneten Objekts, z run.parent.log(). B. zum Protokollieren von Metriken bei einer übergeordneten Ausführung.

Gibt zurück

Typ Beschreibung
Run

Der übergeordnete Befehl wird ausgeführt, oder Keine, wenn kein Wert festgelegt ist.

properties

Gibt die unveränderlichen Eigenschaften dieser Ausführung zurück.

Gibt zurück

Typ Beschreibung
dict[str],
str

Die lokal zwischengespeicherten Eigenschaften der Ausführung.

Hinweise

Zu den Eigenschaften gehören unveränderliche vom System generierte Informationen wie Dauer, Ausführungsdatum, Benutzer usw.

status

Gibt den Status des Ausführungsobjekts zurück.

tags

Gibt die Gruppe von veränderbaren Tags für diese Ausführung zurück.

Gibt zurück

Typ Beschreibung

Die tags, die im Run-Objekt gespeichert sind.

type

Get run type.

Gibt an, wie die Ausführung erstellt oder konfiguriert wurde.

Gibt zurück

Typ Beschreibung
str

Der Ausführungstyp.