RScriptStep Classe
Observação
Essa é uma classe experimental e pode mudar a qualquer momento. Consulte https://aka.ms/azuremlexperimental para obter mais informações.
Cria uma etapa do pipeline do Azure ML que executa o script R.
Crie uma etapa do Pipeline do Azure ML que executa o script R.
PRETERIDO. Em vez disso, use CommandStep. Para obter um exemplo, consulte Como executar scripts R em pipelines com CommandStep.
- Herança
-
azureml.pipeline.core._python_script_step_base._PythonScriptStepBaseRScriptStep
Construtor
RScriptStep(script_name, name=None, arguments=None, compute_target=None, runconfig=None, runconfig_pipeline_params=None, inputs=None, outputs=None, params=None, source_directory=None, use_gpu=False, custom_docker_image=None, cran_packages=None, github_packages=None, custom_url_packages=None, allow_reuse=True, version=None)
Parâmetros
Nome | Description |
---|---|
script_name
Obrigatório
|
[Obrigatório] O nome de um script R relativo a |
name
Obrigatório
|
O nome da etapa. Se não for especificado, |
arguments
Obrigatório
|
Argumentos de linha de comando para o arquivo de script R. Os argumentos serão passados para computar por meio do parâmetro |
compute_target
Obrigatório
|
[Obrigatório] O destino de computação a ser usado. Quando não é especificado, o destino de |
runconfig
Obrigatório
|
[Obrigatório] Configuração de execução que encapsula as informações necessárias para enviar uma execução de treinamento em um experimento. Isso é necessário para definir as configurações de execução de R que podem ser definidas em RSection. O RSection é necessário para essa etapa. |
runconfig_pipeline_params
Obrigatório
|
Substituições das propriedades runconfig no runtime usando pares chave-valor pelo nome da propriedade runconfig e o PipelineParameter de cada propriedade. Valores com suporte: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount' e 'TensorflowParameterServerCount' |
inputs
Obrigatório
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Uma lista de associações de porta de entrada. |
outputs
Obrigatório
|
Uma lista de vinculações de porta de saída. |
params
Obrigatório
|
Um dicionário de pares nome-valor registrados como variáveis de ambiente com "AML_PARAMETER_". |
source_directory
Obrigatório
|
Uma pasta que contém script R, conda env e outros recursos usados na etapa. |
use_gpu
Obrigatório
|
Indica se o ambiente para executar o experimento deve dar suporte a GPUs.
Se True, uma imagem padrão do Docker baseada em GPU será usada no ambiente. Se False, uma imagem baseada em CPU será usada. As imagens do Docker padrão (CPU ou GPU) serão usadas somente se um usuário não definir os parâmetros |
custom_docker_image
Obrigatório
|
O nome da imagem do Docker a partir da qual a imagem a ser usada para treinamento será criada. Se não for definido, uma imagem padrão baseada em CPU será usada como imagem base. Isso foi preterido e será removido em uma versão futura. Em vez disso, use base_image no DockerSection. |
cran_packages
Obrigatório
|
Pacotes CRAN a serem instalados. Isso foi preterido e será removido em uma versão futura. Em vez disso, use RSection.cran_packages. |
github_packages
Obrigatório
|
Pacotes do GitHub a serem instalados. Isso foi preterido e será removido em uma versão futura. Em vez disso, use RSection.github_packages. |
custom_url_packages
Obrigatório
|
Pacotes a serem instalados a partir do local, diretório ou URL personalizada. Isso foi preterido e será removido em uma versão futura. Em vez disso, use RSection.custom_url_packages. |
allow_reuse
Obrigatório
|
Indica se a etapa deve ou não reutilizar os resultados anteriores quando executada novamente com as mesmas configurações. A reutilização está habilitada por padrão. Se o conteúdo da etapa (scripts/dependências), as entradas e os parâmetros permanecerem inalterados, será reutilizada a saída da execução anterior dessa etapa. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior serão disponibilizados imediatamente para etapas posteriores. Se você usar conjuntos de dados do Azure Machine Learning como entradas, a reutilização será determinada dependendo de ter havido ou não alteração da definição do conjunto de dados, não de ter havido alteração dos dados subjacentes. |
version
Obrigatório
|
Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa. |
script_name
Obrigatório
|
[Obrigatório] O nome de um script R relativo a |
name
Obrigatório
|
O nome da etapa. Se não for especificado, |
arguments
Obrigatório
|
Argumentos de linha de comando para o arquivo de script R. Os argumentos serão passados para computar por meio do parâmetro |
compute_target
Obrigatório
|
[Obrigatório] O destino de computação a ser usado. Se não for especificado, o destino do |
runconfig
Obrigatório
|
[Obrigatório] Configuração de execução que encapsula as informações necessárias para enviar uma execução de treinamento em um experimento. Isso é necessário para definir as configurações de execução de R que podem ser definidas em RSection. O RSection é necessário para essa etapa. |
runconfig_pipeline_params
Obrigatório
|
Substituições das propriedades runconfig no runtime usando pares chave-valor pelo nome da propriedade runconfig e o PipelineParameter de cada propriedade. Valores com suporte: 'NodeCount', 'MpiProcessCountPerNode', 'TensorflowWorkerCount' e 'TensorflowParameterServerCount' |
inputs
Obrigatório
|
list[Union[InputPortBinding, DataReference, PortDataReference, PipelineData, PipelineOutputFileDataset, PipelineOutputTabularDataset, DatasetConsumptionConfig]]
Uma lista de associações de porta de entrada. |
outputs
Obrigatório
|
Uma lista de vinculações de porta de saída. |
params
Obrigatório
|
Um dicionário de pares nome-valor registrados como variáveis de ambiente com "AML_PARAMETER_". |
source_directory
Obrigatório
|
Uma pasta que contém script R, conda env e outros recursos usados na etapa. |
use_gpu
Obrigatório
|
Indica se o ambiente para executar o experimento deve dar suporte a GPUs.
Se True, uma imagem padrão do Docker baseada em GPU será usada no ambiente. Se False, uma imagem baseada em CPU será usada. As imagens do Docker padrão (CPU ou GPU) serão usadas somente se um usuário não definir os parâmetros |
custom_docker_image
Obrigatório
|
O nome da imagem do Docker a partir da qual a imagem a ser usada para treinamento será criada. Se não for definido, uma imagem padrão baseada em CPU será usada como imagem base. Isso foi preterido e será removido em uma versão futura. Em vez disso, use base_image no DockerSection. |
cran_packages
Obrigatório
|
Pacotes CRAN a serem instalados. Isso foi preterido e será removido em uma versão futura. Em vez disso, use RSection.cran_packages. |
github_packages
Obrigatório
|
Pacotes do GitHub a serem instalados. Isso foi preterido e será removido em uma versão futura. Em vez disso, use RSection.github_packages. |
custom_url_packages
Obrigatório
|
Pacotes a serem instalados a partir do local, diretório ou URL personalizada. Isso foi preterido e será removido em uma versão futura. Em vez disso, use RSection.custom_url_packages. |
allow_reuse
Obrigatório
|
Indica se a etapa deve ou não reutilizar os resultados anteriores quando executada novamente com as mesmas configurações. A reutilização está habilitada por padrão. Se o conteúdo da etapa (scripts/dependências), as entradas e os parâmetros permanecerem inalterados, será reutilizada a saída da execução anterior dessa etapa. Ao reutilizar a etapa, em vez de enviar o trabalho para computação, os resultados da execução anterior serão disponibilizados imediatamente para etapas posteriores. Se você usar conjuntos de dados do Azure Machine Learning como entradas, a reutilização será determinada dependendo de ter havido ou não alteração da definição do conjunto de dados, não de ter havido alteração dos dados subjacentes. |
version
Obrigatório
|
Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa. |
Comentários
Um RScriptStep é uma etapa básica e integrada para executar o script R em um destino de computação. Ele usa um nome de script e outros parâmetros opcionais, tais como argumentos para o script, destino de computação, entradas e saídas. Você deverá usar um RunConfiguration para especificar os requisitos do RScriptStep, como imagem do Docker personalizada, pacotes cran/github necessários.
A melhor prática para trabalhar com RScriptStep é usar uma pasta separada para scripts e todos os arquivos dependentes associados à etapa e especificar essa pasta com o parâmetro source_directory
.
Seguir essa melhor prática oferece dois benefícios. Primeiro, ajuda a reduzir o tamanho do instantâneo criado para a etapa porque o instantâneo captura apenas o que é necessário nessa etapa. Segundo, a saída da etapa de uma execução anterior pode ser reutilizada caso não haja alterações no source_directory
que disparariam um novo carregamento do instantâneo.
O exemplo de código a seguir mostra como usar um RScriptStep em um cenário de treinamento de aprendizado de máquina.
from azureml.core.runconfig import RunConfiguration
from azureml.core.environment import Environment, RSection, RCranPackage
from azureml.pipeline.steps import RScriptStep
rc = RunConfiguration()
rc.framework='R'
rc.environment.r = RSection() # R details with required packages
rc.environment.docker.enabled = True # to enable docker image
rc.environment.docker.base_image = '<custom user image>' # to use custom image
cran_package1 = RCranPackage()
cran_package1.name = "ggplot2"
cran_package1.repository = "www.customurl.com"
cran_package1.version = "2.1"
rc.environment.r.cran_packages = [cran_package1]
trainStep = RScriptStep(script_name="train.R",
arguments=["--input", blob_input_data, "--output", output_data1],
inputs=[blob_input_data],
outputs=[output_data1],
compute_target=compute_target,
use_gpu=False,
runconfig=rc,
source_directory=project_folder)
Confira https://aka.ms/pl-first-pipeline para obter mais detalhes sobre como criar pipelines em geral. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection para obter mais detalhes sobre o RSection.
Métodos
create_node |
Cria um nó para RScriptStep e adiciona ao grafo especificado. PRETERIDO. Em vez disso, use CommandStep. Para obter um exemplo, consulte Como executar scripts R em pipelines com CommandStep. Esse método não deve ser usado diretamente. Quando um pipeline é instanciado com essa etapa, o Azure ML passa automaticamente os parâmetros necessários por meio desse método para que essa etapa possa ser adicionada a um grafo de pipeline que representa o fluxo de trabalho. |
create_node
Cria um nó para RScriptStep e adiciona ao grafo especificado.
PRETERIDO. Em vez disso, use CommandStep. Para obter um exemplo, consulte Como executar scripts R em pipelines com CommandStep.
Esse método não deve ser usado diretamente. Quando um pipeline é instanciado com essa etapa, o Azure ML passa automaticamente os parâmetros necessários por meio desse método para que essa etapa possa ser adicionada a um grafo de pipeline que representa o fluxo de trabalho.
create_node(graph, default_datastore, context)
Parâmetros
Nome | Description |
---|---|
graph
Obrigatório
|
O objeto de grafo ao qual adicionar o nó. |
default_datastore
Obrigatório
|
O armazenamento de dados padrão. |
context
Obrigatório
|
<xref:azureml.pipeline.core._GraphContext>
O contexto do grafo. |
Retornos
Tipo | Description |
---|---|
O nó criado. |