

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用带有默认参数设置的 Debugger 内置规则
<a name="debugger-built-in-rules-configuration"></a>

要在估算器中指定 Debugger 内置规则，您需要配置列表对象。以下示例代码显示了列出 Debugger 内置规则的基本结构：

```
from sagemaker.debugger import Rule, rule_configs

rules=[
    Rule.sagemaker(rule_configs.built_in_rule_name_1()),
    Rule.sagemaker(rule_configs.built_in_rule_name_2()),
    ...
    Rule.sagemaker(rule_configs.built_in_rule_name_n()),
    ... # You can also append more profiler rules in the ProfilerRule.sagemaker(rule_configs.*()) format.
]
```

有关内置规则的默认参数值和说明的详细信息，请参阅 [Debugger 内置规则列表](debugger-built-in-rules.md)。

要查找 SageMaker 调试器 API 参考，请参阅[https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.sagemaker.debugger.rule_configs](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.sagemaker.debugger.rule_configs)和。[https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.Rule](https://sagemaker.readthedocs.io/en/stable/api/training/debugger.html#sagemaker.debugger.Rule)

例如，要检查模型的整体训练性能和进度，请使用以下内置规则配置构建 SageMaker AI 估算器。

```
from sagemaker.debugger import Rule, rule_configs

rules=[
    Rule.sagemaker(rule_configs.loss_not_decreasing()),
    Rule.sagemaker(rule_configs.overfit()),
    Rule.sagemaker(rule_configs.overtraining()),
    Rule.sagemaker(rule_configs.stalled_training_rule())
]
```

当您启动训练作业时，默认情况下，Debugger 每 500 毫秒收集一次系统资源利用率数据，每 500 个步骤收集一次损失和准确性值。Debugger 分析资源利用率，以确定您的模型是否存在瓶颈问题。`loss_not_decreasing`、`overfit`、`overtraining` 和 `stalled_training_rule` 监控模型是否在优化损失函数而没有这些训练问题。当规则检测到训练异常时，规则评估状态将更改为 `IssueFound`。您可以设置自动操作，例如使用 Amazon Ev CloudWatch ents 和，通知培训问题和停止训练作业。 Amazon Lambda有关更多信息，请参阅 [Amazon 上的操作 SageMaker 调试器规则](debugger-action-on-rules.md)。

