ScriptRunConfig Classe
Rappresenta le informazioni di configurazione per l'invio di un'esecuzione di training in Azure Machine Learning.
Un pacchetto ScriptRunConfig include le informazioni di configurazione necessarie per inviare un'esecuzione in Azure ML, tra cui lo script, la destinazione di calcolo, l'ambiente e le configurazioni specifiche del processo distribuite.
Dopo aver configurato e inviato un'esecuzione di script con submit, viene restituito un oggetto ScriptRun .
Costruttore ScriptRunConfig della classe.
- 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 alla 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 si verificherà il training. Può essere un oggetto ComputeTarget, il nome di un computeTarget esistente o la 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 specifiche del processo distribuite aggiuntive. |
resume_from
Necessario
|
DataPath contenente i file di checkpoint o 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 alla 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 si verificherà il training. Può essere un oggetto ComputeTarget, il nome di un computeTarget esistente o la 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 specifiche del processo distribuite aggiuntive. |
resume_from
Necessario
|
DataPath contenente i file di checkpoint o 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 consentire di 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 viene inviata un'esecuzione usando un oggetto ScriptRunConfig, il metodo submit restituisce un oggetto di tipo ScriptRun. L'oggetto ScriptRun restituito offre 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 sono presenti 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 di Experiment, viene restituito un oggetto ScriptRun. Esempi di altri oggetti di esecuzione restituiti includono AutoMLRun (restituiti per un'esecuzione AutoML) e PipelineRun (restituiti per un'esecuzione della pipeline).
Nell'esempio seguente viene illustrato 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é gli argomenti e gli script.
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)
Nell'esempio seguente viene illustrato 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