ScriptRunConfig Klass
Representerar konfigurationsinformation för att skicka en träningskörning i Azure Machine Learning.
Ett ScriptRunConfig-paket kombinerar den konfigurationsinformation som behövs för att skicka en körning i Azure ML, inklusive skriptet, beräkningsmålet, miljön och eventuella distribuerade jobbspecifika konfigurationer.
När ett skript har konfigurerats och skickats med submitreturneras en ScriptRun .
Class ScriptRunConfig-konstruktor.
- Arv
-
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)
Parametrar
Name | Description |
---|---|
source_directory
Obligatorisk
|
En lokal katalog som innehåller kodfiler som behövs för en körning. |
script
Obligatorisk
|
Filsökvägen i förhållande till source_directory för skriptet som ska köras. |
arguments
Obligatorisk
|
Valfria kommandoradsargument som ska skickas till träningsskriptet. Argument skickas i par, till exempel ["-arg1", arg1_val, "-arg2", arg2_val]. |
run_config
Obligatorisk
|
Valfri körningskonfiguration som ska användas. |
_telemetry_values
Obligatorisk
|
Endast internt bruk. |
compute_target
Obligatorisk
|
AbstractComputeTarget eller
str
Beräkningsmålet där träningen ska ske. Detta kan antingen vara ett ComputeTarget-objekt, namnet på en befintlig ComputeTarget eller strängen "local". Om inget beräkningsmål anges används den lokala datorn. |
environment
Obligatorisk
|
Miljön som ska användas för körningen. Om ingen miljö anges används azureml.core.runconfig.DEFAULT_CPU_IMAGE som Docker-avbildning för körningen. |
distributed_job_config
Obligatorisk
|
För jobb som kräver ytterligare distribuerade jobbspecifika konfigurationer. |
resume_from
Obligatorisk
|
DataPath som innehåller kontrollpunkten eller modellfilerna som experimentet ska återupptas från. |
max_run_duration_seconds
Obligatorisk
|
Den maximala tid som tillåts för körningen. Systemet försöker automatiskt avbryta körningen om det tog längre tid än det här värdet. :type max_run_duration_seconds: int |
command
Obligatorisk
|
Kommandot som ska skickas för körningen. Kommandoegenskapen kan också användas i stället för skript/argument. Egenskaper för både kommando och skript/argument kan inte användas tillsammans för att skicka en körning. Skicka en skriptfil med hjälp av kommandoegenskapen ['python', 'train.py', '-arg1', arg1_val] Köra ett faktiskt kommando - ['ls'] |
docker_runtime_config
Obligatorisk
|
För jobb som kräver Docker-körningsspecifika konfigurationer. |
source_directory
Obligatorisk
|
En lokal katalog som innehåller kodfiler som behövs för en körning. |
script
Obligatorisk
|
Filsökvägen i förhållande till source_directory för skriptet som ska köras. |
arguments
Obligatorisk
|
Valfria kommandoradsargument som ska skickas till träningsskriptet. Argument skickas i par, till exempel ["-arg1", arg1_val, "-arg2", arg2_val]. |
run_config
Obligatorisk
|
Valfri körningskonfiguration som ska användas. |
_telemetry_values
Obligatorisk
|
Endast internt bruk. |
compute_target
Obligatorisk
|
AbstractComputeTarget eller
str
Beräkningsmålet där träningen ska ske. Detta kan antingen vara ett ComputeTarget-objekt, namnet på en befintlig ComputeTarget eller strängen "local". Om inget beräkningsmål anges används den lokala datorn. |
environment
Obligatorisk
|
Miljön som ska användas för körningen. Om ingen miljö anges används azureml.core.runconfig.DEFAULT_CPU_IMAGE som Docker-avbildning för körningen. |
distributed_job_config
Obligatorisk
|
För jobb som kräver ytterligare distribuerade jobbspecifika konfigurationer. |
resume_from
Obligatorisk
|
DataPath som innehåller kontrollpunkten eller modellfilerna som experimentet ska återupptas från. |
max_run_duration_seconds
Obligatorisk
|
Den maximala tid som tillåts för körningen. Systemet försöker automatiskt avbryta körningen om det tog längre tid än det här värdet. |
command
Obligatorisk
|
Kommandot som ska skickas för körningen. Kommandoegenskapen kan också användas i stället för skript/argument. Egenskaper för både kommando och skript/argument kan inte användas tillsammans för att skicka en körning. Skicka en skriptfil med hjälp av kommandoegenskapen ['python', 'train.py', '-arg1', arg1_val] Köra ett faktiskt kommando - ['ls'] |
docker_runtime_config
Obligatorisk
|
För jobb som kräver Docker-körningsspecifika konfigurationer. |
Kommentarer
Azure Machine Learning SDK ger dig en serie sammankopplade klasser som är utformade för att hjälpa dig att träna och jämföra maskininlärningsmodeller som är relaterade till det delade problem som de löser.
En Experiment fungerar som en logisk container för dessa träningskörningar. Ett ScriptRunConfig-objekt används för att konfigurera den information som krävs för att skicka en träningskörning som en del av ett experiment. När en körning skickas med hjälp av ett ScriptRunConfig-objekt returnerar submit-metoden ett objekt av typen ScriptRun. Sedan returneras ScriptRun-objektet ger dig programmatisk åtkomst till information om träningskörningen. ScriptRun är en underordnad klass till Run.
Det viktigaste konceptet att komma ihåg är att det finns olika konfigurationsobjekt som används för att skicka ett experiment, baserat på vilken typ av körning du vill utlösa. Typen av konfigurationsobjekt informerar sedan vilken underordnad klass av Kör du får tillbaka från sändningsmetoden. När du skickar ett ScriptRunConfig-objekt i ett anrop till experimentets sändningsmetod får du tillbaka ett ScriptRun-objekt. Exempel på andra körningsobjekt som returneras är AutoMLRun (returneras för en AutoML-körning) och PipelineRun (returneras för en pipelinekörning).
Följande exempel visar hur du skickar ett träningsskript på den lokala datorn.
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)
I följande exempel visas hur du skickar ett träningsskript i klustret med hjälp av kommandoegenskapen i stället för skript och argument.
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)
Följande exempel visar hur du kör ett kommando i klustret.
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)
Fler exempel som visar hur du arbetar med ScriptRunConfig finns i:
Attribut
MAX_DURATION_SECONDS_DEFAULT
MAX_DURATION_SECONDS_DEFAULT = 2592000