Trainingsjobs mit dem Debugger und SageMaker Python SDK starten
Um einen SageMaker-AI-Schätzer mit SageMaker Debugger zu konfigurieren, verwenden Sie das Amazon SageMaker Python SDKdebugger_hook_config, tensorboard_output_config, und rules.
Wichtig
Bevor Sie die Schätzer-Fit-Methode erstellen und ausführen, um einen Trainingsauftrag zu starten, stellen Sie sicher, dass Sie Ihr Trainingsskript entsprechend den Anweisungen unter Ihr Trainingsskript anpassen, um einen Hook zu registrieren anpassen.
Konstruieren Sie einen SageMaker-AI-Schätzer mit Debugger-spezifischen Parametern
Die Codebeispiele in diesem Abschnitt zeigen, wie Sie einen SageMaker-AI-Schätzer mit Debugger-spezifischen Parametern erstellen.
Anmerkung
Die folgenden Codebeispiele sind Vorlagen für die Erstellung der Framework-Schätzer von SageMaker AI und nicht direkt ausführbar. Sie müssen mit den nächsten Abschnitten fortfahren und die Debugger-spezifischen Parameter konfigurieren.
Konfigurieren Sie die folgenden Parameter, um den SageMaker Debugger zu aktivieren:
-
debugger_hook_config(ein Objekt vonDebuggerHookConfig) – Erforderlich, um den Hook im angepassten Trainingsskript während Ihr Trainingsskript anpassen, um einen Hook zu registrieren zu aktivieren, den SageMaker-Trainingslauncher (Schätzer) so zu konfigurieren, dass er Ausgabetensoren von Ihrem Trainingsauftrag sammelt, und die Tensoren in Ihrem gesicherten S3-Bucket oder auf Ihrem lokalen Rechner zu speichern. Wie Sie den debugger_hook_configParameter konfigurieren können, erfahren Sie unter SageMaker Debugger zum Speichern von Tensoren konfigurieren. -
rules(eine Liste vonRuleObjekten) – Konfigurieren Sie diesen Parameter, um die in SageMaker Debugger integrierten Regeln zu aktivieren, die Sie in Echtzeit ausführen möchten. Bei den integrierten Regeln handelt es sich um Logiken, die den Trainingsfortschritt Ihres Modells automatisch debuggen und Trainingsprobleme finden, indem sie die in Ihrem gesicherten S3-Bucket gespeicherten Ausgabetensoren analysieren. Wie Sie den rulesParameter konfigurieren können, erfahren Sie unter So konfigurieren Sie integrierte Debugger-Regeln. Eine vollständige Liste der integrierten Regeln für das Debuggen von Ausgabetensoren finden Sie unter Debugger-Regel. Wenn Sie Ihre eigene Logik zur Erkennung von Ausbildungsproblemen erstellen möchten, siehe Benutzerdefinierte Regeln mithilfe der Debugger-Clientbibliothek erstellen.Anmerkung
Die integrierten Regeln sind nur in SageMaker-Trainings-Instances verfügbar. Sie können sie nicht im lokalen Modus verwenden.
-
tensorboard_output_config(ein Objekt vonTensorBoardOutputConfig) – Konfigurieren Sie den SageMaker Debugger so, dass er Ausgabetensoren im TensorBoard-kompatiblen Format sammelt und in Ihrem im TensorBoardOutputConfigObjekt angegebenen S3-Ausgabepfad speichert. Weitere Informationen hierzu finden Sie unter Ausgabetensoren des Amazon SageMaker Debugger in TensorBoard visualisieren.Anmerkung
Der
tensorboard_output_configmuss mit demdebugger_hook_configParameter konfiguriert werden. Dazu müssen Sie auch Ihr Trainingsskript anpassen, indem Sie densagemaker-debuggerHook hinzufügen.
Anmerkung
SageMaker Debugger speichert Ausgabetensoren sicher in Unterordnern Ihres S3-Buckets. Das Format der standardmäßigen S3-Bucket-URI in Ihrem Konto lautet beispielsweise s3://amzn-s3-demo-bucket-sagemaker-<region>-<12digit_account_id>/<base-job-name>/<debugger-subfolders>/. Es gibt zwei Unterordner, die von SageMaker Debugger erstellt wurden: debug-output und rule-output. Wenn Sie den tensorboard_output_config Parameter hinzufügen, finden Sie auch den tensorboard-output Ordner.
In den folgenden Themen finden Sie weitere Beispiele für die detaillierte Konfiguration der Debugger-spezifischen Parameter.