

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# 合成データセット
<a name="clarify-online-explainability-create-endpoint-synthetic"></a>

SageMaker Clarify はカーネル SHAP アルゴリズムを使用しています。レコード (サンプルまたはインスタンスとも呼ばれる) と SHAP 設定が与えられると、説明機能はまず合成データセットを生成します。次に、SageMaker Clarify はモデルコンテナにデータセットの予測を問い合わせてから、特徴量属性を計算して返します。合成データセットのサイズは、Clarify の説明機能のランタイムに影響します。合成データセットが大きいほど、小さい合成データセットよりもモデル予測の取得に時間がかかります。

 合成データセットのサイズは次の式で決定されます。

```
Synthetic dataset size = SHAP baseline size * n_samples
```

SHAP ベースラインサイズは SHAP ベースラインデータ内のレコード数です。この情報は `ShapBaselineConfig` から取得されます。

`n_samples` のサイズは、説明機能設定内の `NumberOfSamples` パラメータと特徴量の数によって設定されます。特徴量の数が `n_features` の場合、`n_samples` は次のようになります。

```
n_samples = MIN(NumberOfSamples, 2^n_features - 2)
```

`NumberOfSamples` が指定されない場合の `n_samples` は以下のようになります。

```
n_samples = MIN(2*n_features + 2^11, 2^n_features - 2)
```

例えば、10 個の特徴量を含む表形式レコードの SHAP ベースラインサイズは 1 です。`NumberOfSamples` が指定されない場合、合成データセットには 1022 のレコードが含まれます。レコードに 20 の特徴量がある場合、合成データセットには 2088 のレコードが含まれます。

NLP 問題の場合、`n_features` はテキスト以外の特徴量の数にテキスト単位の数を加えたものに等しくなります。

**注記**  
`InvokeEndpoint` API にはリクエストのタイムアウト制限があります。合成データセットが大きすぎる場合、説明機能はこの制限内で計算を完了できない可能性があります。必要に応じて、前述の情報を利用して SHAP のベースラインサイズと `NumberOfSamples` を把握して減らします。モデルコンテナがバッチリクエストを処理するように設定されている場合は、`MaxRecordCount` の値を調整することもできます。