Estúdio Amazon SageMaker fornece uma solução totalmente gerenciada para que os cientistas de dados criem, treinem e implantem modelos de machine learning (ML) de forma interativa. Além da experiência interativa de ML, os trabalhadores de dados também buscam soluções para executar notebooks como trabalhos efêmeros sem a necessidade de refatorar o código como módulos Python ou aprender ferramentas DevOps e práticas recomendadas para automatizar sua infraestrutura de implantação. Alguns casos de uso comuns para fazer isso incluem:
- Inferência de modelo em execução regular para gerar relatórios
- Escalar uma etapa de engenharia de recursos após ter testado no Studio em um subconjunto de dados em uma instância pequena
- Retreinar e implantar modelos em alguma cadência
- Analisando a sua equipe Amazon Sage Maker uso em uma cadência regular
Anteriormente, quando os cientistas de dados queriam pegar o código que construíam interativamente em notebooks e executá-los como trabalhos em lote, eles enfrentavam uma curva de aprendizado acentuada usando Pipelines Amazon SageMaker, AWS Lambda, Amazon Event Bridgeou outras soluções que são difíceis de configurar, usar e gerenciar.
Com o Tarefas do notebook SageMaker, agora você pode executar seus notebooks como estão ou de maneira parametrizada com apenas alguns cliques simples no SageMaker Studio ou Laboratório SageMaker Studio interface. Você pode executar esses notebooks em um agendamento ou imediatamente. Não há necessidade de o usuário final modificar seu código de notebook existente. Quando o trabalho estiver concluído, você poderá visualizar as células preenchidas do bloco de anotações, incluindo quaisquer visualizações!
Nesta postagem, compartilhamos como operacionalizar seus notebooks do SageMaker Studio como trabalhos de notebook agendados.
Visão geral da solução
O diagrama a seguir ilustra nossa arquitetura de solução. Utilizamos a extensão SageMaker pré-instalada para executar notebooks como um trabalho imediatamente ou em um cronograma.
Nas seções a seguir, percorremos as etapas para criar um notebook, parametrizar células, personalizar opções adicionais e agendar seu trabalho. Também incluímos um exemplo de caso de uso.
Pré-requisitos
Para usar trabalhos de notebook do SageMaker, você precisa executar um aplicativo JupyterLab 3 JupyterServer no Studio. Para obter mais informações sobre como atualizar para o JupyterLab 3, consulte Visualize e atualize a versão do JupyterLab de um aplicativo no console. Certifique-se de Desligue e atualize o SageMaker Studio para obter as atualizações mais recentes.
Para definir as definições de trabalho que executam notebooks em um agendamento, pode ser necessário adicionar permissões adicionais à sua função de execução do SageMaker.
Primeiro, adicione uma relação de confiança à função de execução do SageMaker que permita events.amazonaws.com
para assumir o seu papel:
Além disso, pode ser necessário criar e anexar uma política em linha à sua função de execução. A política abaixo é complementar à muito permissiva AmazonSageMakerFullAccess
política. Para obter um conjunto completo e mínimo de permissões, consulte Instalar políticas e permissões.
Criar um trabalho de bloco de anotações
Para operacionalizar seu notebook como um trabalho de notebook do SageMaker, escolha o Criar um trabalho de bloco de anotações ícone.
Como alternativa, você pode escolher (clique com o botão direito do mouse) seu notebook no sistema de arquivos e escolher Criar trabalho de bloco de anotações.
No Criar emprego seção, basta escolher o tipo de instância certo para seu trabalho agendado com base em sua carga de trabalho: instâncias padrão, instâncias de computação otimizada ou instâncias de computação acelerada que contêm GPUs. Você pode escolher qualquer uma das instâncias disponíveis para trabalhos de treinamento do SageMaker. Para obter a lista completa de instâncias disponíveis, consulte Preços do Amazon SageMaker.
Quando um trabalho é concluído, você pode visualizar o arquivo de notebook de saída com suas células preenchidas, bem como os logs subjacentes das execuções do trabalho.
Parametrizar células
Ao mover um notebook para um fluxo de trabalho de produção, é importante poder reutilizar o mesmo notebook com diferentes conjuntos de parâmetros para modularidade. Por exemplo, você pode querer parametrizar a localização do conjunto de dados ou os hiperparâmetros do seu modelo para que possa reutilizar o mesmo notebook para muitos treinamentos de modelo distintos. Os trabalhos de bloco de anotações do SageMaker oferecem suporte a isso por meio de tags de célula. Basta escolher o ícone de engrenagem dupla no painel direito e escolher Adicionar etiqueta. Em seguida, rotule a tag como parâmetros.
Por padrão, a execução do trabalho do notebook usa os valores de parâmetro especificados no notebook, mas, como alternativa, você pode modificá-los como uma configuração para o trabalho do notebook.
Configurar opções adicionais
Ao criar um trabalho de notebook, você pode expandir o Opções adicionais seção para personalizar sua definição de trabalho. O Studio detectará automaticamente a imagem ou o kernel que você está usando em seu notebook e o pré-selecionará para você. Assegure-se de ter validado esta seleção.
Você também pode especificar variáveis de ambiente ou scripts de inicialização para personalizar seu ambiente de execução de notebook. Para obter a lista completa de configurações, consulte Opções adicionais.
Agende seu trabalho
Para agendar seu trabalho, escolha Executar em um cronograma e defina um intervalo e tempo apropriados. Então você pode escolher o Trabalhos de Notebook guia que fica visível depois de escolher o ícone inicial. Depois que o notebook for carregado, escolha o Definições de Tarefas do Notebook guia para pausar ou remover sua programação.
Caso de uso de exemplo
Para nosso exemplo, mostramos um fluxo de trabalho de ML de ponta a ponta que prepara dados de uma fonte de informações básicas, treina um modelo atualizado desse período e, em seguida, executa inferência nos dados mais recentes para gerar insights acionáveis. Na prática, você pode executar um fluxo de trabalho completo de ponta a ponta ou simplesmente operacionalizar uma etapa de seu fluxo de trabalho. Você pode agendar um Cola AWS sessão interativa para preparação diária de dados ou execute um trabalho de inferência em lote que gere resultados gráficos diretamente em seu notebook de saída.
O notebook completo para este exemplo pode ser encontrado em nosso Repositório GitHub de exemplos do SageMaker. O caso de uso supõe que somos uma empresa de telecomunicações que deseja programar um notebook que preveja a provável rotatividade de clientes com base em um modelo treinado com os dados mais recentes disponíveis.
Para começar, reunimos os dados do cliente disponíveis mais recentemente e realizamos algum pré-processamento neles:
Treinamos nosso modelo atualizado nesses dados de treinamento atualizados para fazer previsões precisas sobre todays_data
:
Como vamos agendar este notebook como um relatório diário, queremos capturar o desempenho do nosso modelo atualizado em nosso conjunto de validação para que possamos ter confiança em suas previsões futuras. Os resultados na captura de tela a seguir são de nosso relatório de inferência agendado.
Por fim, você deseja capturar os resultados previstos dos dados de hoje em um banco de dados para que ações possam ser executadas com base nos resultados desse modelo.
Depois que o notebook for entendido, sinta-se à vontade para executá-lo como um trabalho efêmero usando o Corra agora opção descrita anteriormente ou teste a funcionalidade de agendamento.
limpar
Se você seguiu nosso exemplo, certifique-se de pausar ou excluir a programação do trabalho do notebook para evitar cobranças contínuas.
Conclusão
Colocar os notebooks em produção com as tarefas de notebook do SageMaker simplifica muito o trabalho pesado indiferenciado exigido pelos data workers. Esteja você agendando fluxos de trabalho de ML de ponta a ponta ou uma peça do quebra-cabeça, recomendamos que você coloque alguns notebooks em produção usando o SageMaker Studio ou o SageMaker Studio Lab! Para saber mais, consulte Fluxos de trabalho baseados em notebook.
Sobre os autores
Sean Morgan é arquiteto de soluções de ML sênior na AWS. Ele tem experiência nas áreas de semicondutores e pesquisa acadêmica e usa sua experiência para ajudar os clientes a atingirem seus objetivos na AWS. Em seu tempo livre, Sean é um colaborador/mantenedor de código aberto ativo e é o líder do grupo de interesse especial para os complementos do TensorFlow.
Sumedha Swami é gerente de produto principal da Amazon Web Services. Ele lidera a equipe do SageMaker Studio para integrá-lo ao IDE de escolha para fluxos de trabalho interativos de ciência de dados e engenharia de dados. Ele passou os últimos 15 anos criando produtos para consumidores e empresas obcecados pelo cliente usando Machine Learning. Em seu tempo livre, ele gosta de fotografar a incrível geologia do sudoeste americano.
Eduardo Sol é um SDE sênior que trabalha para o SageMaker Studio na Amazon Web Services. Ele está focado na criação de soluções de ML interativas e na simplificação da experiência do cliente para integrar o SageMaker Studio com tecnologias populares em engenharia de dados e ecossistema de ML. Em seu tempo livre, Edward é um grande fã de camping, caminhadas e pesca e gosta de passar o tempo com sua família.
- AI
- arte ai
- gerador de arte ai
- ai robô
- Amazon Sage Maker
- Estúdio Amazon SageMaker
- inteligência artificial
- certificação de inteligência artificial
- inteligência artificial em bancos
- robô de inteligência artificial
- robôs de inteligência artificial
- software de inteligência artificial
- Aprendizado de máquina da AWS
- blockchain
- conferência blockchain ai
- Coingenius
- inteligência artificial conversacional
- conferência de criptografia ai
- dall's
- deep learning
- google ai
- Intermediário (200)
- aprendizado de máquina
- platão
- platão ai
- Inteligência de Dados Platão
- Jogo de Platão
- PlatãoData
- jogo de platô
- escala ai
- sintaxe
- zefirnet