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._PythonScriptStepBase
RScriptStep

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

script_name
str
Obrigatório

[Obrigatório] O nome de um script R relativo a source_directory.

name
str
Obrigatório

O nome da etapa. Se não for especificado, script_name será usado.

arguments
list
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 arguments em RunConfiguration. Para obter mais detalhes sobre como tratar argumentos como símbolos especiais, consulte RunConfiguration.

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
Obrigatório

[Obrigatório] O destino de computação a ser usado. Quando não é especificado, o destino de runconfig é usado. Esse parâmetro pode ser especificado como um objeto de destino de computação ou o nome de cadeia de caracteres de um destino de computação no workspace. Se o destino de computação não está disponível no momento da criação do pipeline, é possível especificar uma tupla de ("nome de destino de computação" e "tipo de destino de computação") para evitar o fetch do objeto de destino de computação (o tipo AmlCompute é "AmlCompute", e o tipo RemoteCompute é "VirtualMachine").

runconfig
RunConfiguration
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
dict[str, PipelineParameter]
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'

outputs
list[Union[PipelineData, OutputDatasetConfig, PipelineOutputAbstractDataset, OutputPortBinding]]
Obrigatório

Uma lista de vinculações de porta de saída.

params
dict
Obrigatório

Um dicionário de pares nome-valor registrados como variáveis de ambiente com "AML_PARAMETER_".

source_directory
str
Obrigatório

Uma pasta que contém script R, conda env e outros recursos usados na etapa.

use_gpu
bool
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 base_image e base_dockerfile. Essa configuração é usada apenas em destinos de computação habilitados para Docker. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obter mais detalhes sobre base_image.

custom_docker_image
str
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
list
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
list
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
list
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
bool
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
str
Obrigatório

Uma marca de versão opcional para denotar uma alteração na funcionalidade da etapa.

script_name
str
Obrigatório

[Obrigatório] O nome de um script R relativo a source_directory.

name
str
Obrigatório

O nome da etapa. Se não for especificado, script_name será usado.

arguments
list
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 arguments em RunConfiguration. Para obter mais detalhes sobre como tratar argumentos como símbolos especiais, consulte RunConfiguration.

compute_target
Union[DsvmCompute, AmlCompute, RemoteCompute, HDInsightCompute, str, tuple]
Obrigatório

[Obrigatório] O destino de computação a ser usado. Se não for especificado, o destino do runconfig será usado. Esse parâmetro pode ser especificado como um objeto de destino de computação ou o nome de cadeia de caracteres de um destino de computação no workspace. Se o destino de computação não está disponível no momento da criação do pipeline, é possível especificar uma tupla de ("nome de destino de computação" e "tipo de destino de computação") para evitar o fetch do objeto de destino de computação (o tipo AmlCompute é "AmlCompute", e o tipo RemoteCompute é "VirtualMachine").

runconfig
RunConfiguration
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
dict[str, PipelineParameter]
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'

outputs
list[Union[PipelineData, PipelineOutputAbstractDataset, OutputPortBinding]]
Obrigatório

Uma lista de vinculações de porta de saída.

params
dict
Obrigatório

Um dicionário de pares nome-valor registrados como variáveis de ambiente com "AML_PARAMETER_".

source_directory
str
Obrigatório

Uma pasta que contém script R, conda env e outros recursos usados na etapa.

use_gpu
bool
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 base_image e base_dockerfile. Essa configuração é usada apenas em destinos de computação habilitados para Docker. Consulte https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obter mais detalhes sobre base_image.

custom_docker_image
str
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
list
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
list
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
list
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
bool
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
str
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

graph
Graph
Obrigatório

O objeto de grafo ao qual adicionar o nó.

default_datastore
Union[AbstractAzureStorageDatastore, AzureDataLakeDatastore]
Obrigatório

O armazenamento de dados padrão.

context
<xref:azureml.pipeline.core._GraphContext>
Obrigatório

O contexto do grafo.

Retornos

O nó criado.

Tipo de retorno