本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在 Cl SageMaker arify 处理作业收到推理端点调用的响应后,它会反序列化响应有效负载并从中提取预测。使用分析配置 accept_type
参数指定响应负载的数据格式。如果未提供,则 C accept_type
lari SageMaker fy 处理作业将使用 content_type 参数的值作为模型输出格式。有关 accept_type
的更多信息,请参阅 分析配置文件。
预测可以由用于偏差分析的预测标签或用于特征重要性分析的概率值(得分)组成。在 predictor
分析配置中,以下三个参数提取预测。
-
参数
probability
用于定位端点响应中的概率值(得分)。 -
参数
label
用于在端点响应中定位预测标签。 -
(可选)参数
label_headers
提供多类模型的预测标签。
以下准则适用于 CSV、JSON 行和 JSON 格式的端点响应。
端点响应采用 CSV 格式
如果响应负载采用 CSV 格式(MIME 类型:text/csv
),则 Clarify 处理 SageMaker 任务会反序列化每行。然后,它使用分析配置中提供的列索引,从反序列化数据中提取预测。响应负载中的行必须与请求负载中的记录相匹配。
下表提供了不同格式和不同问题类型的响应数据的示例。只要可以根据分析配置提取预测,您的数据就可以与这些示例不同。
以下几节介绍了 CSV 格式的端点响应示例。
下表是回归和二进制分类问题的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单条记录。 |
'0.6' |
两条记录(结果位于一行,用逗号分隔)。 |
'0.6,0.3' |
两条记录(结果分为两行)。 |
'0.6\n0.3' |
在前面的示例中,端点输出预测标签的单个概率值(得分)。要使用索引提取概率并将其用于特征重要性分析,请将分析配置参数 probability
设置为列索引 0
。如果使用 probability_threshold
参数将这些概率转换为二进制值,则也可以将这些概率用于偏差分析。有关 probability_threshold
的更多信息,请参阅 分析配置文件。
下表是多类问题的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
多类模型(三个类)的单条记录。 |
'0.1,0.6,0.3' |
多类模型(三个类)的两条记录。 |
'0.1,0.6,0.3\n0.2,0.5,0.3' |
在前面的示例中,端点输出概率(得分)列表。如果未提供索引,则会提取所有值并将其用于特征重要性分析。如果提供了分析配置参数 label_headers
,然后, SageMaker Clarify 处理作业可以选择最大概率的标签标题作为预测标签,该标签可用于偏差分析。有关 label_headers
的更多信息,请参阅 分析配置文件。
下表是回归和二进制分类问题的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单条记录 |
'1' |
两条记录(结果位于一行,用逗号分隔) |
'1,0' |
两条记录(结果分为两行) |
'1\n0' |
在前面的示例中,端点输出预测标签而不是概率。将 predictor
配置的 label
参数设置为列索引 0
,这样就可以使用索引提取预测标签并用于偏差分析。
下表是回归和二进制分类问题的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'1,0.6' |
两条记录 |
'1,0.6\n0,0.3' |
在前面的示例中,端点先输出预测标签,然后输出其概率。将 predictor
配置的 label
参数设置为列索引 0
,并将 probability
设置为列索引 1
以提取两个参数值。
可以将由 Amazon A SageMaker utopilot 训练的多类模型配置为输出预测标签和概率列表的字符串表示形式。以下示例表显示了一个来自模型的示例端点响应,该模型配置为输出 predicted_label
、probability
、labels
和 probabilities
。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'"dog",0.6,"[\'cat\', \'dog\', \'fish\']","[0.1, 0.6, 0.3]"' |
两个记录 |
'"dog",0.6,"[\'cat\', \'dog\', \'fish\']","[0.1, 0.6, 0.3]"\n""cat",0.7,[\'cat\', \'dog\', \'fish\']","[0.7, 0.2, 0.1]"' |
在前面的示例中 SageMaker ,可以通过以下方式配置 Clarify 处理作业以提取预测。
要进行偏差分析,可以将前面的示例配置为以下方式之一。
-
将
predictor
配置的label
参数设置为0
,以提取预测标签。 -
将参数设置为
2
以提取预测标签,将probability
设置为3
以提取相应的概率。Clarify 处理作业可以通过识别概率值最高的标签来自动确定预测的标签。 SageMaker 参照前面的单条记录示例,该模型预测了三个标签:cat
、dog
和fish
,对应的概率为0.1
、0.6
和0.3
。基于这些概率,预测标签为dog
,因为它的概率值最高,为0.6
。 -
将
probability
设置为3
以提取概率。如果label_headers
提供,则 Clar SageMaker ify 处理作业可以通过识别概率值最高的标签标题来自动确定预测的标签。
要进行特征重要性分析,可以按以下方式配置前面的示例。
-
将
probability
设置为3
以提取所有预测标签的概率。然后,将计算所有标签的特征归因。如果客户未指定label_headers
,则预测标签将在分析报告中用作标签标题。
端点响应采用 JSON 行格式
如果响应负载采用 JSON 行格式(MIME 类型:application/jsonlines
),则 Clarify 处理任务将每行反序列化为 JSON。 SageMaker 然后,它使用分析配置中提供的 JMESPath 表达式从反序列化数据中提取预测。响应负载中的行必须与请求负载中的记录相匹配。下表显示了不同格式的响应数据的示例。只要可以根据分析配置提取预测,您的数据就可以与这些示例不同。
以下几节介绍了 JSON 行格式的端点响应示例。
下表是仅输出概率值(得分)的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'{"score":0.6}' |
两个记录 |
'{"score":0.6}\n{"score":0.3}' |
在前面的示例中,将分析配置参数设置probability
为 JMESPath 表达式 “score” 以提取其值。
下表是仅输出预测标签的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'{"prediction":1}' |
两个记录 |
'{"prediction":1}\n{"prediction":0}' |
在前面的示例中,将预测变量配置的label
参数设置为 expression JMESPath 。prediction
然后,Cl SageMaker arify 处理任务可以提取预测的标签进行偏差分析。有关更多信息,请参阅 分析配置文件。
下表是输出预测标签及其得分的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'{"prediction":1,"score":0.6}' |
两个记录 |
'{"prediction":1,"score":0.6}\n{"prediction":0,"score":0.3}' |
对于前面的示例,将predictor
配置的label
参数设置为 JMESPath 表达式 “预测” 以提取预测的标签。设置probability
为 JMESPath 表达式 “分数” 以提取概率。有关更多信息,请参阅 分析配置文件。
下表是多类模型的端点响应示例,其输出如下:
-
预测标签列表。
-
概率,以及所选的预测标签及其概率。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'{"predicted_label":"dog","probability":0.6,"predicted_labels":["cat","dog","fish"],"probabilities":[0.1,0.6,0.3]}' |
两个记录 |
'{"predicted_label":"dog","probability":0.6,"predicted_labels":["cat","dog","fish"],"probabilities":[0.1,0.6,0.3]}\n{"predicted_label":"cat","probability":0.7,"predicted_labels":["cat","dog","fish"],"probabilities":[0.7,0.2,0.1]}' |
在前面的示例中 SageMaker ,可以通过多种方式配置 Clarify 处理作业以提取预测。
要进行偏差分析,可以将前面的示例配置为以下方式之一。
-
将
predictor
配置的label
参数设置为 JMESPath 表达式 “predicted_label” 以提取预测的标签。 -
将参数设置为 JMESPath 表达式 “predicted_labels” 以提取预测的标签。设置
probability
为 JMESPath 表达式 “概率” 以提取其概率。Cl SageMaker arify 作业通过识别概率值最高的标签来自动确定预测的标签。 -
设置
probability
为 JMESPath 表达式 “概率” 以提取其概率。如果label_headers
提供,则 Clar SageMaker ify 处理作业可以通过识别概率值最高的标签来自动确定预测的标签。
要进行特征重要性分析,请执行以下操作。
-
设置
probability
为 JMESPath 表达式 “概率” 以提取所有预测标签的概率。然后,将计算所有标签的特征归因。
端点响应采用 JSON 格式
如果响应负载采用 JSON 格式(MIME 类型:application/json
),则 Clarify 处理任务会 SageMaker 将整个有效负载反序列化为 JSON。然后,它使用分析配置中提供的 JMESPath 表达式从反序列化数据中提取预测。响应负载中的记录必须与请求负载中的记录相匹配。
以下几节介绍了 JSON 格式的端点响应示例。这几节包含一些表格,表中提供了不同格式和不同问题类型的响应数据的示例。只要可以根据分析配置提取预测,您的数据就可以与这些示例不同。
下表是仅输出概率值(得分)的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'[0.6]' |
两个记录 |
'[0.6,0.3]' |
在前面的示例中,响应负载中没有换行符,而是有一个 JSON 对象,其中包含一个得分列表,请求中的每条记录对应一个得分。将分析配置参数设置probability
为 JMESPath 表达式 “[*]” 以提取值。
下表是仅输出预测标签的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'{"predicted_labels":[1]}' |
两个记录 |
'{"predicted_labels":[1,0]}' |
将predictor
配置的label
参数设置为 JMESPath 表达式 “predicted_labels”,然后 Clarif SageMaker y 处理作业可以提取预测的标签进行偏差分析。
下表是输出预测标签及其得分的端点响应示例。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'{"predictions":[{"label":1,"score":0.6}' |
两个记录 |
‘{"predictions":[{"label":1,"score":0.6},{"label":0,"score":0.3}]}' |
在前面的示例中,将predictor
配置的label
参数设置为 JMESPath 表达式 “预测 [*] .label” 以提取预测的标签。设置probability
为 JMESPath 表达式 “预测 [*] .score” 以提取概率。
下表是多类模型的端点响应示例,其输出如下:
-
预测标签列表。
-
概率,以及所选的预测标签及其概率。
端点请求负载 | 端点响应负载(字符串表示形式) |
---|---|
单个记录 |
'[{"predicted_label":"dog","probability":0.6,"predicted_labels":["cat","dog","fish"],"probabilities":[0.1,0.6,0.3]}]' |
两个记录 |
'[{"predicted_label":"dog","probability":0.6,"predicted_labels":["cat","dog","fish"],"probabilities":[0.1,0.6,0.3]},{"predicted_label":"cat","probability":0.7,"predicted_labels":["cat","dog","fish"],"probabilities":[0.7,0.2,0.1]}]' |
可以通过多种方式配置 Clarify 处理作业来提取预测结果。 SageMaker
要进行偏差分析,可以将前面的示例配置为以下方式之一。
-
将
predictor
配置的label
参数设置为 JMESPath 表达式 “[*] .predicted_label” 以提取预测的标签。 -
将参数设置为 JMESPath 表达式 “[*] .predicted_labels” 以提取预测的标签。设置
probability
为 JMESPath 表达式 “[*] .probercilities” 以提取其概率。Cl SageMaker arify 处理任务可以通过识别具有最高邻近值的标签来自动确定预测的标签。 -
设置
probability
为 JMESPath 表达式 “[*] .probercilities” 以提取其概率。如果label_headers
提供,则 Clar SageMaker ify 处理作业可以通过识别概率值最高的标签来自动确定预测的标签。
要进行特征重要性分析,probability
请设置为 JMESPath 表达式 “[*] .probercilities” 以提取所有预测标签的概率。然后,将计算所有标签的特征归因。