Referências do Amazon SageMaker Debugger - SageMaker IA da Amazon

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á.

Referências do Amazon SageMaker Debugger

Encontre mais informações e referências sobre o uso do Amazon SageMaker Debugger nos tópicos a seguir.

APIs do Amazon SageMaker Debugger

O Amazon SageMaker Debugger tem operações de API em vários locais, usadas para implementar o monitoramento e a análise de treinamento de modelos.

O Amazon SageMaker Debugger também fornece o SDK Python sagemaker-debugger de código aberto usado para configurar regras incorporadas, definir regras personalizadas e registrar hooks para coletar dados de tensores de saída de trabalhos de treinamento.

O Amazon SageMaker AI Python SDK é um SDK genérico e concentrado em machine learning experimental. O SDK pode ser usado para implantar regras integradas ou personalizadas e definidas com a biblioteca Python SMDebug para monitorar e analisar esses tensores usando estimadores do SageMaker AI.

O Depurador adicionou operações e tipos à API do Amazon SageMaker que permitem que a plataforma use o Depurador ao treinar um modelo e para gerenciar a configuração de entradas e saídas.

As operações de API da configuração de regras usam a funcionalidade de processamento do SageMaker ao analisar o treinamento de modelos. Para obter mais informações sobre os trabalhos de processamento do SageMaker, consulte Workloads de transformação de dados com o SageMaker Processing.

Imagens do Docker para regras do Depurador

O Amazon SageMaker AI oferece dois conjuntos de imagens do Docker para regras: um para avaliar regras fornecidas pelo SageMaker AI (regras integradas) e um para avaliar regras personalizadas fornecidas nos arquivos de origem Python.

Se você usa o Amazon SageMaker Python SDK, pode simplesmente usar as operações gerais de API do SageMaker AI Debugger com as operações de API Estimator do SageMaker AI, sem precisar recuperar manualmente as imagens do Docker do Debugger e configurar a API ConfigureTrainingJob.

Se você não estiver usando o SageMaker Python SDK, precisará recuperar uma imagem base de contêiner pré-criada relevante para as regras do Debugger. O Amazon SageMaker Debugger fornece imagens pré-criadas do Docker para regras integradas e personalizadas, e as imagens são armazenadas no Amazon Elastic Container Registry (Amazon ECR). Para extrair uma imagem de um repositório Amazon ECR (ou enviar uma imagem para um), use o URL de registro do nome completo da imagem usando a API CreateTrainingJob. O SageMaker AI usa os padrões de URL a seguir para o endereço de registro de imagem de contêiner da regra do Debugger.

<account_id>.dkr.ecr.<Region>.amazonaws.com/<ECR repository name>:<tag>

Para obter o ID da conta em cada região da AWS, o nome de repositório do Amazon ECR e o valor de tag, consulte os tópicos a seguir.

URLs de registro do Amazon SageMaker Debugger para avaliadores de regras integrados

Use os seguintes valores para os componentes de URLs de registro referente às imagens que fornecem regras integradas para o Amazon SageMaker Debugger: Para IDs de conta, consulte a tabela a seguir.

Nome do repositório do ECR: sagemaker-debugger-rules

Tag: mais recente

Exemplo de URL de registro completo:

904829902805.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rules:latest

IDs de conta para imagens de contêiner de regras integradas por região AWS

Região account_id
af-south-1

314341159256

ap-east-1

199566480951

ap-northeast-1

430734990657

ap-northeast-2

578805364391

ap-south-1

904829902805

ap-southeast-1

972752614525

ap-southeast-2

184798709955

ca-central-1

519511493484

cn-north-1

618459771430

cn-northwest-1

658757709296

eu-central-1

482524230118

eu-north-1

314864569078

eu-south-1

563282790590

eu-west-1

929884845733

eu-west-2

250201462417

eu-west-3

447278800020

me-south-1

986000313247

sa-east-1

818342061345

us-east-1

503895931360

us-east-2

915447279597

us-west-1

685455198987

us-west-2

895741380848

us-gov-west-1

515509971035

URLs de registro do Amazon SageMaker Debugger para avaliadores de regras personalizadas.

Use os valores a seguir para os componentes do URL de registro referente às imagens que fornecem avaliadores de regras personalizadas para o Amazon SageMaker Debugger. Para IDs de conta, consulte a tabela a seguir.

Nome do repositório do ECR: sagemaker-debugger-rule-evaluator

Tag: mais recente

Exemplo de URL de registro completo:

552407032007.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rule-evaluator:latest

IDs de conta para imagens de contêiner de regras personalizadas por região AWS

Região account_id
af-south-1

515950693465

ap-east-1

645844755771

ap-northeast-1

670969264625

ap-northeast-2

326368420253

ap-south-1

552407032007

ap-southeast-1

631532610101

ap-southeast-2

445670767460

ca-central-1

105842248657

cn-north-1

617202126805

cn-northwest-1

658559488188

eu-central-1

691764027602

eu-north-1

091235270104

