Configurer Debugger à l'aide du kit SDK Python Amazon SageMaker
Pour configurer Debugger, utilisez le kit SDK Python Amazon SageMakerprofiler_config
, debugger_hook_config
et rules
.
Par défaut, Debugger contrôle et débogue les tâches d'entraînement SageMaker sans paramètres spécifiques à Debugger configurés dans les estimateurs SageMaker. Debugger collecte des métriques système toutes les 500 millisecondes et des tenseurs de sortie de base (sorties scalaires telles que la perte et la précision) toutes les 500 étapes. Il exécute également la règle ProfilerReport
pour analyser les métriques système et agréger le tableau de bord Studio Debugger Insights ainsi qu'un rapport de profilage. Debugger enregistre les données de sortie dans votre compartiment S3 sécurisé.
Pour utiliser les nouvelles fonctions de Debugger, vous devez mettre à niveau le kit SDK Python SageMaker et la bibliothèque client SMDebug
. Dans votre noyau iPython, bloc-notes Jupyter ou environnement JupyterLab, exécutez le code suivant pour installer les dernières versions des bibliothèques et redémarrer le noyau.
import sys import IPython !{sys.executable} -m pip install -U sagemaker smdebug IPython.Application.instance().kernel.do_shutdown(True)
Créer un estimateur SageMaker avec Debugger
Les exemples de codes suivants montrent comment créer un estimateur SageMaker avec les paramètres spécifiques à Debugger en fonction du cadre de votre choix. Dans la documentation des rubriques suivantes, vous trouverez plus d'informations sur la configuration des paramètres spécifiques à Debugger, que vous pouvez combiner et assortir à votre guise.
Les exemples de codes suivants ne sont pas directement exécutables. Vous devez passer aux sections suivantes et configurer les paramètres spécifiques à Debugger.
Lorsque vous configurez les paramètres suivants :
-
profiler_config
Paramètre : configurez Debugger pour collecter les métriques système et les métriques de cadre de votre tâche d'entraînement et les enregistrer dans votre URI de compartiment S3 sécurisé ou votre machine locale. Pour en savoir plus sur la configuration du paramètreprofiler_config
, consultez Configurer l'utilisation des ressources matérielles du système de surveillance de Debugger et Configurer le profilage du cadre Debugger. -
debugger_hook_config
Paramètre : configurez Debugger pour collecter les tenseurs de sortie de votre tâche d'entraînement et les enregistrer dans votre URI de compartiment S3 sécurisé ou votre machine locale. Pour savoir comment configurer le paramètredebugger_hook_config
, consultez Configurer le hook de Debugger pour enregistrer les tenseurs. -
rules
Paramètre : configurez ce paramètre pour activer les règles intégrées de Debugger que vous souhaitez exécuter en parallèle. Les règles analysent automatiquement votre tâche d'entraînement et détectent les problèmes d'entraînement. La règle ProfilerReport enregistre les rapports de profilage de Debugger dans votre URI de compartiment S3 sécurisé. Pour savoir comment configurer le paramètrerules
, consultez Configuration des règles intégrées de Debugger.
Debugger enregistre en toute sécurité les données de sortie dans les sous-dossiers de votre compartiment S3 par défaut. Par exemple, le format de l'URI du compartiment S3 par défaut est s3://sagemaker-<region>-<12digit_account_id>/<base-job-name>/<debugger-subfolders>/
. Il y a trois sous-dossiers créés par Debugger : debug-output
, profiler-output
et rule-output
. Vous pouvez également extraire les URI du compartiment S3 par défaut à l'aide des méthodes de classe d'estimateur SageMaker.
Consultez les rubriques suivantes pour savoir comment configurer en détail les paramètres spécifiques à Debugger.
Rubriques
- Configurer l'utilisation des ressources matérielles du système de surveillance de Debugger
- Configurer le profilage du cadre Debugger
- Mise à jour de la configuration de la surveillance système et du profilage de cadre de Debugger pendant l'exécution d'une tâche d'entraînement
- Configurer le hook de Debugger pour enregistrer les tenseurs
- Configuration des règles intégrées de Debugger
- Désactiver Debugger
- Méthodes de classe d'estimateur SageMaker utiles pour Debugger