

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Exemplos de Cadernos e exemplos de código para configurar as regras do Depurador
<a name="debugger-built-in-rules-example"></a>

Nas seções a seguir, blocos de notas e exemplos de código de como usar as regras do Debugger para monitorar trabalhos de SageMaker treinamento são fornecidos.

**Topics**
+ [Cadernos de exemplo de regras integradas do Depurador](#debugger-built-in-rules-notebook-example)
+ [Código de exemplo de regras integradas do Depurador](#debugger-deploy-built-in-rules)
+ [Use regras integradas do Depurador com modificações de parâmetros](#debugger-deploy-modified-built-in-rules)

## Cadernos de exemplo de regras integradas do Depurador
<a name="debugger-built-in-rules-notebook-example"></a>

Os exemplos de cadernos a seguir mostram como usar as regras integradas do Debugger ao executar trabalhos de treinamento com a Amazon AI: SageMaker 
+ [Usando uma regra integrada SageMaker do Debugger com TensorFlow](https://github.com/awslabs/amazon-sagemaker-examples/tree/master/sagemaker-debugger/tensorflow_builtin_rule)
+ [Usando uma regra integrada SageMaker do Debugger com o Managed Spot Training e MXNet](https://github.com/awslabs/amazon-sagemaker-examples/tree/master/sagemaker-debugger/mxnet_spot_training)
+ [Usando uma regra integrada do SageMaker Debugger com modificações de parâmetros para uma análise do trabalho de treinamento em tempo real com XGBoost](https://github.com/awslabs/amazon-sagemaker-examples/tree/master/sagemaker-debugger/xgboost_realtime_analysis)

Ao executar os notebooks de exemplo no SageMaker Studio, você pode encontrar o teste de trabalho de treinamento criado na guia **Studio Experiment List**. Por exemplo, conforme mostrado na captura de tela a seguir, você pode encontrar e abrir uma janela **Descrever o Componente de Teste** do seu trabalho de treinamento atual. Na guia Depurador, você pode verificar se as regras do Depurador `vanishing_gradient()` e `loss_not_decreasing()` estão monitorando a sessão de treinamento em paralelo. Para obter instruções completas sobre como encontrar seus componentes de teste de emprego de treinamento na interface do usuário do Studio, consulte [SageMaker Studio - View Experiments, Trials and Trial Components](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-tasks.html#studio-tasks-experiments).

![\[Uma imagem da execução de um trabalho de treinamento com as regras integradas do Debugger ativadas no Studio SageMaker\]](http://docs.aws.amazon.com/pt_br/sagemaker/latest/dg/images/debugger/debugger-built-in-rule-studio.png)


Há duas maneiras de usar as regras integradas do Debugger no ambiente de SageMaker IA: implantar as regras integradas conforme elas são preparadas ou ajustar seus parâmetros conforme desejar. Os tópicos a seguir mostram como usar as regras integradas com códigos de exemplo.

## Código de exemplo de regras integradas do Depurador
<a name="debugger-deploy-built-in-rules"></a>

O exemplo de código a seguir mostra como configurar as regras integradas do Depurador usando o método `Rule.sagemaker`. Para especificar as regras integradas que você deseja executar, use a operação `rules_configs` da API para chamar as regras integradas. Para encontrar uma listagem completa das regras integradas do Depurador e dos valores de parâmetros padrão, consulte [Lista de regras integradas do Depurador](debugger-built-in-rules.md).

```
import sagemaker
from sagemaker.tensorflow import TensorFlow
from sagemaker.debugger import Rule, CollectionConfig, rule_configs

# call built-in rules that you want to use.
built_in_rules=[ 
            Rule.sagemaker(rule_configs.vanishing_gradient())
            Rule.sagemaker(rule_configs.loss_not_decreasing())
]

# construct a SageMaker AI estimator with the Debugger built-in rules
sagemaker_estimator=TensorFlow(
    entry_point='directory/to/your_training_script.py',
    role=sm.get_execution_role(),
    base_job_name='debugger-built-in-rules-demo',
    instance_count=1,
    instance_type="ml.p3.2xlarge",
    framework_version="2.9.0",
    py_version="py39",

    # debugger-specific arguments below
    rules=built_in_rules
)
sagemaker_estimator.fit()
```

**nota**  
As regras integradas do Depurador são executadas em paralelo ao seu trabalho de treinamento. O número máximo de contêineres de regras integradas para um trabalho de treinamento é 20. 

[Para obter mais informações sobre a classe de regras, os métodos e os parâmetros do Debugger, consulte a classe [SageMaker Debugger Rule no SDK do](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html) Amazon Python. SageMaker ](https://sagemaker.readthedocs.io/en/stable) 

Para encontrar um exemplo de como ajustar os parâmetros da regra do Depurador, consulte a seção [Use regras integradas do Depurador com modificações de parâmetros](#debugger-deploy-modified-built-in-rules) a seguir.

## Use regras integradas do Depurador com modificações de parâmetros
<a name="debugger-deploy-modified-built-in-rules"></a>

O exemplo de código a seguir mostra a estrutura das regras integradas para ajustar os parâmetros. Neste exemplo, o `stalled_training_rule` coleta a coleção `losses` de tensores de um trabalho de treinamento a cada 50 etapas e um estágio de avaliação a cada 10 etapas. Se o processo de treinamento se iniciar parado e não coletar as saídas do tensor por 120 segundos, o `stalled_training_rule` interrompe o trabalho de treinamento. 

```
import sagemaker
from sagemaker.tensorflow import TensorFlow
from sagemaker.debugger import Rule, CollectionConfig, rule_configs

# call the built-in rules and modify the CollectionConfig parameters

base_job_name_prefix= 'smdebug-stalled-demo-' + str(int(time.time()))

built_in_rules_modified=[
    Rule.sagemaker(
        base_config=rule_configs.stalled_training_rule(),
        rule_parameters={
                'threshold': '120',
                'training_job_name_prefix': base_job_name_prefix,
                'stop_training_on_fire' : 'True'
        }
        collections_to_save=[ 
            CollectionConfig(
                name="losses", 
                parameters={
                      "train.save_interval": "50"
                      "eval.save_interval": "10"
                } 
            )
        ]
    )
]

# construct a SageMaker AI estimator with the modified Debugger built-in rule
sagemaker_estimator=TensorFlow(
    entry_point='directory/to/your_training_script.py',
    role=sm.get_execution_role(),
    base_job_name=base_job_name_prefix,
    instance_count=1,
    instance_type="ml.p3.2xlarge",
    framework_version="2.9.0",
    py_version="py39",

    # debugger-specific arguments below
    rules=built_in_rules_modified
)
sagemaker_estimator.fit()
```