eu-south-1

335033873580

eu-west-1

606966180310

eu-west-2

074613877050

eu-west-3

224335253976

me-south-1

050406412588

sa-east-1

466516958431

us-east-1

864354269164

us-east-2

840043622174

us-west-1

952348334681

us-west-2

759209512951

us-gov-west-1

515361955729

Exceções do Amazon SageMaker Debugger

O Amazon SageMaker Debugger é projetado para estar ciente de que os tensores necessários para executar uma regra podem não estar disponíveis em cada etapa. Como resultado, ele abre algumas exceções que permitem que você controle o que acontece quando um tensor está ausente. Essas exceções estão disponíveis no módulo smdebug.exceptions. É possível importá-los da seguinte maneira:

from smdebug.exceptions import *

As seguintes exceções estão disponíveis:

  • TensorUnavailableForStep: O tensor solicitado não está disponível para a etapa. Isso pode significar que essa etapa pode não ser salva pelo hook, ou que essa etapa pode ter salvo alguns tensores, mas o tensor solicitado não faz parte deles. Observe que quando você vê essa exceção, isso significa que esse tensor pode nunca ficar disponível para essa etapa no futuro. Se o tensor tiver reduções salvas para a etapa, ele notificará que elas podem ser consultadas.

  • TensorUnavailable: Este tensor não está sendo salvo ou não foi salvo pela API de smdebug. Isso significa que esse tensor nunca é visto para nenhuma etapa na smdebug.

  • StepUnavailable: A etapa não foi salva e o Depurador não tem os dados da etapa.

  • StepNotYetAvailable: A etapa ainda não foi vista por smdebug. Pode estar disponível no futuro se o treinamento ainda estiver em andamento. O Depurador carrega automaticamente novos dados assim que se tornam disponíveis.

  • NoMoreData: Gerado quando o treinamento termina. Ao ver isso, você saberá que não há mais etapas e nem tensores a serem salvos.

  • IndexReaderException: O leitor de índice não é válido.

  • InvalidWorker: Um operador que não era válido foi invocado.

  • RuleEvaluationConditionMet: A avaliação da regra na etapa resultou no cumprimento da condição.

  • InsufficientInformationForRuleInvocation: Informações insuficientes foram fornecidas para invocar a regra.

Treinamento distribuído compatível com o Amazon SageMaker Debugger

A listagem a seguir mostra o escopo de validade e as considerações sobre o uso do Depurador em trabalhos de treinamento com frameworks de aprendizado profundo e várias opções de treinamento distribuído.

  • Horovod

    Escopo de validade do uso do Depurador para trabalhos de treinamento com Horovod

    Frameworks de aprendizado profundo Apache MXNet TensorFlow 1.x TensorFlow 2.x TensorFlow 2.x com Keras PyTorch
    Gargalos do sistema de monitoramento Sim Sim Sim Sim Sim
    Operações de framework perfilador Não Não Não Sim Sim
    Tensores de saída do modelo de depuração Sim Sim Sim Sim Sim
  • Paralelismo de dados distribuídos do SageMaker AI

    Escopo de validade do uso do Debugger para tarefas de treinamento com o paralelismo de dados distribuídos do SageMaker AI

    Frameworks de aprendizado profundo TensorFlow 2.x TensorFlow 2.x com Keras PyTorch
    Gargalos do sistema de monitoramento Sim Sim Sim
    Operações de framework perfilador Não* Não* Sim
    Tensores de saída do modelo de depuração Sim Sim Sim

    * O Depurador não oferece apoio à criação de perfis de framework para o TensorFlow 2.x.

    **O paralelismo de dados distribuídos do SageMaker AI não permite implementação do TensorFlow 2.x com Keras.

  • Paralelismo de modelo distribuído do SageMaker AI: o Debugger não é compatível com o treinamento de paralelismo de modelo distribuído do SageMaker AI.

  • Treinamento distribuído com pontos de verificação do SageMaker AI: o Debugger não está disponível para tarefas de treinamento quando a opção de treinamento distribuído e os pontos de verificação do SageMaker AI estão habilitados. Você verá um erro parecido com o seguinte:

    SMDebug Does Not Currently Support Distributed Training Jobs With Checkpointing Enabled

    Para usar o Debugger em tarefas de treinamento com opções de treinamento distribuído, você deve desabilitar o ponto de verificação do SageMaker AI e adicionar funções de ponto de verificação manual ao seu script de treinamento. Para obter mais informações sobre como usar o Depurador com opções de treinamento e pontos de verificação distribuídos, consulte Usar o paralelismo de dados distribuídos do SageMaker AI com o Amazon SageMaker Debugger e pontos de verificação e Salvando pontos de verificação.

  • Servidor de parâmetros: O depurador não oferece apoio ao treinamento distribuído baseado em servidor de parâmetros.

  • As operações de criação de perfis do framework de treinamento, como a operação AllReduced de paralelismo de dados distribuídos do SageMaker AI e as operações do Horovod estão disponíveis.