ScriptRunConfig Classe
Representa as informações de configuração para enviar uma execução de treinamento no Azure Machine Learning.
Um ScriptRunConfig agrupa as informações de configuração necessárias para enviar uma execução no Azure ML, incluindo o script, o destino de computação, o ambiente e as configurações específicas do trabalho distribuído.
Depois que uma execução de script é configurada e enviada com a submit.ScriptRun
Construtor ScriptRunConfig de classe.
Construtor
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)
Parâmetros
Nome | Description |
---|---|
source_directory
Obrigatório
|
Um diretório local que contém arquivos de código necessários para uma execução. |
script
Obrigatório
|
O caminho do arquivo relativo ao source_directory do script a ser executado. |
arguments
Obrigatório
|
Argumentos opcionais de linha de comando para passar para o script de treinamento. Os argumentos são passados em pares, por exemplo, ['–arg1', arg1_val, '–arg2', arg2_val]. |
run_config
Obrigatório
|
Configuração de execução opcional a ser usada. |
_telemetry_values
Obrigatório
|
Somente para uso interno. |
compute_target
Obrigatório
|
O destino de computação em que o treinamento ocorrerá. Pode ser um objeto ComputeTarget, o nome de um ComputeTarget existente ou a cadeia de caracteres "local". Se nenhum destino de computação for especificado, seu computador local será usado. |
environment
Obrigatório
|
O ambiente a ser usado para a execução. Se nenhum ambiente for especificado, azureml.core.runconfig.DEFAULT_CPU_IMAGE será usado como a imagem do Docker para a execução. |
distributed_job_config
Obrigatório
|
Para trabalhos que exigem configurações adicionais específicas do trabalho distribuído. |
resume_from
Obrigatório
|
O DataPath que contém o ponto de verificação ou os arquivos de modelo dos quais retomar o experimento. |
max_run_duration_seconds
Obrigatório
|
O tempo máximo permitido para a execução. O sistema tentará cancelar automaticamente a execução se demorar mais do que esse valor. :type max_run_duration_seconds: int |
command
Obrigatório
|
O comando a ser enviado para a execução. A propriedade de comando também pode ser usada em vez de script/argumentos. As propriedades de comando e script/argumento não podem ser usadas em conjunto para enviar uma execução. Para enviar um arquivo de script usando a propriedade de comando - ['python', 'train.py', '–arg1', arg1_val] Para executar um comando real - ['ls'] |
docker_runtime_config
Obrigatório
|
Para trabalhos que exigem configurações específicas do Runtime do Docker. |
source_directory
Obrigatório
|
Um diretório local que contém arquivos de código necessários para uma execução. |
script
Obrigatório
|
O caminho do arquivo relativo ao source_directory do script a ser executado. |
arguments
Obrigatório
|
Argumentos opcionais de linha de comando para passar para o script de treinamento. Os argumentos são passados em pares, por exemplo, ['–arg1', arg1_val, '–arg2', arg2_val]. |
run_config
Obrigatório
|
Configuração de execução opcional a ser usada. |
_telemetry_values
Obrigatório
|
Somente para uso interno. |
compute_target
Obrigatório
|
O destino de computação em que o treinamento ocorrerá. Pode ser um objeto ComputeTarget, o nome de um ComputeTarget existente ou a cadeia de caracteres "local". Se nenhum destino de computação for especificado, seu computador local será usado. |
environment
Obrigatório
|
O ambiente a ser usado para a execução. Se nenhum ambiente for especificado, azureml.core.runconfig.DEFAULT_CPU_IMAGE será usado como a imagem do Docker para a execução. |
distributed_job_config
Obrigatório
|
Para trabalhos que exigem configurações adicionais específicas do trabalho distribuído. |
resume_from
Obrigatório
|
O DataPath que contém o ponto de verificação ou os arquivos de modelo dos quais retomar o experimento. |
max_run_duration_seconds
Obrigatório
|
O tempo máximo permitido para a execução. O sistema tentará cancelar automaticamente a execução se demorar mais do que esse valor. |
command
Obrigatório
|
O comando a ser enviado para a execução. A propriedade de comando também pode ser usada em vez de script/argumentos. As propriedades de comando e script/argumento não podem ser usadas em conjunto para enviar uma execução. Para enviar um arquivo de script usando a propriedade de comando - ['python', 'train.py', '–arg1', arg1_val] Para executar um comando real - ['ls'] |
docker_runtime_config
Obrigatório
|
Para trabalhos que exigem configurações específicas do Runtime do Docker. |
Comentários
O SDK do Azure Machine Learning fornece uma série de classes interconectadas, projetadas para ajudá-lo a treinar e comparar modelos de machine learning relacionados ao problema compartilhado que eles estão resolvendo.
Um Experiment atua como um contêiner lógico para essas execuções de treinamento. Um objeto ScriptRunConfig é usado para configurar as informações necessárias para enviar uma execução de treinamento como parte de um Experimento. Quando uma execução é enviada usando um objeto ScriptRunConfig, o método submit retorna um objeto do tipo ScriptRun. Em seguida, o objeto ScriptRun retornado fornece acesso programático a informações sobre a execução de treinamento. ScriptRun é uma classe filho de Run.
O conceito principal a ser lembrado é que há diferentes objetos de configuração que são usados para enviar um experimento, com base em que tipo de execução você deseja disparar. Em seguida, o tipo do objeto de configuração informa qual classe filho de Run você obtém do método de envio. Ao passar um objeto ScriptRunConfig em uma chamada para o método de envio do Experimento, você recebe de volta um objeto ScriptRun. Exemplos de outros objetos de execução retornados incluem AutoMLRun (retornados para uma execução AutoML) e PipelineRun (retornados para uma execução de Pipeline).
O exemplo a seguir mostra como enviar um script de treinamento em seu computador local.
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)
O exemplo a seguir mostra como enviar um script de treinamento em seu cluster usando a propriedade de comando em vez de script e argumentos.
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)
O exemplo a seguir mostra como executar um comando em seu 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)
Para obter mais exemplos mostrando como trabalhar com ScriptRunConfig, consulte:
Atributos
MAX_DURATION_SECONDS_DEFAULT
MAX_DURATION_SECONDS_DEFAULT = 2592000