本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
监控归因偏差的参数
Ama SageMaker zon Clarify 可解释性监控器会重复使用分析配置中使用的参数子集。分析配置文件必须在JSON文件中提供以下参数,并且必须在的ConfigUri
参数中提供路径ModelExplainabilityAppSpecification
。
-
"version"
-(可选)配置文件的架构版本。如果未提供,则使用支持的最新版本。 -
"headers"
-(可选)数据集中的特征名称列表。可解释性分析不需要标签。 -
"methods"
- 用于分析和报告的方法及其参数的列表。如果省略了任何部分,则不对其进行计算。-
"shap"
—(可选)关于SHAP值计算的部分。-
"baseline"
—(可选)行列表(至少一行),或亚马逊简单存储服务 Amazon S3 对象URI。在内核SHAP算法中用作基线数据集(也称为背景数据集)。其格式应与数据集格式相同。每行应仅包含特征列(或值)。将每行发送到模型之前,请省略任何必须排除的列。 -
"num_samples"
— 要在内核SHAP算法中使用的样本数。此数字决定生成的合成数据集的大小以计算这些SHAP值。如果未提供,则 Cl SageMaker arify 作业会根据要素数量选择值。 -
"agg_method"
— 全局SHAP值的聚合方法。有效值如下所示:-
"mean_abs"
— 所有实例的绝对SHAP值的平均值。 -
"median"
— 所有实例的SHAP值的中位数。 -
"mean_sq"
— 所有实例的平方SHAP值的平均值。
-
-
"use_logit"
-(可选)布尔值,用于指示是否要对模型预测应用 logit 函数。如果"use_logit"
是
,则这些SHAP值具有对数赔率单位。默认值为true
false
。 -
"save_local_shap_values"
—(可选)布尔值,用于指示是否要将本地SHAP值保存在输出位置。使用true
保存它们。使用false
不保存它们。默认为false
。
-
-
-
"predictor"
-(对于实时端点为可选,对于批量转换为必选)模型参数部分,如果存在"shap"
和"post_training_bias"
部分,则为必选。-
"model_name"
— 模型名称由创建CreateModel
API,容器模式为SingleModel
。 -
"instance_type"
- 影子端点的实例类型。 -
"initial_instance_count"
- 影子端点的实例计数。 -
"content_type"
-(可选)用于获取影子端点推理的模型输入格式。有效值"text/csv"
为 Lin JSON es CSV、"application/jsonlines"
application/x-parquet
Apache Parquet 以及application/x-image
启用计算机视觉可解释性。默认值与dataset_type
格式相同。 -
"accept_type"
-(可选)用于获取影子端点推理的模型输出 格式。"text/csv"
对于CSV,"application/jsonlines"
对于JSON行,有效值为。如果省略, SageMaker Clarify 将使用捕获数据的响应数据类型。 -
"content_template"
-(可选)模板字符串,用于从数据集实例构造模型输入。仅当"content_type"
为"application/jsonlines"
时才使用。模板应只有一个占位符(即$features
),该占位符将在运行时被特征列表替换。例如"content_template":"{\"myfeatures\":$features}"
,给定如果一个实例(没有标签)是1,2,3
,则模型输入变为 Lin JSON es'{"myfeatures":[1,2,3]}'
。 -
"label_headers"
-(可选)"label"
在数据集中的取值列表。将模型端点或批量转换作业返回的分数与其相应的标签值进行关联。如果提供,则分析报告将使用标题而不是“label0”
之类的占位符。
-
其他参数应在的EndpointInput
(对于实时端点)或BatchTransformInput
(对于批处理转换作业)中提供ModelExplainabilityJobInput
API。
-
FeaturesAttribute
- 如果端点或批处理作业的输入数据格式为"application/jsonlines"
,则必须使用此参数。如果数据集格式为 Lin JSON es,则它JMESPath用于定位特征列。 -
ProbabilityAttribute
— 概率在模型输出中的索引或JMESPath位置。例如,如果模型输出是带有标签和概率列表的JSON线,则会选择与最大概率相对应的标签进行偏差计算。
CSV和JSON线数据集的JSON配置文件示例
以下是用于配置JSON的文件CSV和用于监控要素归因偏差的JSON线数据集的示例。
CSV数据集
考虑一个包含三个数值特征列的数据集,如以下示例所示。
0.5814568701544718, 0.6651538910132964, 0.3138080342665499 0.6711642728531724, 0.7466687034026017, 0.1215477472819713 0.0453256543003371, 0.6377430803264152, 0.3558625219713576 0.4785191813363956, 0.0265841045263860, 0.0376935084990697
假设模型输出有两列,其中第一列是预测标签,第二列是概率,如下例所示。
1, 0.5385257417814224
以下示例JSON配置文件显示了如何配置此CSV数据集。
{ "headers": [ "feature_1", "feature_2", "feature_3" ], "methods": { "shap": { "baseline": [ [0.4441164946610942, 0.5190374448171748, 0.20722795300473712] ], "num_samples": 100, "agg_method": "mean_abs" } }, "predictor": { "model_name": "my_model", "instance_type": "ml.m5.xlarge", "initial_instance_count": 1 } }
预测标签由 "ProbabilityAttribute"
参数选择。使用从零开始的编号,因此 1 表示模型输出的第二列。
"EndpointInput": { ... "ProbabilityAttribute": 1 ... }
JSON线条数据集
考虑一个包含四个特征列和一个标签列的数据集,其中第一个特征和标签为二进制,如下例所示。
{"features":[0, 0.5814568701544718, 0.6651538910132964, 0.3138080342665499], "label":0} {"features":[1, 0.6711642728531724, 0.7466687034026017, 0.1215477472819713], "label":1} {"features":[0, 0.0453256543003371, 0.6377430803264152, 0.3558625219713576], "label":1} {"features":[1, 0.4785191813363956, 0.0265841045263860, 0.0376935084990697], "label":1}
模型输入与数据集格式相同,模型输出为JSON线,如下例所示。
{"predicted_label":1, "probability":0.5385257417814224}
在以下示例中,JSON配置文件显示了如何配置这个 Lin JSON es 数据集。
{ "headers": [ "feature_1", "feature_2", "feature_3" ], "methods": { "shap": { "baseline": [ {"features":[0.4441164946610942, 0.5190374448171748, 0.20722795300473712]} ], "num_samples": 100, "agg_method": "mean_abs" } }, "predictor": { "model_name": "my_model", "instance_type": "ml.m5.xlarge", "initial_instance_count": 1, "content_template":"{\"features\":$features}" } }
然后,使用 EndpointInput
(对于实时端点)或 BatchTransformInput
(对于批量转换作业)中的 "features"
参数值来定位数据集中的特征,"probability"
参数值从模型输出中选择概率值。
"EndpointInput": { ... "FeaturesAttribute": "features", "ProbabilityAttribute": "probability", ... }