Udostępnij za pośrednictwem


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.ChainedIdentity
ScriptRunConfig

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
str

Katalog lokalny zawierający pliki kodu potrzebne do uruchomienia.

script
Wymagane
str

Ścieżka pliku względem source_directory skryptu do uruchomienia.

arguments
Wymagane
list lub str

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
list[str] lub str

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
str

Katalog lokalny zawierający pliki kodu potrzebne do uruchomienia.

script
Wymagane
str

Ś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
int

Maksymalny czas dla przebiegu. System podejmie próbę automatycznego anulowania przebiegu, jeśli trwało to dłużej niż ta wartość.

command
Wymagane
list[str] lub str

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