Riferimenti per Amazon SageMaker Debugger
Trova ulteriori informazioni e riferimenti sull’utilizzo di Amazon SageMaker Debugger nei seguenti argomenti.
Argomenti
API Amazon SageMaker Debugger
Debugger Amazon SageMaker dispone di operazioni API in diverse posizioni che vengono utilizzate per implementare il monitoraggio e l'analisi del addestramento sui modelli.
Debugger Amazon SageMaker fornisce anche sagemaker-debugger Python SDK
Amazon SageMaker AI Python SDKSMDebug Python per monitorare e analizzare questi tensori utilizzando gli strumenti di stima SageMaker AI.
Debugger ha aggiunto tipi e operazioni all'API Amazon Sagemaker che consentono alla piattaforma di utilizzare Debugger durante l’addestramento di un modello e di gestire la configurazione di input e output.
-
CreateTrainingJobeUpdateTrainingJobutilizzano le seguenti API Debugger per configurare raccolte di tensori, regole, immagini di regole e opzioni di profilazione: -
DescribeTrainingJobfornisce una descrizione completa di un processo di addestramento, incluse le seguenti configurazioni di Debugger e gli stati di valutazione delle regole:
Le operazioni dell'API di configurazione delle regole utilizzano la funzionalità di elaborazione SageMaker durante l'analisi dell'addestramento di un modello. Per ulteriori informazioni sui processi di elaborazione Sagemaker, consulta Carichi di lavoro di trasformazione dei dati con SageMaker Processing.
Immagini Docker per le regole di Debugger
Amazon SageMaker AI fornisce due set di immagini Docker per le regole: un set di regole di valutazione fornite da SageMaker AI (regole integrate) e un set di regole di valutazione personalizzate fornite nei file di origine di Python.
Se utilizzi Amazon SageMaker Python SDKConfigureTrainingJob.
Se non utilizzi SageMaker Python SDK, dovrai recuperare un'immagine di base del container predefinito pertinente per le regole di Debugger. Debugger Amazon SageMaker fornisce immagini Docker predefinite per regole integrate e personalizzate e le immagini sono archiviate in Amazon Elastic Container Registry (Amazon ECR). Per estrarre un'immagine da un repository di Amazon ECR (o per inviare un'immagine a uno di essi), utilizza l'URL del registro del nome completo dell'immagine attraverso l'API CreateTrainingJob. SageMaker AI utilizza i seguenti pattern di URL per l’indirizzo del registro immagini del container di regole di Debugger.
<account_id>.dkr.ecr.<Region>.amazonaws.com/<ECR repository name>:<tag>
Per l’ID account in ogni Regione AWS, il nome del repository di Amazon ECR e il valore del tag, consulta gli argomenti indicati di seguito.
Argomenti
URI delle immagini di Amazon SageMaker Debugger per strumenti di valutazione di regole integrate
Utilizza i seguenti valori per i componenti degli URL del registro per le immagini che forniscono regole integrate per Debugger Amazon SageMaker. Per gli ID account, vedi la tabella seguente.
Nome del repository ECR: sagemaker-debugger-rules
Tag: ultimo
Esempio di URL del Registro completo:
904829902805.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rules:latest
ID account per immagini di container di regole integrate per Regione AWS
| Regione | 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 |
URI delle immagini di Amazon SageMaker Debugger per strumenti di valutazione di regole personalizzate
Utilizza i seguenti valori per i componenti dell'URL del registro per le immagini che forniscono strumenti di valutazione di regole personalizzate per Debugger Amazon SageMaker. Per gli ID account, vedi la tabella seguente.
Nome del repository ECR: sagemaker-debugger-rule-evaluator
Tag: ultimo
Esempio di URL del Registro completo:
552407032007.dkr.ecr.ap-south-1.amazonaws.com/sagemaker-debugger-rule-evaluator:latest
ID account per immagini del container di regole personalizzate per Regione AWS
| Regione | 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 |
Eccezioni di Amazon SageMaker Debugger
Amazon SageMaker Debugger è progettato per informare che i tensori necessari per eseguire una regola potrebbero non essere disponibili in ogni fase. Quindi genera alcune eccezioni che ti permettono di controllare cosa succede quando manca un tensore. Queste eccezioni sono disponibili nel modulo smdebug.exceptions
from smdebug.exceptions import *
Sono disponibili le seguenti eccezioni:
-
TensorUnavailableForStep– il tensore richiesto non è disponibile per la fase. Questo potrebbe significare che questa fase potrebbe non essere salvata dall'hook o che questa fase potrebbe aver salvato alcuni tensori ma il tensore richiesto non è parte di essi. Si noti che in presenza di questa eccezione, il questo tensore non può mai diventare disponibile per questa fase in futuro. Se il tensore ha delle riduzioni salvate per la fase, ti avviserà che possono sottoposte a query. -
TensorUnavailable– questo tensore non viene salvato o non è stato salvato dall'APIsmdebug. Ciò significa che questo tensore non viene mai visto per nessuna fase insmdebug. -
StepUnavailable– la fase non è stata salvata e Debugger non ha ricevuto dati dalla fase. -
StepNotYetAvailable– la fase non è stata ancora visualizzata dasmdebug. Potrebbe essere disponibile in futuro se l’addestramento è ancora in corso. Debugger carica automaticamente i nuovi dati quando disponibili. -
NoMoreData– generata alla fine dell’addestramento. Quando viene visualizzata questa eccezione, non ci sono più fasi e non ci sono più tensori da salvare. -
IndexReaderException– il lettore dell'indice non è valido. -
InvalidWorker– è stato richiamato un worker che non era valido. -
RuleEvaluationConditionMet– la valutazione della regola durante la fase ha portato al soddisfacimento della condizione. -
InsufficientInformationForRuleInvocation– sono state fornite informazioni insufficienti per richiamare la regola.
Addestramento distribuito supportato da Amazon SageMaker Debugger
L'elenco seguente mostra l'ambito di validità e le considerazioni per l'utilizzo di Debugger in processi di addestramento con framework di deep learning e varie opzioni di addestramento distribuito.
-
Horovod
Ambito di validità dell'utilizzo di Debugger per processi di addestramento con Horovod
Framework Deep Learning Apache MXNet TensorFlow 1.x TensorFlow 2.x TensorFlow 2.x con Keras PyTorch Colli di bottiglia di bottiglia del sistema di monitoraggio Sì Sì Sì Sì Sì Operazioni del framework di profilazione No No No Sì Sì Debug dei tensori di output del modello Sì Sì Sì Sì Sì -
SageMaker AI Distributed Data Parallel
Ambito di validità dell’utilizzo di Debugger per i job di addestramento con SageMaker AI Distributed Data Parallel
Framework Deep Learning TensorFlow 2.x TensorFlow 2.x con Keras PyTorch Colli di bottiglia di bottiglia del sistema di monitoraggio Sì Sì Sì Operazioni del framework di profilazione No* No** Sì Debug dei tensori di output del modello Sì Sì Sì * Debugger non supporta la profilazione del framework per TensorFlow 2.x.
** SageMaker AI Distributed Data Parallel non supporta l’implementazione TensorFlow 2.x con Keras.
-
SageMaker AI Distributed Data Parallel: Debugger non supporta l’addestramento con parallelizzazione dei modelli distribuito di SageMaker AI.
-
Addestramento distribuito con checkpoint SageMaker AI: Debugger non è disponibile per i job di addestramento quando sia l’opzione di addestramento distribuito che i checkpoint SageMaker sono abilitati. È possibile che venga visualizzato un errore simile al seguente:
SMDebug Does Not Currently Support Distributed Training Jobs With Checkpointing EnabledPer utilizzare Debugger per i job di addestramento con opzioni di addestramento distribuito, è necessario disabilitare il checkpointing SageMaker AI e aggiungere funzioni di checkpointing manuali allo script di addestramento. Per ulteriori informazioni sull'uso di Debugger con opzioni di addestramento e checkpoint distribuiti, consulta Utilizzo di SageMaker AI Distributed Data Parallel con Amazon SageMaker Debugger e checkpoint e Salvataggio dei checkpoint.
-
Server di parametri: Debugger non supporta l'addestramento distribuito basato su server di parametri.
-
La profilazione delle operazioni del framework di addestramento distribuito, come l’operazione
AllReduceddi SageMaker AI Distributed Data Parallel e le operazioni Horovod, non è disponibile.