

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

# ベースラインの作成
<a name="model-monitor-create-baseline"></a>

統計と制約のベースライン計算は、データのドリフトやその他のデータ品質の問題を検出できる標準として必要とされます。Model Monitor には、CSV およびフラット JSON 入力の制約を自動的に推奨する機能を提供する組み込みコンテナが用意されています。この *sagemaker-model-monitor-analyzer* コンテナは、ベースラインに対する制約の検証などのさまざまなモデルモニタリング機能や Amazon CloudWatch メトリクスの出力を提供します。このコンテナは Spark バージョン 3.3.0 に基づいており、[Deequ](https://github.com/awslabs/deequ) バージョン 2.0.2 で構築されています。ベースラインデータセット内のすべての列名が Spark に準拠している必要があります。列名には小文字のみを使用でき、特殊文字は「`_`」のみ使用できます。

モデルのトレーニングに使用したトレーニングデータセットは、通常、適切なベースラインデータセットです。トレーニングデータセットデータスキーマと推論データセットスキーマは、正確に一致する必要があります (特徴量の数と順序)。予測/出力の列は、トレーニングデータセットの 1 列目と見なされます。トレーニングデータセットから、一連のベースライン制約を推奨し、データを探索するための記述統計を生成するように SageMaker AI に指示することができます。この例では、この例に含まれている事前トレーニング済みモデルのトレーニングに使用されたトレーニングデータセットをアップロードします。Amazon S3 にトレーニングデータセットをすでに保存している場合は、それを直接指定できます。

**トレーニングデータセットからベースラインを作成するには** 

トレーニングデータを準備して Amazon S3 に保存したら、[Amazon SageMaker Python SDK](https://sagemaker.readthedocs.io/en/stable) を使用して `DefaultModelMonitor.suggest_baseline(..)` のベースライン処理ジョブを開始します。このジョブでは、ベースライン統計を生成してデータセットのベースライン制約を推奨し、指定した `output_s3_uri` の場所にこれらを書き込む [Amazon SageMaker Model Monitor のビルド済みコンテナ](model-monitor-pre-built-container.md) を使用します。

```
from sagemaker.model_monitor import DefaultModelMonitor
from sagemaker.model_monitor.dataset_format import DatasetFormat

my_default_monitor = DefaultModelMonitor(
    role=role,
    instance_count=1,
    instance_type='ml.m5.xlarge',
    volume_size_in_gb=20,
    max_runtime_in_seconds=3600,
)

my_default_monitor.suggest_baseline(
    baseline_dataset=baseline_data_uri+'/training-dataset-with-header.csv',
    dataset_format=DatasetFormat.csv(header=True),
    output_s3_uri=baseline_results_uri,
    wait=True
)
```

**注記**  
トレーニングデータセット内の特徴/列の名前を 1 行目として指定し、上記のコードサンプルのように `header=True` オプションを設定した場合、SageMaker AI は制約および統計ファイル内の特徴名を使用します。

データセットのベースライン統計は statistics.json ファイルに含まれており、推奨ベースライン制約は `output_s3_uri` で指定した場所の constraints.json ファイルに含まれています。

表形式データセットの統計および制約の出力ファイル


| ファイル名 | 説明 | 
| --- | --- | 
| statistics.json |  このファイルには、分析対象のデータセット内の各フィーチャに対する列状の統計が含まれます。ファイルのスキーマの詳細については、「[統計のスキーマ (statistics.json ファイル)](model-monitor-byoc-statistics.md)」を参照してください。  | 
| constraints.json |  このファイルには、確認されたフィーチャの制約が含まれます。ファイルのスキーマの詳細については、「[制約のスキーマ (constraints.json ファイル)](model-monitor-byoc-constraints.md)」を参照してください。  | 

[Amazon SageMaker Python SDK](https://sagemaker.readthedocs.io/en/stable) には、ベースラインの統計と制約を生成するための便利な関数が用意されています。しかし、この目的のために代わりに処理ジョブを直接呼び出す場合は、次の例のように `Environment` マップを設定する必要があります。

```
"Environment": {
    "dataset_format": "{\"csv\”: { \”header\”: true}",
    "dataset_source": "/opt/ml/processing/sm_input",
    "output_path": "/opt/ml/processing/sm_output",
    "publish_cloudwatch_metrics": "Disabled",
}
```