Amazon MLS-C01: Treinamento, Treinamento Distribuído e Otimização de Hiperparâmetros — Guia de estudos

Faz parte do AWS Machine Learning Specialty MLS-C01 — Guia de estudos. Pratique com respostas verificadas no centro de exames da Amazon, ou faça testes cronometrados no ExamRoll.io.

Jobs de treinamento, contêineres e transições para o treinamento na nuvem com o mínimo de código

Ao mover cargas de trabalho de treinamento para o SageMaker, o principal objetivo de design é evitar reescrever o código do modelo, garantindo que o runtime do contêiner exponha as variáveis de ambiente e os caminhos de canal esperados do SageMaker. Use o Modo Script (Script Mode) do SageMaker com o Estimator específico do framework (PyTorch, TensorFlow, XGBoost) para que o mesmo script de treinamento seja executado localmente e na nuvem com o mínimo de alterações: leia dados de

undefined

, escreva o modelo em

undefined

e respeite

undefined

/

undefined

/

undefined

. Para ambientes personalizados, construa uma imagem Docker que estenda os AWS Deep Learning Containers oficiais (ou o kit de ferramentas de treinamento do SageMaker) e a envie para o Amazon ECR; garanta que o ponto de entrada (entry point) do contêiner honre o contrato de treinamento do SageMaker. Selecione os tipos de instância com base no perfil de computação: jobs limitados por CPU (CPU-bound) nas famílias ml.c5/m5, treinamento com GPU em instâncias ml.p3, ml.p4d, g4dn ou g5; escolha o tamanho da instância com base na memória e na proporção GPU-para-CPU. Armadilhas comuns incluem caminhos de arquivo locais fixos no código (hard-coded), assumir um único host (o que falha em jobs distribuídos) e não declarar o modo de entrada de treinamento (Pipe vs File), o que afeta o desempenho de E/S. Para reprodutibilidade e previsibilidade de custos, habilite o treinamento spot gerenciado somente após adicionar um checkpointing robusto e definir

undefined

undefined

para permitir interrupções Spot.

Padrões de treinamento distribuído, modos de entrada de dados e opções de armazenamento

O treinamento distribuído de deep learning exige o balanceamento entre paralelismo de modelo, paralelismo de dados e arquitetura de E/S. Para treinamento em host único com múltiplas GPUs e em múltiplos hosts, use as primitivas nativas dos frameworks —

undefined

ou a

undefined

do TensorFlow — ou aproveite as bibliotecas

undefined

do SageMaker:

undefined

para escalonamento com paralelismo de dados e

undefined

ou

undefined

para modelos transformer muito grandes. Use o S3 como o armazenamento canônico para grandes datasets, mas evite fazer muitas chamadas GET pequenas ao S3: consolide os arquivos em um número menor de arquivos compactados, use arquivos particionados (sharded) no formato RecordIO/TFRecord ou anexe um sistema de arquivos POSIX. Escolha o modo

undefined

para transmitir dados de treinamento diretamente do S3 para datasets grandes, a fim de reduzir o uso de disco local e o tempo de inicialização; use o modo

undefined

quando o treinamento exigir acesso aleatório ou quando você precisar do dataset completo em um volume EBS. Para alta taxa de transferência (throughput) e semântica POSIX em múltiplas instâncias, monte o Amazon FSx for Lustre ou o Amazon EFS; o FSx é melhor para leituras paralelas de alto desempenho. Erros comuns incluem não particionar os dados entre os hosts (causando duplicatas), superestimar a taxa de transferência do S3 por instância e ignorar as regras de escalonamento de tamanho de lote (batch-size) e taxa de aprendizado (learning-rate) ao aumentar o paralelismo.

Treinamento Spot, checkpointing e estratégias de otimização de custos

O treinamento Spot gerenciado pode reduzir drasticamente o custo se o design do seu treinamento tolerar interrupções. Configure o treinamento spot gerenciado através do Estimator do SageMaker (

undefined

), além do checkpointing: forneça um

undefined

persistente e um

undefined

local, e salve checkpoints com frequência suficiente para limitar o tempo de retrabalho. Defina

undefined

significativamente acima de

undefined

para que o job possa tentar novamente em instâncias interrompidas dentro da janela spot. Para os frameworks, implemente escritas de checkpoint atômicas e uma lógica de retomada robusta que inspecione o checkpoint mais recente no S3, restaure o estado do otimizador e do agendador (scheduler) e, em seguida, continue o treinamento. A frequência de checkpoint deve equilibrar a sobrecarga de escrita (overhead) e o potencial de computação desperdiçada; para épocas longas ou modelos muito grandes, faça checkpoint no meio da época usando snapshots de acumulação de gradiente ou salvamentos baseados em passos (steps). As armadilhas de custo incluem esquecer de persistir os checkpoints no S3 (o que causa um reinício completo na interrupção), depender do armazenamento de instância efêmero e definir

undefined

igual a

undefined

, o que impede novas tentativas. Combine o treinamento spot com precisão mista (AMP) para economias adicionais de computação e com payloads de checkpoint menores (salvando apenas pesos + otimizador) para reduzir os custos de escrita no S3 e a latência de retomada.

Otimização de hiperparâmetros, estratégias de ajuste e critérios práticos de decisão

