ScriptRunConfig Klasa
Reprezentuje informacje o konfiguracji do przesyłania przebiegu trenowania w usłudze Azure Machine Learning.
SkryptRunConfig pakuje razem informacje o konfiguracji potrzebne do przesłania przebiegu w usłudze Azure ML, w tym skrypt, docelowy obiekt obliczeniowy, środowisko i wszelkie konfiguracje specyficzne dla zadania rozproszonego.
Po skonfigurowaniu i przesłaniu skryptu za pomocą polecenia submitScriptRun zostanie zwrócony element .
Konstruktor Class ScriptRunConfig.
- Dziedziczenie
-
azureml._logging.chained_identity.ChainedIdentityScriptRunConfig
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 nie określono żadnego środowiska, 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 można wznowić eksperyment. |
max_run_duration_seconds
Wymagane
|
Maksymalny czas dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało to 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 nie określono żadnego środowiska, 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 można wznowić eksperyment. |
max_run_duration_seconds
Wymagane
|
Maksymalny czas dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało to 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 klasy Run.
Kluczową koncepcją, którą należy pamiętać, jest to, że istnieją różne obiekty konfiguracji, które są używane do przesyłania eksperymentu na podstawie rodzaju przebiegu, który chcesz wyzwolić. Typ obiektu konfiguracji informuje następnie o klasie podrzędnej Uruchom, 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 zwracanych obiektów uruchomień to AutoMLRun (zwrócone dla przebiegu rozwiązania AutoML) i PipelineRun (zwrócone dla 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)
Poniższy przykład pokazuje, 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