ScriptRunConfig Klasa
Reprezentuje informacje o konfiguracji przesyłania przebiegu trenowania w usłudze Azure Machine Learning.
SkryptRunConfig pakuje razem informacje konfiguracyjne potrzebne do przesłania przebiegu w usłudze Azure ML, w tym skryptu, docelowego obiektu obliczeniowego, środowiska i wszelkich konfiguracji specyficznych dla zadania rozproszonego.
Po skonfigurowaniu i przesłaniu skryptu submitScriptRun za pomocą polecenia zostanie zwrócony element .
Konstruktor ScriptRunConfig klasy.
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)
Parametry
| Nazwa | Opis |
|---|---|
|
source_directory
Wymagane
|
Katalog lokalny zawierający pliki kodu potrzebne do uruchomienia. |
|
script
Wymagane
|
Ścieżka pliku względem source_directory skryptu do uruchomienia. |
|
arguments
Wymagane
|
Opcjonalne argumenty wiersza polecenia, które mają być przekazywane do skryptu trenowania. Argumenty są przekazywane w parach, na przykład ['–arg1', arg1_val, '–arg2', arg2_val]. |
|
run_config
Wymagane
|
Opcjonalna konfiguracja uruchamiania do użycia. |
|
_telemetry_values
Wymagane
|
Tylko do użytku wewnętrznego. |
|
compute_target
Wymagane
|
Docelowy obiekt obliczeniowy, w którym nastąpi trenowanie. Może to być obiekt ComputeTarget, nazwa istniejącego obiektu ComputeTarget lub ciąg "local". Jeśli nie określono docelowego obiektu obliczeniowego, zostanie użyta maszyna lokalna. |
|
environment
Wymagane
|
Środowisko do użycia na potrzeby przebiegu. Jeśli środowisko nie zostanie określone, azureml.core.runconfig.DEFAULT_CPU_IMAGE będzie używany jako obraz platformy Docker dla przebiegu. |
|
distributed_job_config
Wymagane
|
W przypadku zadań wymagających dodatkowych konfiguracji specyficznych dla zadań rozproszonych. |
|
resume_from
Wymagane
|
Ścieżka DataPath zawierająca pliki punktu kontrolnego lub modelu, z których ma być wznowione eksperyment. |
|
max_run_duration_seconds
Wymagane
|
Maksymalny czas dozwolony dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało dłużej niż ta wartość. :type max_run_duration_seconds: int |
|
command
Wymagane
|
Polecenie, które ma zostać przesłane do uruchomienia. Właściwość polecenia może być również używana zamiast skryptów/argumentów. Właściwości polecenia i skryptu/argumentu nie mogą być używane razem do przesyłania przebiegu. Aby przesłać plik skryptu przy użyciu właściwości polecenia [ "python", "train.py", "–arg1", arg1_val] Aby uruchomić rzeczywiste polecenie — ['ls'] |
|
docker_runtime_config
Wymagane
|
W przypadku zadań wymagających konfiguracji specyficznych dla środowiska uruchomieniowego platformy Docker. |
|
source_directory
Wymagane
|
Katalog lokalny zawierający pliki kodu potrzebne do uruchomienia. |
|
script
Wymagane
|
Ścieżka pliku względem source_directory skryptu do uruchomienia. |
|
arguments
Wymagane
|
Opcjonalne argumenty wiersza polecenia, które mają być przekazywane do skryptu trenowania. Argumenty są przekazywane w parach, na przykład ['–arg1', arg1_val, '–arg2', arg2_val]. |
|
run_config
Wymagane
|
Opcjonalna konfiguracja uruchamiania do użycia. |
|
_telemetry_values
Wymagane
|
Tylko do użytku wewnętrznego. |
|
compute_target
Wymagane
|
Docelowy obiekt obliczeniowy, w którym nastąpi trenowanie. Może to być obiekt ComputeTarget, nazwa istniejącego obiektu ComputeTarget lub ciąg "local". Jeśli nie określono docelowego obiektu obliczeniowego, zostanie użyta maszyna lokalna. |
|
environment
Wymagane
|
Środowisko do użycia na potrzeby przebiegu. Jeśli środowisko nie zostanie określone, azureml.core.runconfig.DEFAULT_CPU_IMAGE będzie używany jako obraz platformy Docker dla przebiegu. |
|
distributed_job_config
Wymagane
|
W przypadku zadań wymagających dodatkowych konfiguracji specyficznych dla zadań rozproszonych. |
|
resume_from
Wymagane
|
Ścieżka DataPath zawierająca pliki punktu kontrolnego lub modelu, z których ma być wznowione eksperyment. |
|
max_run_duration_seconds
Wymagane
|
Maksymalny czas dozwolony dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało dłużej niż ta wartość. |
|
command
Wymagane
|
Polecenie, które ma zostać przesłane do uruchomienia. Właściwość polecenia może być również używana zamiast skryptów/argumentów. Właściwości polecenia i skryptu/argumentu nie mogą być używane razem do przesyłania przebiegu. Aby przesłać plik skryptu przy użyciu właściwości polecenia [ "python", "train.py", "–arg1", arg1_val] Aby uruchomić rzeczywiste polecenie — ['ls'] |
|
docker_runtime_config
Wymagane
|
W przypadku zadań wymagających konfiguracji specyficznych dla środowiska uruchomieniowego platformy Docker. |
Uwagi
Zestaw SDK usługi Azure Machine Learning udostępnia szereg połączonych klas, które ułatwiają trenowanie i porównywanie modeli uczenia maszynowego, które są powiązane z udostępnionym problemem, który rozwiązuje.
Element Experiment działa jako kontener logiczny dla tych przebiegów trenowania. Obiekt ScriptRunConfig służy do konfigurowania informacji niezbędnych do przesyłania przebiegu trenowania w ramach eksperymentu. Po przesłaniu przebiegu przy użyciu obiektu ScriptRunConfig metoda submit zwraca obiekt typu ScriptRun. Następnie zwrócony obiekt ScriptRun zapewnia programowy dostęp do informacji o przebiegu trenowania. ScriptRun to klasa podrzędna Runklasy .
Kluczową koncepcją do zapamiętania jest to, że istnieją różne obiekty konfiguracji używane do przesyłania eksperymentu na podstawie rodzaju przebiegu, który chcesz wyzwolić. Typ obiektu konfiguracji informuje następnie o klasie podrzędnej Przebiegu, która zostanie przywrócona z metody submit. Po przekazaniu obiektu ScriptRunConfig w wywołaniu metody submit eksperymentu zostanie przywrócony obiekt ScriptRun. Przykłady innych zwróconych obiektów przebiegu to ( AutoMLRun zwracane dla przebiegu rozwiązania AutoML) i PipelineRun (zwracane w przypadku uruchomienia potoku).
Poniższy przykład przedstawia sposób przesyłania skryptu szkoleniowego na komputerze lokalnym.
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)
W poniższym przykładzie pokazano, jak przesłać skrypt trenowania w klastrze przy użyciu właściwości polecenia zamiast skryptu i argumentów.
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)
W poniższym przykładzie pokazano, jak uruchomić polecenie w klastrze.
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)
Aby uzyskać więcej przykładów pokazujących, jak pracować z elementem ScriptRunConfig, zobacz:
Atrybuty
MAX_DURATION_SECONDS_DEFAULT
MAX_DURATION_SECONDS_DEFAULT = 2592000