Experiment Klasse
Stellt den Haupteinstiegspunkt zum Erstellen und Arbeiten mit Experimenten in Azure Machine Learning dar.
Ein Experiment ist ein Container mit Testversionen , die mehrere Modellausführungen darstellen.
Experiment-Konstruktor.
Konstruktor
Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)
Parameter
| Name | Beschreibung |
|---|---|
|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, das das Experiment enthält. |
|
name
Erforderlich
|
Der Name des Experiments. |
|
kwargs
Erforderlich
|
Ein Wörterbuch mit Schlüsselwortargumenten. |
|
workspace
Erforderlich
|
Das Arbeitsbereichsobjekt, das das Experiment enthält. |
|
name
Erforderlich
|
Der Name des Experiments. |
|
kwargs
Erforderlich
|
Ein Wörterbuch mit Schlüsselwortargumenten. |
|
_skip_name_validation
|
Standardwert: False
|
|
_id
|
Standardwert: None
|
|
_archived_time
|
Standardwert: None
|
|
_create_in_cloud
|
Standardwert: True
|
|
_experiment_dto
|
Standardwert: None
|
Hinweise
Ein Azure Machine Learning-Experiment stellt die Sammlung von Testversionen dar, mit deren Hilfe die Hypothese eines Benutzers überprüft wird.
In Azure Machine Learning wird ein Experiment durch den Experiment Kurs dargestellt, und eine Testversion wird durch den Run Kurs dargestellt.
Um ein Experiment aus einem Arbeitsbereich abzurufen oder zu erstellen, fordern Sie das Experiment mit dem Namen des Experiments an. Der Experimentname muss 3-36 Zeichen sein, mit einem Buchstaben oder einer Zahl beginnen und darf nur Buchstaben, Zahlen, Unterstriche und Striche enthalten.
experiment = Experiment(workspace, "MyExperiment")
Wenn das Experiment im Arbeitsbereich nicht gefunden wird, wird ein neues Experiment erstellt.
Es gibt zwei Möglichkeiten, eine Experimenttestphase auszuführen. Wenn Sie interaktiv in einem Jupyter-Notizbuch experimentieren, verwenden start_logging Sie die Verwendung, wenn Sie ein Experiment aus dem Quellcode oder einer anderen Art von konfigurierter Testversion übermitteln. submit
Beide Mechanismen erstellen ein Run Objekt. Verwenden Sie in interaktiven Szenarien Protokollierungsmethoden, z log . B. zum Hinzufügen von Messungen und Metriken zum Testdatensatz. In konfigurierten Szenarien verwenden Sie Statusmethoden, z get_status . B. zum Abrufen von Informationen zur Ausführung.
In beiden Fällen können Sie Abfragemethoden verwenden, get_metrics um die aktuellen Werte (sofern vorhanden) von Testmessungen und Metriken abzurufen.
Methoden
| archive |
Archiviere ein Experiment. |
| delete |
Löschen eines Experiments im Arbeitsbereich. |
| from_directory |
(Veraltet) Laden Sie ein Experiment aus dem angegebenen Pfad. |
| get_docs_url |
Url zur Dokumentation für diese Klasse. |
| get_runs |
Gibt einen Generator der Läufe für dieses Experiment in umgekehrter chronologischer Reihenfolge zurück. |
| list |
Gibt die Liste der Experimente im Arbeitsbereich zurück. |
| reactivate |
Reaktiviert ein archiviertes Experiment. |
| refresh |
Gibt die neueste Version des Experiments aus der Cloud zurück. |
| remove_tags |
Löschen Sie die angegebenen Tags aus dem Experiment. |
| set_tags |
Hinzufügen oder Ändern einer Gruppe von Tags für das Experiment. Tags, die nicht im Wörterbuch übergeben werden, bleiben unberührt. |
| start_logging |
Starten Sie eine interaktive Protokollierungssitzung, und erstellen Sie eine interaktive Ausführung im angegebenen Experiment. |
| submit |
Senden Sie ein Experiment, und geben Sie die aktive erstellte Ausführung zurück. |
| tag |
Markieren Sie das Experiment mit einem Zeichenfolgenschlüssel und einem optionalen Zeichenfolgenwert. |
archive
Archiviere ein Experiment.
archive()
Hinweise
Nach der Archivierung wird das Experiment nicht standardmäßig aufgeführt. Beim Versuch, in ein archiviertes Experiment zu schreiben, wird ein neues aktives Experiment mit demselben Namen erstellt. Ein archiviertes Experiment kann durch Aufrufen reactivate wiederhergestellt werden, solange kein anderes aktives Experiment mit demselben Namen vorhanden ist.
delete
Löschen eines Experiments im Arbeitsbereich.
static delete(workspace, experiment_id)
Parameter
| Name | Beschreibung |
|---|---|
|
workspace
Erforderlich
|
Der Arbeitsbereich, zu dem das Experiment gehört. |
|
experiment_id
Erforderlich
|
Die Experiment-ID des zu löschenden Experiments. |
from_directory
(Veraltet) Laden Sie ein Experiment aus dem angegebenen Pfad.
static from_directory(path, auth=None)
Parameter
| Name | Beschreibung |
|---|---|
|
path
Erforderlich
|
Verzeichnis, das die Experimentkonfigurationsdateien enthält. |
|
auth
|
Das Authentifizierungsobjekt. Wenn keine der standardmäßigen Azure CLI-Anmeldeinformationen verwendet wird oder die API zur Eingabe von Anmeldeinformationen auffordert. Standardwert: None
|
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Gibt das Experiment zurück. |
get_docs_url
get_runs
Gibt einen Generator der Läufe für dieses Experiment in umgekehrter chronologischer Reihenfolge zurück.
get_runs(type=None, tags=None, properties=None, include_children=False)
Parameter
| Name | Beschreibung |
|---|---|
|
type
|
Filtern Sie den zurückgegebenen Generator, der vom angegebenen Typ ausgeführt wird. Informationen zum Erstellen von Ausführungstypen finden Sie unter.See add_type_provider for creating run types. Standardwert: None
|
|
tags
|
Der Filter wird nach "tag" oder {"tag": "value"} ausgeführt. Standardwert: None
|
|
properties
|
Filter wird von "property" oder {"property" ausgeführt: "value"} Standardwert: None
|
|
include_children
|
Standardmäßig werden nur Ausgeführte der obersten Ebene abgerufen. Auf "true" festgelegt, um alle Läufe auflisten zu können. Standardwert: False
|
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Die Liste der Ausgeführten übereinstimmenden bereitgestellten Filter. |
list
Gibt die Liste der Experimente im Arbeitsbereich zurück.
static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)
Parameter
| Name | Beschreibung |
|---|---|
|
workspace
Erforderlich
|
Der Arbeitsbereich, aus dem die Experimente aufgeführt werden sollen. |
|
experiment_name
|
Optionaler Name zum Filtern von Experimenten. Standardwert: None
|
|
view_type
|
Optionaler Enumerationswert zum Filtern oder Einschließen archivierter Experimente. Standardwert: ActiveOnly
|
|
tags
|
Optionaler Tagschlüssel oder Wörterbuch von Tag-Schlüssel-Wert-Paaren zum Filtern von Experimenten. Standardwert: None
|
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Eine Liste von Experimentobjekten. |
reactivate
Reaktiviert ein archiviertes Experiment.
reactivate(new_name=None)
Parameter
| Name | Beschreibung |
|---|---|
|
new_name
Erforderlich
|
Nicht mehr unterstützt |
Hinweise
Ein archiviertes Experiment kann nur reaktiviert werden, wenn kein anderes aktives Experiment mit demselben Namen vorhanden ist.
refresh
Gibt die neueste Version des Experiments aus der Cloud zurück.
refresh()
remove_tags
Löschen Sie die angegebenen Tags aus dem Experiment.
remove_tags(tags)
Parameter
| Name | Beschreibung |
|---|---|
|
tags
Erforderlich
|
[str]
Die Tagschlüssel, die entfernt werden |
set_tags
start_logging
Starten Sie eine interaktive Protokollierungssitzung, und erstellen Sie eine interaktive Ausführung im angegebenen Experiment.
start_logging(*args, **kwargs)
Parameter
| Name | Beschreibung |
|---|---|
|
experiment
Erforderlich
|
Das Experiment. |
|
outputs
Erforderlich
|
Optionale Ausgabeverzeichnis zum Nachverfolgen. Übergeben Sie für keine Ausgaben "False". |
|
snapshot_directory
Erforderlich
|
Optionales Verzeichnis zum Erstellen einer Momentaufnahme. Die Einstellung auf "Keine" nimmt keine Momentaufnahme auf. |
|
args
Erforderlich
|
|
|
kwargs
Erforderlich
|
|
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Zurückgeben einer gestarteten Ausführung. |
Hinweise
start_logging erstellt eine interaktive Ausführung für die Verwendung in Szenarien wie Jupyter-Notizbüchern. Alle Metriken, die während der Sitzung protokolliert werden, werden dem Ausführungsdatensatz im Experiment hinzugefügt. Wenn ein Ausgabeverzeichnis angegeben ist, wird der Inhalt dieses Verzeichnisses nach Abschluss der Ausführung als Ausführungsartefakte hochgeladen.
experiment = Experiment(workspace, "My Experiment")
run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
...
run.log_metric("Accuracy", accuracy)
run.complete()
Hinweis
run_id wird für jede Ausführung automatisch generiert und innerhalb des Experiments eindeutig.
submit
Senden Sie ein Experiment, und geben Sie die aktive erstellte Ausführung zurück.
submit(config, tags=None, **kwargs)
Parameter
| Name | Beschreibung |
|---|---|
|
config
Erforderlich
|
Die zu übermittelnde Konfiguration. |
|
tags
|
Tags, die der übermittelten Ausführung hinzugefügt werden sollen, {"tag": "value"}. Standardwert: None
|
|
kwargs
Erforderlich
|
Zusätzliche Parameter, die in der Submit-Funktion für Konfigurationen verwendet werden. |
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Ein Lauf. |
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 Experiments von Ihrem lokalen Computer ist 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 = experiment.submit(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 in den Konfigurationstypdetails.
azureml.train.automl.automlconfig.AutoMLConfig
azureml.pipeline.core.Pipeline
azureml.pipeline.core.PublishedPipeline
azureml.pipeline.core.PipelineEndpoint
Hinweis
Wenn Sie die Schulungsausführung übermitteln, wird eine Momentaufnahme des Verzeichnisses erstellt, das Ihre Schulungsskripts enthält, und an das Computeziel gesendet. Sie wird auch als Teil des Experiments in Ihrem Arbeitsbereich gespeichert. Wenn Sie Dateien ändern und die Ausführung erneut übermitteln, werden nur die geänderten Dateien hochgeladen.
Um zu verhindern, dass Dateien in die Momentaufnahme aufgenommen werden, erstellen Sie eine GITIGNORE - oder AMLIGNORE-Datei im Verzeichnis, und fügen Sie die Dateien hinzu. Die AMLIGnore-Datei verwendet die gleiche Syntax und Muster wie die GITIGNORE-Datei. Wenn beide Dateien vorhanden sind, hat die AMLIGNORE-Datei Vorrang.
Weitere Informationen finden Sie unter Momentaufnahmen.
tag
Markieren Sie das Experiment mit einem Zeichenfolgenschlüssel und einem optionalen Zeichenfolgenwert.
tag(key, value=None)
Parameter
| Name | Beschreibung |
|---|---|
|
key
Erforderlich
|
Die Tagtaste |
|
value
Erforderlich
|
Ein optionaler Wert für das Tag |
Hinweise
Tags in einem Experiment werden in einem Wörterbuch mit Zeichenfolgenschlüsseln und Zeichenfolgenwerten gespeichert. Tags können festgelegt, aktualisiert und gelöscht werden. Tags sind benutzerseitig ausgerichtet und enthalten im Allgemeinen Bedeutungsinformationen für die Verbraucher des Experiments.
experiment.tag('')
experiment.tag('DeploymentCandidate')
experiment.tag('modifiedBy', 'Master CI')
experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable
Attribute
archived_time
Gibt die archivierte Zeit für das Experiment zurück. Der Wert sollte "Keine" für ein aktives Experiment sein.
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Die archivierte Zeit des Experiments. |
id
name
tags
workspace
Gibt den Arbeitsbereich zurück, der das Experiment enthält.
Gibt zurück
| Typ | Beschreibung |
|---|---|
|
Gibt das Arbeitsbereichsobjekt zurück. |