RScriptStep Classe

Nota

Esta é uma classe experimental e pode mudar em qualquer altura. Para obter mais informações, veja https://aka.ms/azuremlexperimental.

Cria um passo do Pipeline do Azure ML que executa o script R.

Crie um passo do Pipeline do Azure ML que execute o script R.

PRETERIDO. Em vez disso, utilize o CommandStep . Para obter um exemplo, veja 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

Name Description
script_name
Necessário
str

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

name
Necessário
str

O nome do passo. Se não for especificado, script_name é utilizado.

arguments
Necessário

Argumentos da linha de comandos para o ficheiro de script R. Os argumentos serão transmitidos à computação através do arguments parâmetro em RunConfiguration. Para obter mais detalhes sobre como lidar com argumentos como símbolos especiais, consulte .RunConfiguration

compute_target
Necessário

[Obrigatório] O destino de computação a utilizar. Se não for especificado, o destino do runconfig é utilizado. Este parâmetro pode ser especificado como um objeto de destino de computação ou o nome da cadeia de carateres de um destino de computação na área de trabalho. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, poderá especificar uma cadeia de identificação de ("nome de destino de computação", "tipo de destino de computação") para evitar obter o objeto de destino de computação (o tipo AmlCompute é "AmlCompute" e o tipo RemoteCompute é "VirtualMachine").

runconfig
Necessário

[Obrigatório] Execute a configuração que encapsula as informações necessárias para submeter uma execução de preparação numa experimentação. Isto é necessário para definir configurações de execução R que podem ser definidas em RSection. A RSection é necessária para este passo.

runconfig_pipeline_params
Necessário

Substituições de propriedades de runconfig no runtime através de pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores suportados: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"

inputs
Necessário

Uma lista de enlaces de portas de entrada.

outputs
Necessário

Uma lista de enlaces de portas de saída.

params
Necessário

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

source_directory
Necessário
str

Uma pasta que contém script R, conda env e outros recursos utilizados no passo.

use_gpu
Necessário

Indica se o ambiente para executar a experimentação deve suportar GPUs. Se For Verdadeiro, será utilizada uma imagem predefinida do Docker baseada em GPU no ambiente. Se For Falso, será utilizada uma imagem baseada na CPU. As imagens do Docker predefinidas (CPU ou GPU) só serão utilizadas se um utilizador não definir parâmetros base_image e base_dockerfile . Esta definição é utilizada apenas em destinos de computação compatíveis com o Docker. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obter mais detalhes sobre base_image.

custom_docker_image
Necessário
str

O nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. Se não for definida, será utilizada uma imagem baseada na CPU predefinida como imagem de base. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize base_image no DockerSection.

cran_packages
Necessário

Pacotes CRAN a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.cran_packages.

github_packages
Necessário

Pacotes do GitHub a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.github_packages.

custom_url_packages
Necessário

Pacotes a instalar a partir de URLs locais, de diretórios ou personalizados. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.custom_url_packages.

allow_reuse
Necessário

Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições. A reutilização está ativada por predefinição. Se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, o resultado da execução anterior deste passo será reutilizado. Ao reutilizar o passo, em vez de submeter a tarefa para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer passos subsequentes. Se utilizar conjuntos de dados do Azure Machine Learning como entradas, a reutilização é determinada se a definição do conjunto de dados foi alterada e não se os dados subjacentes foram alterados.

version
Necessário
str

Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo.

script_name
Necessário
str

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

name
Necessário
str

O nome do passo. Se não for especificado, script_name é utilizado.

arguments
Necessário

Argumentos da linha de comandos para o ficheiro de script R. Os argumentos serão transmitidos à computação através do arguments parâmetro em RunConfiguration. Para obter mais detalhes sobre como lidar com argumentos como símbolos especiais, consulte .RunConfiguration

compute_target
Necessário

[Obrigatório] O destino de computação a utilizar. Se não for especificado, o destino do runconfig será utilizado. Este parâmetro pode ser especificado como um objeto de destino de computação ou o nome da cadeia de carateres de um destino de computação na área de trabalho. Opcionalmente, se o destino de computação não estiver disponível no momento da criação do pipeline, poderá especificar uma cadeia de identificação de ("nome de destino de computação", "tipo de destino de computação") para evitar obter o objeto de destino de computação (o tipo AmlCompute é "AmlCompute" e o tipo RemoteCompute é "VirtualMachine").

runconfig
Necessário

[Obrigatório] Execute a configuração que encapsula as informações necessárias para submeter uma execução de preparação numa experimentação. Isto é necessário para definir configurações de execução R que podem ser definidas em RSection. A RSection é necessária para este passo.

runconfig_pipeline_params
Necessário

Substituições de propriedades de runconfig no runtime através de pares chave-valor cada uma com o nome da propriedade runconfig e PipelineParameter para essa propriedade.

