Referenzen für Amazon SageMaker Debugger
Weitere Informationen und Referenzen zur Verwendung von Amazon SageMaker Debugger finden Sie in den folgenden Themen.
Themen
Amazon SageMaker Debugger APIs
Der Amazon SageMaker Debugger verfügt über API-Operationen an mehreren Orten, die für die Überwachung und Analyse des Modelltrainings verwendet werden.
Amazon SageMaker Debugger bietet auch das Open-Source-sagemaker-debuggerPython-SDK
Das Amazon SageMaker AI Python SDKSMDebug Python-Bibliothek definiert wurden, um diese Tensoren mit Hilfe von SageMaker-AI-Schätzern zu überwachen und zu analysieren.
Debugger hat der Amazon SageMaker API Operationen und Typen hinzugefügt, die es der Plattform ermöglichen, Debugger beim Training eines Modells zu verwenden und die Konfiguration von Eingaben und Ausgaben zu verwalten.
-
CreateTrainingJobundUpdateTrainingJobverwenden Sie die folgenden Debugger-APIs, um Tensorsammlungen, Regeln, Regelbilder und Profilerstellungsoptionen zu konfigurieren: -
DescribeTrainingJobbietet eine vollständige Beschreibung eines Trainingsauftrags, einschließlich der folgenden Debugger-Konfigurationen und Status der Regelauswertung:
Der API-Betrieb zur Regelkonfiguration verwenden die SageMaker Processing-Funktionalität bei der Analyse eines Modelltrainings. Mehr Informationen über die SageMaker-Verarbeitung finden Sie unter Workloads zur Datentransformation mit SageMaker Processing.
Docker-Images für Debugger-Regeln
Amazon SageMaker AI stellt zwei Sätze von Docker-Images für Regeln zur Verfügung: einen Satz für die Auswertung der von SageMaker bereitgestellten Regeln (integrierte Regeln) und einen Satz für die Auswertung benutzerdefinierter Regeln, die in Python-Quelldateien bereitgestellt werden.
Wenn Sie das Amazon SageMaker Python SDKConfigureTrainingJob API konfigurieren zu müssen.
Wenn Sie das SageMaker Python SDK nicht verwenden, müssen Sie ein entsprechendes vorgefertigtes Container-Basis-Image für die Debugger-Regeln abrufen. Amazon SageMaker Debugger stellt vorgefertigte Docker-Images für integrierte und benutzerdefinierte Regeln bereit. Die Bilder werden in Amazon Elastic Container Registry (Amazon ECR) gespeichert. Um ein Bild aus einem Amazon ECR-Repository abzurufen (oder ein Bild in ein solches zu übertragen), verwenden Sie mithilfe der CreateTrainingJob API die vollständige Registrierungs-URL des Images. SageMaker AI verwendet die folgenden URL-Muster für die Image-Registrierungsadresse des Debugger-Regelcontainers.
<account_id>.dkr.ecr.<Region>.amazonaws.com/<ECR repository name>:<tag>
Die Konto-ID in jeder AWS-Region, den Amazon ECR-Repository-Namen und den Tag-Wert finden Sie in den folgenden Themen.
Themen
Image-URLs des Amazon SageMaker Debugger für integrierte Regelauswerter
Verwenden Sie die folgenden Werte für die Komponenten der Registrierungs-URLs für die Images, die integrierte Regeln für Amazon SageMaker Debugger bereitstellen. Konto-IDs finden Sie in der folgenden Tabelle.
ECR-Repository-Name: sagemaker-debugger-rules
Tag: neuestes
Beispiel für eine vollständige Registrierungs-URL:
904829902805.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rules:latest
Konto-IDs für integrierte Regel-Container-Images nach AWS-Region
| Region | 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 |
Image-URLs des Amazon SageMaker Debugger für benutzerdefinierte Regelauswerter
Verwenden Sie die folgenden Werte für die Komponenten der Registrierungs-URLs für die Images, die benutzerdefinierte Regelauswertungsprogramme für Amazon SageMaker Debugger bereitstellen. Konto-IDs finden Sie in der folgenden Tabelle.
ECR-Repository-Name: sagemaker-debugger-rule-evaluator
Tag: neuestes
Beispiel für eine vollständige Registrierungs-URL:
552407032007.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rule-evaluator:latest
Konto-IDs für benutzerdefinierte Regeln Container-Images nach AWS-Region
| Region | 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 |
Ausnahmen für Amazon SageMaker Debugger
Der Amazon SageMaker Debugger ist so konzipiert, dass er sich bewusst ist, dass Tensoren, die zur Ausführung einer Regel benötigt werden, möglicherweise nicht in jedem Schritt verfügbar sind. Infolgedessen werden einige Ausnahmen ausgelöst, mit denen Sie kontrollieren können, was passiert, wenn ein Tensor fehlt. Diese Ausnahmen sind im Modul smdebug.exceptions
from smdebug.exceptions import *
Folgende Ausnahmen sind verfügbar:
-
TensorUnavailableForStep– Der angeforderte Tensor ist für diesen Schritt nicht verfügbar. Dies könnte bedeuten, dass dieser Schritt möglicherweise nicht durch den Hook gespeichert wird oder dass dieser Schritt zwar einige Tensoren gespeichert hat, der angeforderte Tensor aber nicht dazugehört. Wenn diese Ausnahme angezeigt wird, bedeutet dies, dass dieser Tensor zukünftig niemals für diesen Schritt verfügbar werden kann. Wenn für den Tensor Reduktionen für den Schritt gespeichert wurden, wird Ihnen mitgeteilt, dass sie abgefragt werden können. -
TensorUnavailable– Dieser Tensor wird nicht gespeichert oder wurde von dersmdebugAPI nicht gespeichert. Dies bedeutet, dass dieser Tensor für keinen Schritt insmdebugzu sehen ist. -
StepUnavailable– Der Schritt wurde nicht gespeichert und der Debugger hat keine Daten aus diesem Schritt. -
StepNotYetAvailable– Der Schritt wurde vonsmdebugnoch nicht gesehen. Es könnte in der Zukunft verfügbar sein, wenn das Training noch andauert. Debugger lädt automatisch neue Daten, sobald sie verfügbar sind. -
NoMoreData– Erhöht, wenn das Training endet. Sobald dies zu sehen ist, sind keine weiteren zu speichernde Schritte und Tensoren vorhanden. -
IndexReaderException– Der Indexleser ist ungültig. -
InvalidWorker– Es wurde ein ungültiger Auftragnehmer aufgerufen. -
RuleEvaluationConditionMet– Die Auswertung der Regel im Schritt führte dazu, dass die Bedingung erfüllt wurde. -
InsufficientInformationForRuleInvocation– Es wurden nicht genügend Informationen bereitgestellt, um die Regel aufzurufen.
Von Amazon SageMaker Debugger unterstütztes verteiltes Training
Die folgende Liste zeigt den Gültigkeitsbereich und die Überlegungen zur Verwendung von Debugger für Trainingsaufträge mit Deep-Learning-Frameworks und verschiedenen verteilten Trainingsoptionen.
-
Horovod
Gültigkeitsbereich der Verwendung von Debugger für Trainingsaufträge mit Horovod
Deep-Learning-Framework Apache MXNet TensorFlow 1.x TensorFlow 2.x TensorFlow 2.x mit Keras PyTorch Überwachung von Systemengpässen Ja Ja Ja Ja Ja Profiling-Framework-Operationen Nein Nein Nein Ja Ja Debuggen von Modellausgabetensoren Ja Ja Ja Ja Ja -
SageMaker AI Distributed Data Parallel
Gültigkeitsbereich der Verwendung des Debuggers für Trainingsjobs mit SageMaker AI Distributed Data Parallel
Deep-Learning-Framework TensorFlow 2.x TensorFlow 2.x mit Keras PyTorch Überwachung von Systemengpässen Ja Ja Ja Profiling-Framework-Operationen Nein* Nein** Ja Debuggen von Modellausgabetensoren Ja Ja Ja * Der Debugger unterstützt kein Framework-Profiling für TensorFlow 2.x.
** SageMaker AI Distributed Data Parallel unterstützt TensorFlow 2.x mit Keras-Implementierung nicht.
-
SageMaker AI Distributed Modell Parallel – Debugger unterstützt nicht das parallele Training für verteilte Modelle mit SageMaker.
-
Verteiltes Training mit SageMaker-AI-Checkpoints – Der Debugger ist für Trainingsjobs nicht verfügbar, wenn sowohl die verteilte Trainingsoption als auch die SageMaker-AI-Checkpoints aktiviert sind. Möglicherweise wird ein Fehler angezeigt, der wie folgt aussieht:
SMDebug Does Not Currently Support Distributed Training Jobs With Checkpointing EnabledUm den Debugger für Trainingsjobs mit verteilten Trainingsoptionen zu verwenden, müssen Sie das SageMaker-AI-Checkpointing deaktivieren und Ihrem Trainingsskript manuelle Checkpoint-Funktionen hinzufügen. Mehr Informationen über die Verwendung des Debuggers mit verteilten Trainingsoptionen und Prüfpunkte finden Sie unter Verwendung von SageMaker AI Distributed Data Parallel mit Amazon SageMaker Debugger und Checkpoints und Speichern von Prüfpunkten.
-
Parameterserver – Der Debugger unterstützt kein auf Parameterservern basierendes verteiltes Training.
-
Das Profiling von Operationen des verteilten Trainingsframeworks, wie z. B. die
AllReduced-Operation von SageMaker AI Distributed Data Parallel und Horovod-Operationen, ist nicht verfügbar.