O que são pipelines de ML no serviço Azure Machine Learning?What are ML pipelines in Azure Machine Learning service?

Saiba mais sobre os pipelines do Machine Learning que você pode criar e gerenciar com o serviço Azure Machine Learning.Learn how about the machine learning pipelines you can build and manage with Azure Machine Learning service.

Utilizar pipelines (ML) de aprendizado de máquina, cientistas de dados, engenheiros de dados e os profissionais de TI pode colaborar nas etapas envolvidas na:Using machine learning (ML) pipelines, data scientists, data engineers, and IT professionals can collaborate on the steps involved in:

  • Preparação de dados, como normalizations e transformaçõesData preparation, such as normalizations and transformations
  • Preparação de modelosModel training
  • Avaliação do modeloModel evaluation
  • ImplementaçãoDeployment

Saiba como criar seu primeiro pipeline.Learn how to create your first pipeline.

Pipelines do Machine Learning no serviço Azure Machine Learning

Qual tecnologia de pipeline do Azure devo usar?Which Azure pipeline technology should I use?

A nuvem do Azure fornece vários outros pipelines, cada um com uma finalidade diferente.The Azure cloud provides several other pipelines, each with a different purpose. A tabela a seguir lista os pipelines diferentes e para que eles são usados:The following table lists the different pipelines and what they are used for:

PipelinePipeline O que fazWhat it does Pipe canônicoCanonical pipe
Pipelines de Azure Machine LearningAzure Machine Learning pipelines Define fluxos de trabalho de aprendizado de máquina reutilizáveis que podem ser usados como um modelo para seus cenários de aprendizado de máquina.Defines reusable machine learning workflows that can be used as a template for your machine learning scenarios. Modelo de > de dadosData -> model
Pipelines do Azure Data FactoryAzure Data Factory pipelines Agrupa as atividades de movimentação de dados, transformação e controle necessárias para executar uma tarefa.Groups data movement, transformation, and control activities needed to perform a task. Dados > dadosData -> data
Pipelines do AzureAzure pipelines Integração e entrega contínuas de seu aplicativo para qualquer plataforma/qualquer nuvemContinuous integration and delivery of your application to any platform/any cloud Aplicativo/serviço de > de códigoCode -> app/service

Porquê criar pipelines com o Azure Machine Learning?Why build pipelines with Azure Machine Learning?

Os pipelines do Machine Learning otimizam seu fluxo de trabalho com velocidade, portabilidade e reutilização para que você possa se concentrar em sua experiência, aprendizado de máquina, em vez de infraestrutura e automação.Machine learning pipelines optimize your workflow with speed, portability, and reuse so you can focus on your expertise, machine learning, rather than on infrastructure and automation.

Os pipelines são construídos a partir de várias etapas, que são unidades computacionais distintas no pipeline.Pipelines are constructed from multiple steps, which are distinct computational units in the pipeline. Cada etapa pode ser executada de forma independente e usar recursos de computação isolados.Each step can run independently and use isolated compute resources. Isso permite que vários cientistas de dados funcionem no mesmo pipeline ao mesmo tempo sem sobrecarregar recursos de computação, além de facilitar o uso de diferentes tipos/tamanhos de computação para cada etapa.This allows multiple data scientists to work on the same pipeline at the same time without over-taxing compute resources, and also makes it easy to use different compute types/sizes for each step.

Depois que o pipeline é criado, geralmente há um ajuste mais fino em relação ao loop de treinamento do pipeline.After the pipeline is designed, there is often more fine-tuning around the training loop of the pipeline. Quando você executa novamente um pipeline, a execução salta para as etapas distintas que precisam ser executadas novamente, como um script de treinamento atualizado e ignora o que não foi alterado.When you rerun a pipeline, the run jumps to the distinct steps that need to be rerun, such as an updated training script, and skips what hasn't changed. O paradigma do mesmo se aplica a inalterado scripts utilizados para a execução do passo.The same paradigm applies to unchanged scripts used for the execution of the step. Essa funcionalidade ajuda a evitar a execução de etapas dispendiosas e demoradas, como a ingestão de dados e a transformação se os dados subjacentes não forem alterados.This functionality helps to avoid running costly and time-intensive steps like data ingestion and transformation if the underlying data hasn't changed.

Com o Azure Machine Learning, você pode usar vários kits de instruções e estruturas, como PyTorch ou TensorFlow, para cada etapa em seu pipeline.With Azure Machine Learning, you can use various toolkits and frameworks, such as PyTorch or TensorFlow, for each step in your pipeline. As coordenadas do Azure entre os vários destinos de computação que você usa, para que os dados intermediários possam ser compartilhados com facilidade com os destinos de computação downstream.Azure coordinates between the various compute targets you use, so that your intermediate data can be shared with the downstream compute targets easily.

