基线计算、漂移检测和生命周期 ClarifyCheck 和 QualityCheck 亚马逊中的步骤 SageMaker 模型构建管道 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

基线计算、漂移检测和生命周期 ClarifyCheck 和 QualityCheck 亚马逊中的步骤 SageMaker 模型构建管道

以下主题讨论了亚马逊基准和模型版本如何演变 SageMaker 使用时对构建管道进行模型ClarifyCheckQualityCheck步骤。

对于ClarifyCheckstep,基线是位于步骤属性中的单个文件,后缀为后缀constraints. 对于QualityCheckstep,基线是驻留在步骤属性中的两个文件的组合:一个带有后缀statistics另一个带有后缀constraints. 在以下主题中,我们将以前缀讨论这些属性,该前缀描述了它们的使用方式,从而影响这两个管道步骤中的基准行为和生命周期。例如,ClarifyCheckstep 始终在CalculatedBaselineConstraints财产和QualityCheckstep 在CalculatedBaselineConstraintsCalculatedBaselineStatistics属性。

基线计算和注册 ClarifyCheck 和 QualityCheck 步骤

无论您的ClarifyCheckQualityCheck步骤始终根据通过底层处理作业运行的步骤输入来计算新的基线。这些新计算的基线可以通过带前缀的属性访问CalculatedBaseline. 您可以将这些属性记录为ModelMetrics中的模型包RegisterModel步骤。该模型包可以使用 5 种不同的基线注册。您可以为每种支票类型注册一个:数据偏差、模型偏差和模型可解释性ClarifyCheck步骤和模型质量,以及运行QualityCheck步骤。这些区域有:register_new_baseline参数指示了在属性中设置的带有前缀的值BaselineUsedForDriftCheck在一步运行之后。

下表列出了潜在用例的表格,显示了可以为ClarifyCheckQualityCheck步骤:

选择此配置时可能会考虑的使用案例 skip_check / register_new_baseline 步骤会进行漂移检查吗? Step 属性的价值CalculatedBaseline Step 属性的价值BaselineUsedForDriftCheck

你正在定期进行再训练,并启用检查以获得新的模型版本,但是你想结转以前的基线作为DriftCheckBaselines在新模型版本的模型注册表中。

False/ False 漂移检查将根据现有基线运行 通过运行步骤计算的新基线 模型注册表中最新批准的模型或作为步骤参数提供的基线

你正在定期进行再训练,并启用检查以获得新的模型版本,但是你想要刷新DriftCheckBaselines在模型注册表中使用新计算的基线适用于您的新模型版本。

False/ True 漂移检查将根据现有基线运行 通过运行步骤计算的新基线 通过运行步骤(属性值)新计算的基线CalculatedBaseline

您正在启动管道以重新训练新模型版本,因为亚马逊检测到了违规行为 SageMaker 对于特定类型的检查的终端上的模型监视器,并且您想对照之前的基线跳过此类检查,但将之前的基线作为DriftCheckBaselines在模型注册表中适用于您的新模型版本。

True/ False 无偏差检查 通过运行计算的新基准 来自模型注册表中最新批准的模型或作为步骤参数提供的基线
这发生在以下情况下:
  • 您正在开始管道的初始运行、构建第一个模型版本并生成初始基线。

  • 您正在启动管道以重新训练新模型版本,因为模型监视器在终端上检测到特定类型检查的违规。如果要跳过对照之前的基线检查并刷新DriftCheckBaselines使用新计算的基线直接在模型注册表中。

True/ True 无偏差检查 通过运行步骤计算的新基线 通过运行步骤(属性值)新计算的基线CalculatedBaseline

RegisterModel步骤,您可以注册BaselineUsedForDriftCheck属性为DriftCheckBaselines. 然后,模型监视器可以使用这些基准文件进行模型和数据质量检查。此外,这些基线也可以用于 ClarifyCheckStep 和QualityCheck步骤将新训练的模型与在模型注册表中注册的现有模型进行比较,以便 future 的管道运行。

根据以前的基线进行漂移检测 SageMaker 管道

在这种情况下QualityCheckstep,当您启动定期再训练以获得新模型版本的管道时,如果数据质量和数据偏差存在,则可能不想运行训练步骤根据您之前批准的模型版本的基线。如果模型质量、模型偏差或模型可解释性违反了之前批准的模型版本的注册基线,则可能也不想注册新训练的模型版本ClarifyCheck步骤。在这些情况下,您可以通过设置skip_check设置为的相应检查步骤的属性False,导致ClarifyCheckQualityCheck如果检测到违反之前的基准,则步骤失败。然后管道进程不会继续,因此不会注册偏离基线的模型。ClarifyCheckQualityCheck步骤能够得到DriftCheckBaselines要比较的给定模型包组的最新批准的模型版本。以前的基准也可以直接通过supplied_baseline_constraints(除了supplied_baseline_statistics如果是QualityCheckstep),并且始终优先于从模型包组中提取的任何基线。

基线和模型版本生命周期和演进 SageMaker 管道

通过设置register_new_baseline您的ClarifyCheckQualityCheck单步进入False,您之前的基线可以通过 step 属性前缀访问BaselineUsedForDriftCheck. 然后,您可以将这些基准注册为DriftCheckBaselines在新模型版本中RegisterModel步骤。在模型注册表中批准此新模型版本后,DriftCheckBaseline在此模型版本中可用于ClarifyCheckQualityCheck下一个管道流程中的步骤。如果要为 future 模型版本刷新某种检查类型的基线,则可以设置register_new_baselineTrue以便带有前缀的属性BaselineUsedForDriftCheck成为新计算的基线。通过这些方式,您可以为 future 训练的模型保留首选基准,或者在需要时刷新基准以进行漂移检查,从而在模型训练迭代中管理基线演变和生命周期。

下图阐明了 model-version-centric 基线演变和生命周期的视图。