本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
EnableExplanations
運算式
EnableExplanations
參數為JMESPath
SageMaker Clarify 會將每筆記錄的模型容器輸出還原序列化為 JSON 相容資料結構,然後使用 EnableExplanations
參數來評估資料。
備註
根據模型容器輸出的格式,記錄有兩個選項。
-
如果模型容器輸出為 CSV 格式,則會將記錄載入為 JSON 陣列。
-
如果模型容器輸出為 JSON Lines 格式,則會將記錄載入為 JSON 物件。
EnableExplanations
參數是可以在 InvokeEndpoint
或 CreateEndpointConfig
作業期間傳遞的 JMESPath 運算式。如果您提供的 JMESPath 運算式無效,則端點建立將會失敗。如果運算式有效,但運算式評估結果未預期,則會成功建立端點,但在調用端點時會產生錯誤。使用 InvokeEndpoint
API 測試 EnableExplanations
運算式,然後將其套用至端點組態。
以下是有效 EnableExplanations
運算式的一些範例。在這些範例中,JMESPath 運算式會使用反引號字元將常值括起來。例如,`true`
表示 true。
運算式 (字串表示) | 模型容器輸出 (字串表示) | 評估結果 (布林值) | 意義 |
---|---|---|---|
'`true`' |
(N/A) |
True |
無條件啟動線上可解釋性。 |
'`false`' |
(N/A) |
False |
無條件停用線上可解釋性。 |
'[1]>`0.5`' |
'1,0.6' |
True |
對於每筆記錄,模型容器輸出其預測的標籤和機率。如果記錄的機率 (索引 1) 大於 0.5,則解釋該記錄。 |
'機率 >`0.5`' |
'{"predicted_label":1,"probability":0.6}' |
True |
對於每筆記錄,模型容器都會輸出 JSON 資料。如果一筆記錄的機率大於 0.5,則對其進行解釋。 |
'!contains(probabilities[:-1], max(probabilities))' |
'{"probabilities": [0.4, 0.1, 0.4], "labels":["cat","dog","fish"]}' |
False |
對於多類別模型:如果記錄的預測標籤 (具有最大機率值的類別) 是最後一個類別,則解釋該記錄。從字面上看,該運算式意味著最大機率值不在機率清單中 (除了最後一個)。 |