Pode controlar as métricas para suas experimentações do pipeline diretamente no portal do Azure.You can track the metrics for your pipeline experiments directly in the Azure portal. Depois que um pipeline tiver sido publicado, você poderá configurar um ponto de extremidade REST que permite executar novamente o pipeline de qualquer plataforma ou pilha.After a pipeline has been published, you can configure a REST endpoint which allows you to rerun the pipeline from any platform or stack.

Principais vantagensKey advantages

As principais vantagens de usar pipelines para seus fluxos de trabalho de aprendizado de máquina são:The key advantages of using pipelines for your machine learning workflows are:

Principais vantagensKey advantage DescriçãoDescription
Autónoma é executadoUnattended runs Agende as etapas para execução em paralelo ou em sequência de maneira confiável e autônoma.Schedule steps to run in parallel or in sequence in a reliable and unattended manner. A preparação e a modelagem de dados podem durar dias ou semanas, e os pipelines permitem que você se concentre em outras tarefas enquanto o processo está em execução.Data preparation and modeling can last days or weeks, and pipelines allow you to focus on other tasks while the process is running.
Computação heterogêneaHeterogenous compute Use vários pipelines que são coordenados de forma confiável entre os recursos de computação heterogêneos e escalonáveis e os locais de armazenamento.Use multiple pipelines that are reliably coordinated across heterogeneous and scalable compute resources and storage locations. Execute etapas de pipeline individuais em destinos de computação diferentes, como HDInsight, VMs de ciência de dados de GPU e databricks.Run individual pipeline steps on different compute targets, such as HDInsight, GPU Data Science VMs, and Databricks. Isso faz uso eficiente das opções de computação disponíveis.This makes efficient use of available compute options.
Capacidade de reutilizaçãoReusability Crie modelos de pipeline para cenários específicos, como retreinamento e pontuação de lote.Create pipeline templates for specific scenarios, such as retraining and batch-scoring. Disparar pipelines publicados de sistemas externos por meio de chamadas REST simples.Trigger published pipelines from external systems via simple REST calls.
Controlo de versões e controloTracking and versioning Em vez de controlar manualmente os dados e os caminhos de resultados à medida que você itera, use o SDK de pipelines para nomear e controlar explicitamente suas fontes de dados, entradas e saídas.Instead of manually tracking data and result paths as you iterate, use the pipelines SDK to explicitly name and version your data sources, inputs, and outputs. Você também pode gerenciar scripts e dados separadamente para aumentar a produtividade.You can also manage scripts and data separately for increased productivity.
ColaboraçãoCollaboration Os pipelines permitem que os cientistas de dados colaborem em todas as áreas do processo de design do Machine Learning, ao mesmo tempo em que podem trabalhar simultaneamente em etapas de pipeline.Pipelines allow data scientists to collaborate across all areas of the machine learning design process, while being able to concurrently work on pipeline steps.

O SDK de Python para pipelinesThe Python SDK for pipelines

Use o SDK do Python para criar seus pipelines de ml em seus notebooks JUPYTER ou IDE preferenciais.Use Python SDK to create your ML pipelines in your preferred IDE or Jupyter notebooks. O SDK do Azure Machine Learning oferece construções imperativas para sequenciar e paralelização os passos em seus pipelines quando nenhuma dependência de dados está presente.The Azure Machine Learning SDK offers imperative constructs for sequencing and parallelizing the steps in your pipelines when no data dependency is present.

Através de dependências de dados declarativa, pode otimizar as suas tarefas.Using declarative data dependencies, you can optimize your tasks. O SDK inclui uma estrutura de módulos pré-criados para tarefas comuns, como transferência de dados e publicação de modelo.The SDK includes a framework of pre-built modules for common tasks, such as data transfer and model publishing. Você pode estender a estrutura para modelar suas próprias convenções implementando etapas personalizadas reutilizáveis entre pipelines.You can extend the framework to model your own conventions by implementing custom steps reusable across pipelines. Você também pode gerenciar destinos de computação e recursos de armazenamento diretamente do SDK.You can also manage compute targets and storage resources directly from the SDK.

Salve seus pipelines como modelos e implante-os em um ponto de extremidade REST para trabalhos de readaptação ou de classificação de lote.Save your pipelines as templates, and deploy them to a REST endpoint for batch-scoring or retraining jobs.

Há dois pacotes do Python para pipelines com Azure Machine Learning: azureml-pipelines-Core e azureml-pipeline-Steps.There are two Python packages for pipelines with Azure Machine Learning: azureml-pipelines-core and azureml-pipeline-steps.

Passos SeguintesNext steps