Uso de las API del depurador para ejecutar sus propias reglas personalizadas - Amazon SageMaker AI

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de las API del depurador para ejecutar sus propias reglas personalizadas

El siguiente ejemplo de código muestra cómo configurar una regla personalizada con el Amazon SageMaker Python SDK. En este ejemplo se supone que el script de reglas personalizadas que creó en el paso anterior se encuentra en 'path/to/my_custom_rule.py'.

from sagemaker.debugger import Rule, CollectionConfig custom_rule = Rule.custom( name='MyCustomRule', image_uri='759209512951.dkr.ecr.us-west-2.amazonaws.com/sagemaker-debugger-rule-evaluator:latest', instance_type='ml.t3.medium', source='path/to/my_custom_rule.py', rule_to_invoke='CustomGradientRule', collections_to_save=[CollectionConfig("gradients")], rule_parameters={"threshold": "20.0"} )

En la siguiente lista se explican los argumentos de la API Rule.custom del depurador.

  • name (str): especifique el nombre de las reglas personalizadas que desee.

  • image_uri (str): esta es la imagen del contenedor que tiene la lógica de entender su regla personalizada. Obtiene y evalúa las colecciones de tensores especificadas que haya guardado en el trabajo de entrenamiento. Puede encontrar la lista de imágenes de código abierto del evaluador de reglas de SageMaker AI en URI de imagen del depurador de Amazon SageMaker para evaluadores de reglas personalizadas.

  • instance_type (str): debe especificar una instancia para crear un contenedor de Docker de reglas. Esto hace girar la instancia en paralelo con un contenedor de entrenamiento.

  • source (str): esta es la ruta local o el URI de Amazon S3 a su script de reglas personalizadas.

  • rule_to_invoke (str): especifique la implementación de la clase de regla específica en su script de reglas personalizadas. SageMaker AI solo admite la evaluación de una regla a la vez en un trabajo de reglas.

  • collections_to_save (str): especifique qué colecciones de tensores guardará para que se ejecute la regla.

  • rule_parameters (diccionario): acepta entradas de parámetros en formato diccionario. Puede ajustar los parámetros que haya configurado en el script de reglas personalizadas.

Tras configurar el objeto custom_rule, puede utilizarlo para crear un estimador de SageMaker AI para cualquier trabajo de entrenamiento. Especifique el entry_point en su script de entrenamiento. No necesita hacer ningún cambio en su script de entrenamiento.

from sagemaker.tensorflow import TensorFlow estimator = TensorFlow( role=sagemaker.get_execution_role(), base_job_name='smdebug-custom-rule-demo-tf-keras', entry_point='path/to/your_training_script.py' train_instance_type='ml.p2.xlarge' ... # debugger-specific arguments below rules = [custom_rule] ) estimator.fit()

Para ver más variantes y ejemplos avanzados del uso de las reglas personalizadas del depurador, consulte los siguientes cuadernos de ejemplo.