ScriptRunConfig Classe
Rappresenta le informazioni di configurazione per l'invio di un'esecuzione di training in Azure Machine Learning.
ScriptRunConfig raggruppa le informazioni di configurazione necessarie per inviare un'esecuzione in Azure ML, inclusi lo script, la destinazione di calcolo, l'ambiente e le configurazioni specifiche del processo distribuite.
Dopo la configurazione e l'invio submitdi un'esecuzione di script con , viene restituito un oggetto ScriptRun .
Costruttore Class ScriptRunConfig.
- Ereditarietà
-
azureml._logging.chained_identity.ChainedIdentityScriptRunConfig
Costruttore
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)
Parametri
Nome | Descrizione |
---|---|
source_directory
Necessario
|
Directory locale contenente i file di codice necessari per un'esecuzione. |
script
Necessario
|
Percorso del file relativo al source_directory dello script da eseguire. |
arguments
Necessario
|
Argomenti della riga di comando facoltativi da passare allo script di training. Gli argomenti vengono passati in coppie, ad esempio ['–arg1', arg1_val, '-arg2', arg2_val]. |
run_config
Necessario
|
Configurazione di esecuzione facoltativa da usare. |
_telemetry_values
Necessario
|
Solo per uso interno. |
compute_target
Necessario
|
AbstractComputeTarget oppure
str
Destinazione di calcolo in cui verrà eseguito il training. Può trattarsi di un oggetto ComputeTarget, del nome di un computeTarget esistente o della stringa "local". Se non viene specificata alcuna destinazione di calcolo, verrà usato il computer locale. |
environment
Necessario
|
Ambiente da usare per l'esecuzione. Se non viene specificato alcun ambiente, azureml.core.runconfig.DEFAULT_CPU_IMAGE verrà usato come immagine Docker per l'esecuzione. |
distributed_job_config
Necessario
|
Per i processi che richiedono configurazioni aggiuntive specifiche del processo distribuito. |
resume_from
Necessario
|
DataPath contenente i file del checkpoint o del modello da cui riprendere l'esperimento. |
max_run_duration_seconds
Necessario
|
Tempo massimo consentito per l'esecuzione. Il sistema tenterà di annullare automaticamente l'esecuzione se è necessario più tempo di questo valore. :type max_run_duration_seconds: int |
command
Necessario
|
Comando da inviare per l'esecuzione. La proprietà del comando può essere usata anche invece di script/argomenti. Non è possibile usare insieme le proprietà di comando e script/argomento per inviare un'esecuzione. Per inviare un file di script usando la proprietà del comando ['python', 'train.py', '–arg1', arg1_val] Per eseguire un comando effettivo - ['ls'] |
docker_runtime_config
Necessario
|
Per i processi che richiedono configurazioni specifiche del runtime Docker. |
source_directory
Necessario
|
Directory locale contenente i file di codice necessari per un'esecuzione. |
script
Necessario
|
Percorso del file relativo al source_directory dello script da eseguire. |
arguments
Necessario
|
Argomenti della riga di comando facoltativi da passare allo script di training. Gli argomenti vengono passati in coppie, ad esempio ['–arg1', arg1_val, '-arg2', arg2_val]. |
run_config
Necessario
|
Configurazione di esecuzione facoltativa da usare. |
_telemetry_values
Necessario
|
Solo per uso interno. |
compute_target
Necessario
|
AbstractComputeTarget oppure
str
Destinazione di calcolo in cui verrà eseguito il training. Può trattarsi di un oggetto ComputeTarget, del nome di un computeTarget esistente o della stringa "local". Se non viene specificata alcuna destinazione di calcolo, verrà usato il computer locale. |
environment
Necessario
|
Ambiente da usare per l'esecuzione. Se non viene specificato alcun ambiente, azureml.core.runconfig.DEFAULT_CPU_IMAGE verrà usato come immagine Docker per l'esecuzione. |
distributed_job_config
Necessario
|
Per i processi che richiedono configurazioni aggiuntive specifiche del processo distribuito. |
resume_from
Necessario
|
DataPath contenente i file del checkpoint o del modello da cui riprendere l'esperimento. |
max_run_duration_seconds
Necessario
|
Tempo massimo consentito per l'esecuzione. Il sistema tenterà di annullare automaticamente l'esecuzione se è necessario più tempo di questo valore. |
command
Necessario
|
Comando da inviare per l'esecuzione. La proprietà del comando può essere usata anche invece di script/argomenti. Non è possibile usare insieme le proprietà di comando e script/argomento per inviare un'esecuzione. Per inviare un file di script usando la proprietà del comando ['python', 'train.py', '–arg1', arg1_val] Per eseguire un comando effettivo - ['ls'] |
docker_runtime_config
Necessario
|
Per i processi che richiedono configurazioni specifiche del runtime Docker. |
Commenti
Azure Machine Learning SDK offre una serie di classi interconnesse progettate per eseguire il training e confrontare i modelli di Machine Learning correlati al problema condiviso che stanno risolvendo.
Un Experiment oggetto funge da contenitore logico per queste esecuzioni di training. Un oggetto ScriptRunConfig viene usato per configurare le informazioni necessarie per l'invio di un'esecuzione di training come parte di un esperimento. Quando un'esecuzione viene inviata tramite un oggetto ScriptRunConfig, il metodo submit restituisce un oggetto di tipo ScriptRun. L'oggetto ScriptRun restituito consente quindi l'accesso a livello di codice alle informazioni sull'esecuzione del training. ScriptRun è una classe figlio di Run.
Il concetto chiave da ricordare è che esistono diversi oggetti di configurazione usati per inviare un esperimento, in base al tipo di esecuzione che si vuole attivare. Il tipo dell'oggetto di configurazione informa quindi la classe figlio di Run restituita dal metodo submit. Quando si passa un oggetto ScriptRunConfig in una chiamata al metodo submit dell'esperimento, viene restituito un oggetto ScriptRun. Esempi di altri oggetti run restituiti includono AutoMLRun (restituiti per un'esecuzione autoML) e PipelineRun (restituiti per un'esecuzione della pipeline).
L'esempio seguente illustra come inviare uno script di training nel computer locale.
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)
Nell'esempio seguente viene illustrato come inviare uno script di training nel cluster usando la proprietà del comando anziché script e argomenti.
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)
L'esempio seguente illustra come eseguire un comando nel cluster.
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)
Per altri esempi che illustrano come usare ScriptRunConfig, vedere:
l'articolo Selezionare e usare una destinazione di calcolo per eseguire il training del modello
questi notebook di training
Attributi
MAX_DURATION_SECONDS_DEFAULT
MAX_DURATION_SECONDS_DEFAULT = 2592000