Uma HPO eficaz combina estratégia de busca, alocação de recursos e parada antecipada (early-stopping). O HyperparameterTuner do SageMaker suporta buscas Random (Aleatória) e Bayesian (Bayesiana), com intervalos configuráveis de ContinuousParameter, IntegerParameter e CategoricalParameter; para espaços de busca grandes, comece com a busca aleatória para uma exploração ampla e, em seguida, execute a otimização Bayesiana para explorar regiões promissoras. Use métodos de parada antecipada como o Hyperband ou a parada antecipada nativa do SageMaker para economizar orçamento, e use o ajuste com warm-start (partida a quente) para reutilizar resultados entre experimentos relacionados. Escolha as métricas de objetivo com cuidado (AUC de validação para tarefas com desbalanceamento, F1 para detecção de fraude com classes desbalanceadas, métricas personalizadas ponderadas por custo para cenários de ruptura de estoque). Erros comuns incluem intervalos excessivamente amplos que causam muitos jobs com falha, usar codificação categórica para hiperparâmetros que são essencialmente contínuos e não escalar a HPO de forma consciente dos recursos: jobs de sondagem curtos em instâncias menores para encontrar regiões gerais, seguidos por execuções mais longas em instâncias de GPU de tamanho completo. Para treinamento distribuído, ajuste tanto os hiperparâmetros algorítmicos (taxa de aprendizado, tamanho do lote) quanto os parâmetros de nível de sistema (passos de acumulação de gradiente, número de fragmentos de dados). Instrumente com o SageMaker Debugger e use as métricas do CloudWatch para detectar medições ruidosas; quando houver alta variância, aumente as repetições por configuração ou use uma seleção baseada na mediana.

Problema Prático: Cenário de Caso de Uso

Cenário: A FinRetailer executa milhares de previsões de demanda de 30 dias por SKU no SageMaker; eles armazenam anos de arquivos CSV diários no S3 e exigem alta acurácia em itens de cauda longa (tail-demand), mantendo uma latência de inferência aceitável em jobs de pontuação em lote.

Desafio: Prever milhares de séries temporais com históricos longos e importância desbalanceada (rupturas de estoque custam mais do que excesso de estoque), minimizando o custo computacional e preservando a acurácia em eventos raros de alta demanda.

Abordagem Recomendada:

  1. Use o algoritmo nativo do SageMaker, DeepAR, ou um modelo temporal personalizado em PyTorch (baseado em Transformer) empacotado em um Estimator no modo Script (Script Mode); armazene os dados de treinamento como arquivos RecordIO/TFRecord fragmentados e use o modo Arquivo (File mode) com o FSx for Lustre para treinamento de alta vazão em múltiplas instâncias.
  2. Comece com treinamento distribuído em instâncias menores (smddp ou Horovod) para ajustar a arquitetura do modelo e os hiperparâmetros, usando o HyperparameterTuner com busca Bayesiana e parada antecipada; defina o objetivo como uma perda de quantil ponderada (weighted quantile loss) que penalize mais fortemente a subprevisão.
  3. Habilite o treinamento spot gerenciado com

undefined

e checkpoints frequentes baseados em passos; defina

undefined

undefined

para tolerar interrupções e retomar a partir do checkpoint mais recente no S3. 4. Para inferência em produção, realize a pontuação em lote (batch-score) usando endpoints de múltiplos modelos ou jobs de transformação em lote assíncronos em instâncias otimizadas para computação; aplique regras de negócio de pós-processamento e um limiar calibrado que leve em conta os custos de ruptura de estoque.

Justificativa: O uso de arquiteturas DeepAR/transformer lida com muitas séries temporais de forma eficiente; formatos binários fragmentados e o FSx reduzem os gargalos de E/S (I/O) para o treinamento distribuído, a HPO Bayesiana com um objetivo personalizado foca as buscas em métricas de custo operacional, e o treinamento spot com checkpointing reduz o custo sem sacrificar o progresso.


Séries Temporais e Previsão · Todos os domínios · Implantação

Pratique estas questões → · Prática cronometrada no ExamRoll.io →

Pass the whole exam — not just this question

You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.

Passe no seu exame →

Navegar Amazon →

Related guides

Acesso completo

Uma assinatura. Todos os exames.

Todo plano desbloqueia pesquisa ilimitada de respostas, testes práticos, explicações de AI e a biblioteca completa de recursos — em mais de 20 idiomas.

Mensal
24.87
Just €0.83/day
Tudo incluído:
  • Pesquisa ilimitada de respostas
  • Testes práticos ilimitados
  • Explicações com AI
  • Biblioteca completa de recursos
  • Mais de 20 idiomas
  • Atualizações semanais de conteúdo
  • Recompensas e indicações
  • Suporte prioritário
Iniciar teste grátis

*Não é necessário cartão de crédito

Melhor custo-benefício
12 meses
179.87
Just €0.49/daySave 40%
Tudo incluído:
  • Pesquisa ilimitada de respostas
  • Testes práticos ilimitados
  • Explicações com AI
  • Biblioteca completa de recursos
  • Mais de 20 idiomas
  • Atualizações semanais de conteúdo
  • Recompensas e indicações
  • Suporte prioritário
Iniciar teste grátis

*Não é necessário cartão de crédito

✓ Plano gratuito incluído · ✓ Cancele a qualquer momento · ✓ Todos os planos desbloqueiam o produto completo