View a markdown version of this page

Visualize os tensores de saída do Amazon SageMaker Debugger em TensorBoard - 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á.

Visualize os tensores de saída do Amazon SageMaker Debugger em TensorBoard

nota

O Amazon SageMaker Debugger não está mais aberto a novos clientes. Os clientes existentes podem continuar usando o serviço normalmente. AWS continua investindo em melhorias de segurança e disponibilidade para o Debugger, mas não planejamos introduzir novos recursos. Para obter mais informações, consulte Alteração na disponibilidade do depurador.

Importante

Esta página foi descontinuada em favor da Amazon SageMaker AI with TensoBoard, que fornece uma TensorBoard experiência abrangente integrada ao SageMaker treinamento e às funcionalidades de controle de acesso do domínio AI. SageMaker Para saber mais, consulte TensorBoard na Amazon SageMaker AI.

Use o SageMaker Debugger para criar arquivos tensores de saída compatíveis com o. TensorBoard Carregue os arquivos para visualizar TensorBoard e analisar seus trabalhos SageMaker de treinamento. O Debugger gera automaticamente arquivos tensores de saída compatíveis com o. TensorBoard Para qualquer configuração de gancho que você personalize para salvar tensores de saída, o Debugger tem a flexibilidade de criar resumos escalares, distribuições e histogramas para os quais você pode importar. TensorBoard

Um diagrama de arquitetura do mecanismo de salvamento do tensor de saída do Debugger.

Você pode habilitar isso passando objetos DebuggerHookConfig e TensorBoardOutputConfig para um ModelTrainer.

O procedimento a seguir explica como salvar escalares, pesos e vieses como tensores completos, histogramas e distribuições que podem ser visualizados com. TensorBoard O Debugger os salva no caminho local do contêiner de treinamento (o caminho padrão é /opt/ml/output/tensors) e sincroniza com os locais do Amazon S3 passados pelos objetos de configuração de saída do Debugger.

Para salvar arquivos de tensor de saída TensorBoard compatíveis usando o Debugger
  1. Configure um objeto tensorboard_output_config de configuração para salvar a TensorBoard saída usando a classe DebuggerTensorBoardOutputConfig. Para o s3_output_path parâmetro, especifique o bucket S3 padrão da sessão de SageMaker IA atual ou um bucket S3 preferido. Este exemplo não adiciona o parâmetro container_local_output_path; em vez disso, ele é definido como o caminho local padrão /opt/ml/output/tensors.

    from sagemaker.core.debugger import TensorBoardOutputConfig from sagemaker.core.helper.session_helper import Session bucket = Session().default_bucket() tensorboard_output_config = TensorBoardOutputConfig( s3_output_path='s3://{}'.format(bucket) )

    Para obter informações adicionais, consulte a TensorBoardOutputConfig API Debugger no Amazon SageMaker Python SDK.

  2. Configure o hook do Debugger e personalize os valores dos parâmetros do hook. Por exemplo, o código a seguir configura um hook do Debugger para salvar todas as saídas escalares a cada 100 etapas nas fases de treinamento e 10 etapas nas fases de validação, os parâmetros weights a cada 500 etapas (o valor padrão save_interval para salvar coleções de tensores é 500) e os parâmetros bias a cada 10 etapas globais até que a etapa global alcance 500.

    from sagemaker.debugger import CollectionConfig, DebuggerHookConfig hook_config = DebuggerHookConfig( hook_parameters={ "train.save_interval": "100", "eval.save_interval": "10" }, collection_configs=[ CollectionConfig("weights"), CollectionConfig( name="biases", parameters={ "save_interval": "10", "end_step": "500", "save_histogram": "True" } ), ] )

    Para obter mais informações sobre as APIs de configuração do Debugger, consulte o Debugger CollectionConfig e DebuggerHookConfig as APIs no Amazon Python SDK. SageMaker

  3. Construa uma SageMaker IA ModelTrainer com os parâmetros do Debugger passando os objetos de configuração. O modelo de exemplo a seguir mostra como criar uma SageMaker IA genérica ModelTrainer. ModelTrainer As estruturas disponíveis para essa funcionalidade são TensorFlowPyTorch, e. MXNet

    from sagemaker.train import ModelTrainer model_trainer = ModelTrainer( ... # Debugger parameters debugger_hook_config=hook_config, tensorboard_output_config=tensorboard_output_config ) model_trainer.train()

    O model_trainer.train() método inicia um trabalho de treinamento e o Debugger grava os arquivos do tensor de saída em tempo real no caminho de saída do Debugger S3 e no caminho de saída do S3. TensorBoard Para recuperar os caminhos de saída, use os seguintes ModelTrainer métodos:

    • Para o caminho de saída do Debugger S3, use model_trainer.latest_job_debugger_artifacts_path().

    • Para o caminho de saída do TensorBoard S3, usemodel_trainer.latest_job_tensorboard_artifacts_path().

  4. Após a conclusão do treinamento, verifique os nomes dos tensores de saída salvos:

    from smdebug.trials import create_trial trial = create_trial(model_trainer.latest_job_debugger_artifacts_path()) trial.tensor_names()
  5. Verifique os dados TensorBoard de saída no Amazon S3:

    tensorboard_output_path=model_trainer.latest_job_tensorboard_artifacts_path() print(tensorboard_output_path) !aws s3 ls {tensorboard_output_path}/
  6. Baixe os dados TensorBoard de saída para a instância do seu notebook. Por exemplo, o AWS CLI comando a seguir baixa os TensorBoard arquivos para o /logs/fit diretório de trabalho atual da instância do seu notebook.

    !aws s3 cp --recursive {tensorboard_output_path} ./logs/fit
  7. Comprima o diretório do arquivo em um arquivo TAR para fazer o download em sua máquina local.

    !tar -cf logs.tar logs
  8. Baixe e extraia o arquivo TAR do Tensorboard em um diretório no seu dispositivo, inicie um servidor de notebook Jupyter, abra um novo notebook e execute o aplicativo. TensorBoard

    !tar -xf logs.tar %load_ext tensorboard %tensorboard --logdir logs/fit

A captura de tela animada a seguir ilustra as etapas 5 a 8. Ele demonstra como baixar o arquivo TensorBoard TAR do Debugger e carregar o arquivo em um notebook Jupyter em seu dispositivo local.

Animação sobre como baixar e carregar o TensorBoard arquivo Debugger em sua máquina local.