View a markdown version of this page

Criação de pipelines de ML prontos para produção na AWS - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Criação de pipelines de ML prontos para produção na AWS

Josiah Davis, Verdi March, Yin Song, Baichuan Sun, Chen Wu e Wei Yih Yap, da Amazon Web Services (AWS)

Janeiro de 2021 (histórico do documento)

Os projetos de machine learning (ML) exigem um esforço significativo em vários estágios que inclui modelagem, implantação e produção para agregar valor comercial e resolver problemas do mundo real. Várias alternativas e opções de personalização estão disponíveis em cada etapa, o que torna cada vez mais difícil preparar um modelo de ML para produção dentro das restrições de seus recursos e orçamento. Nos últimos anos na Amazon Web Services (AWS), nossa equipe de Ciência de Dados trabalhou com diferentes setores da indústria em iniciativas de ML. Identificamos pontos problemáticos compartilhados por muitos clientes da AWS, com origem tanto em problemas organizacionais quanto em desafios técnicos, e desenvolvemos uma abordagem ideal para fornecer soluções de ML prontas para produção.

Este guia destina-se a cientistas de dados e engenheiros de ML envolvidos na implantação de pipelines de ML. Ele descreve nossa abordagem para o fornecimento de pipelines de ML prontos para produção. O guia discute como você pode fazer a transição da execução interativa de modelos de ML (durante o desenvolvimento) para sua implantação como parte de um pipeline (durante a produção) para seu caso de uso de ML. Para isso, também desenvolvemos um conjunto de modelos de exemplo (veja o projeto do projeto ML Max), para acelerar a entrega de soluções personalizadas de ML para produção, de modo que você possa começar a usar rapidamente sem precisar fazer muitas escolhas de design.

Visão geral

O processo de criação de um pipeline de ML pronto para produção consiste nas seguintes etapas:

  • Etapa 1. Execute a EDA e desenvolva o modelo inicial — Cientistas de dados disponibilizam dados brutos no Amazon Simple Storage Service (Amazon S3), realizam análise exploratória de dados (EDA), desenvolvem o modelo de ML inicial e avaliam sua performance de inferência. Você pode realizar essas atividades de forma interativa por meio dos cadernos Jupyter.

  • Etapa 2. Crie os scripts de runtime: você integra o modelo aos scripts Python em runtime para que ele possa ser gerenciado e provisionado por um framework de ML (no nosso caso, o Amazon SageMaker AI). Esse é o primeiro passo para passar do desenvolvimento interativo de um modelo independente para a produção. Especificamente, você define separadamente a lógica para pré-processamento, avaliação, treinamento e inferência.

  • Etapa 3. Defina o pipeline — Você define os espaços reservados de entrada e saída para cada etapa do pipeline. Valores concretos para eles serão fornecidos mais tarde, durante o runtime (etapa 5). Você se concentra em pipelines para treinamento, inferência, validação cruzada e backtesting.

  • Etapa 4. Crie o pipeline — Você cria a infraestrutura subjacente, incluindo a instância da máquina de AWS Step Functions estado de forma automatizada (aproximadamente um clique), usando AWS CloudFormation.

  • Etapa 5. Execute o pipeline — Você executa o pipeline definido na etapa 4. Você também prepara metadados e dados ou localizações de dados para preencher valores concretos para os espaços reservados de entrada/saída que você definiu na etapa 3. Isso inclui os scripts de runtime definidos na etapa 2, bem como os hiperparâmetros do modelo.

  • Etapa 6. Expanda o pipeline — Você implementa processos de integração contínua e implantação contínua (continuous integration/continuous deployment, CI/CD), reciclagem automatizada, inferência programada e extensões similares do pipeline.

O diagrama a seguir ilustra as principais etapas desse processo.

Processo para criar um pipeline de ML pronto para produção