ScriptRunConfig Klasse
Stellt Konfigurationsinformationen zum Übermitteln einer Schulung in Azure Machine Learning dar.
Ein ScriptRunConfig packt die Konfigurationsinformationen zusammen, die zum Übermitteln einer Ausführung in Azure ML erforderlich sind, einschließlich des Skripts, des Computeziels, der Umgebung und aller verteilten auftragsspezifischen Konfigurationen.
Sobald ein Skript ausgeführt und mit dem submitSkript übermittelt wurde, wird eine ScriptRun zurückgegeben.
Class ScriptRunConfig-Konstruktor.
Konstruktor
ScriptRunConfig(source_directory, script=None, arguments=None, run_config=None, _telemetry_values=None, compute_target=None, environment=None, distributed_job_config=None, resume_from=None, max_run_duration_seconds=2592000, command=None, docker_runtime_config=None)
Parameter
| Name | Beschreibung |
|---|---|
|
source_directory
Erforderlich
|
Ein lokales Verzeichnis, das Codedateien enthält, die für eine Ausführung erforderlich sind. |
|
script
Erforderlich
|
Der Dateipfad relativ zum source_directory des auszuführenden Skripts. |
|
arguments
Erforderlich
|
Optionale Befehlszeilenargumente, die an das Schulungsskript übergeben werden sollen. Argumente werden in Paaren übergeben, z. B. ['–arg1', arg1_val, '–arg2', arg2_val]. |
|
run_config
Erforderlich
|
Optionale Ausführungskonfiguration, die verwendet werden soll. |
|
_telemetry_values
Erforderlich
|
Nur zur internen Verwendung. |
|
compute_target
Erforderlich
|
AbstractComputeTarget oder
str
Das Computeziel, in dem die Schulung stattfinden wird. Hierbei kann es sich entweder um ein ComputeTarget-Objekt, den Namen eines vorhandenen ComputeTarget-Objekts oder um die Zeichenfolge "local" handeln. Wenn kein Computeziel angegeben ist, wird Ihr lokaler Computer verwendet. |
|
environment
Erforderlich
|
Die Umgebung, die für die Ausführung verwendet werden soll. Wenn keine Umgebung angegeben ist, wird azureml.core.runconfig.DEFAULT_CPU_IMAGE als Docker-Image für die Ausführung verwendet. |
|
distributed_job_config
Erforderlich
|
Für Aufträge, die zusätzliche verteilte auftragsspezifische Konfigurationen erfordern. |
|
resume_from
Erforderlich
|
Der DataPath mit den Prüfpunkt- oder Modelldateien, aus denen das Experiment fortgesetzt werden soll. |
|
max_run_duration_seconds
Erforderlich
|
Die maximal zulässige Zeit für die Ausführung. Das System versucht, die Ausführung automatisch abzubrechen, wenn dieser Wert länger dauerte. :type max_run_duration_seconds: int |
|
command
Erforderlich
|
Der Befehl, der für die Ausführung übermittelt werden soll. Die Befehlseigenschaft kann auch anstelle von Skripts/Argumenten verwendet werden. Sowohl Befehls- als auch Skript-/Argumenteigenschaften können nicht zusammen verwendet werden, um eine Ausführung zu übermitteln. So übermitteln Sie eine Skriptdatei mithilfe der Befehlseigenschaft - ['python', 'train.py', '–arg1', arg1_val] So führen Sie einen tatsächlichen Befehl aus – ['ls'] |
|
docker_runtime_config
Erforderlich
|
Für Aufträge, die Docker-laufzeitspezifische Konfigurationen erfordern. |
|
source_directory
Erforderlich
|
Ein lokales Verzeichnis, das Codedateien enthält, die für eine Ausführung erforderlich sind. |
|
script
Erforderlich
|
Der Dateipfad relativ zum source_directory des auszuführenden Skripts. |
|
arguments
Erforderlich
|
Optionale Befehlszeilenargumente, die an das Schulungsskript übergeben werden sollen. Argumente werden in Paaren übergeben, z. B. ['–arg1', arg1_val, '–arg2', arg2_val]. |
|
run_config
Erforderlich
|
Optionale Ausführungskonfiguration, die verwendet werden soll. |
|
_telemetry_values
Erforderlich
|
Nur zur internen Verwendung. |
|
compute_target
Erforderlich
|
AbstractComputeTarget oder
str
Das Computeziel, in dem die Schulung stattfinden wird. Hierbei kann es sich entweder um ein ComputeTarget-Objekt, den Namen eines vorhandenen ComputeTarget-Objekts oder um die Zeichenfolge "local" handeln. Wenn kein Computeziel angegeben ist, wird Ihr lokaler Computer verwendet. |
|
environment
Erforderlich
|
Die Umgebung, die für die Ausführung verwendet werden soll. Wenn keine Umgebung angegeben ist, wird azureml.core.runconfig.DEFAULT_CPU_IMAGE als Docker-Image für die Ausführung verwendet. |
|
distributed_job_config
Erforderlich
|
Für Aufträge, die zusätzliche verteilte auftragsspezifische Konfigurationen erfordern. |
|
resume_from
Erforderlich
|
Der DataPath mit den Prüfpunkt- oder Modelldateien, aus denen das Experiment fortgesetzt werden soll. |
|
max_run_duration_seconds
Erforderlich
|
Die maximal zulässige Zeit für die Ausführung. Das System versucht, die Ausführung automatisch abzubrechen, wenn dieser Wert länger dauerte. |
|
command
Erforderlich
|
Der Befehl, der für die Ausführung übermittelt werden soll. Die Befehlseigenschaft kann auch anstelle von Skripts/Argumenten verwendet werden. Sowohl Befehls- als auch Skript-/Argumenteigenschaften können nicht zusammen verwendet werden, um eine Ausführung zu übermitteln. So übermitteln Sie eine Skriptdatei mithilfe der Befehlseigenschaft - ['python', 'train.py', '–arg1', arg1_val] So führen Sie einen tatsächlichen Befehl aus – ['ls'] |
|
docker_runtime_config
Erforderlich
|
Für Aufträge, die Docker-laufzeitspezifische Konfigurationen erfordern. |
Hinweise
Das Azure Machine Learning SDK bietet Ihnen eine Reihe miteinander verbundener Klassen, die Ihnen dabei helfen sollen, Machine Learning-Modelle zu trainieren und zu vergleichen, die mit dem freigegebenen Problem zusammenhängen, das sie lösen.
Ein Experiment Dient als logischer Container für diese Schulungsläufe. Ein ScriptRunConfig -Objekt wird verwendet, um die informationen zu konfigurieren, die zum Übermitteln einer Schulungsausführung als Teil eines Experiments erforderlich sind. Wenn eine Ausführung mit einem ScriptRunConfig-Objekt übermittelt wird, gibt die Submit-Methode ein Objekt vom Typ ScriptRunzurück. Anschließend gibt Ihnen das zurückgegebene ScriptRun-Objekt programmgesteuerten Zugriff auf Informationen zur Schulungsausführung. ScriptRun ist eine untergeordnete Klasse von Run.
Das Wichtigste zu beachten ist, dass es verschiedene Konfigurationsobjekte gibt, die zum Übermitteln eines Experiments verwendet werden, basierend auf der Art der Ausführung, die Sie auslösen möchten. Der Typ des Konfigurationsobjekts informiert dann, welche untergeordnete Klasse von Run Sie von der Submit-Methode zurück erhalten. Wenn Sie ein ScriptRunConfig-Objekt in einem Aufruf der Submit-Methode von Experiment übergeben, erhalten Sie ein ScriptRun-Objekt zurück. Beispiele für andere zurückgegebene Ausführungsobjekte sind AutoMLRun (für eine AutoML-Ausführung zurückgegeben) und PipelineRun (für eine Pipelineausführung zurückgegeben).
Das folgende Beispiel zeigt, wie Sie ein Schulungsskript auf Ihrem lokalen Computer übermitteln.
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
script='train.py',
arguments=['--arg1', arg1_val, '--arg2', arg2_val],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
Das folgende Beispiel zeigt, wie Sie mithilfe der Befehlseigenschaft anstelle von Skript und Argumenten ein Schulungsskript auf Ihrem Cluster übermitteln.
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
command=['python', 'train.py', '--arg1', arg1_val],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
Das folgende Beispiel zeigt, wie Sie einen Befehl auf Ihrem Cluster ausführen.
from azureml.core import ScriptRunConfig, Experiment
# create or load an experiment
experiment = Experiment(workspace, 'MyExperiment')
# create or retrieve a compute target
cluster = workspace.compute_targets['MyCluster']
# create or retrieve an environment
env = Environment.get(ws, name='MyEnvironment')
# configure and submit your training run
config = ScriptRunConfig(source_directory='.',
command=['ls', '-l'],
compute_target=cluster,
environment=env)
script_run = experiment.submit(config)
Weitere Beispiele zum Arbeiten mit ScriptRunConfig finden Sie unter:
Attribute
MAX_DURATION_SECONDS_DEFAULT
MAX_DURATION_SECONDS_DEFAULT = 2592000