Valores suportados: "NodeCount", "MpiProcessCountPerNode", "TensorflowWorkerCount", "TensorflowParameterServerCount"

inputs
Necessário

Uma lista de enlaces de portas de entrada.

outputs
Necessário

Uma lista de enlaces de portas de saída.

params
Necessário

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

source_directory
Necessário
str

Uma pasta que contém script R, conda env e outros recursos utilizados no passo.

use_gpu
Necessário

Indica se o ambiente para executar a experimentação deve suportar GPUs. Se For Verdadeiro, será utilizada uma imagem predefinida do Docker baseada em GPU no ambiente. Se For Falso, será utilizada uma imagem baseada na CPU. As imagens do Docker predefinidas (CPU ou GPU) só serão utilizadas se um utilizador não definir parâmetros base_image e base_dockerfile . Esta definição é utilizada apenas em destinos de computação compatíveis com o Docker. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.dockersection para obter mais detalhes sobre base_image.

custom_docker_image
Necessário
str

O nome da imagem do Docker a partir da qual será criada a imagem a utilizar para preparação. Se não for definida, será utilizada uma imagem baseada na CPU predefinida como imagem de base. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize base_image no DockerSection.

cran_packages
Necessário

Pacotes CRAN a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.cran_packages.

github_packages
Necessário

Pacotes do GitHub a instalar. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.github_packages.

custom_url_packages
Necessário

Pacotes a instalar a partir de URLs locais, de diretórios ou personalizados. Isto foi preterido e será removido numa versão futura. Em alternativa, utilize RSection.custom_url_packages.

allow_reuse
Necessário

Indica se o passo deve reutilizar os resultados anteriores ao executar novamente com as mesmas definições. A reutilização está ativada por predefinição. Se o conteúdo do passo (scripts/dependências), bem como as entradas e os parâmetros permanecerem inalterados, o resultado da execução anterior deste passo será reutilizado. Ao reutilizar o passo, em vez de submeter a tarefa para computação, os resultados da execução anterior são imediatamente disponibilizados para quaisquer passos subsequentes. Se utilizar conjuntos de dados do Azure Machine Learning como entradas, a reutilização será determinada se a definição do conjunto de dados foi alterada e não se os dados subjacentes foram alterados.

version
Necessário
str

Uma etiqueta de versão opcional para denotar uma alteração na funcionalidade do passo.

Observações

Um RScriptStep é um passo básico incorporado para executar script R num destino de computação. Utiliza o nome do script e outros parâmetros opcionais, como argumentos, o destino de computação, as entradas e as saídas. Deve utilizar um RunConfiguration para especificar os requisitos do RScriptStep, como a imagem personalizada do docker, os pacotes cran/github necessários.

A melhor prática para trabalhar com o RScriptStep é utilizar uma pasta separada para scripts e quaisquer ficheiros dependentes associados ao passo e especificar essa pasta com o source_directory parâmetro. Seguir esta melhor prática tem duas vantagens. Em primeiro lugar, ajuda a reduzir o tamanho do instantâneo criado para o passo porque apenas o que é necessário para o passo é instantâneo. Em segundo lugar, a saída do passo de uma execução anterior pode ser reutilizada se não existirem alterações ao source_directory que acionarão um novo carregamento do instantâneo.

O seguinte exemplo de código mostra como utilizar um RScriptStep num cenário de preparação de machine learning.


   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)

Veja https://aka.ms/pl-first-pipeline para obter mais detalhes sobre a criação de pipelines em geral. Veja https://docs.microsoft.com/en-us/python/api/azureml-core/azureml.core.environment.rsection para obter mais detalhes sobre rSection.

Métodos

create_node

Crie um nó para RScriptStep e adicione-o ao gráfico especificado.

PRETERIDO. Em vez disso, utilize o CommandStep . Para obter um exemplo, veja Como executar scripts R em pipelines com CommandStep.

Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que represente o fluxo de trabalho.

create_node

Crie um nó para RScriptStep e adicione-o ao gráfico especificado.

PRETERIDO. Em vez disso, utilize o CommandStep . Para obter um exemplo, veja Como executar scripts R em pipelines com CommandStep.

Este método não se destina a ser utilizado diretamente. Quando um pipeline é instanciado com este passo, o Azure ML transmite automaticamente os parâmetros necessários através deste método para que esse passo possa ser adicionado a um gráfico de pipeline que represente o fluxo de trabalho.

create_node(graph, default_datastore, context)

Parâmetros

Name Description
graph
Necessário

O objeto de grafo ao que adicionar o nó.

default_datastore
Necessário

O arquivo de dados predefinido.

context
Necessário
<xref:azureml.pipeline.core._GraphContext>

O contexto do gráfico.

Devoluções

Tipo Description

O nó criado.