推論パイプラインでバッチ変換を実行する - Amazon SageMaker

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

推論パイプラインでバッチ変換を実行する

データセット全体の推論を取得するには、トレーニングされたモデルに対してバッチ変換を実行します。データセット全体に対して推論を実行するには、リアルタイム処理用として作成し、エンドポイントにデプロイした同じ推論パイプラインモデルを、バッチ変換ジョブで使用できます。パイプライン内のバッチ変換ジョブを実行するには、入力データを Amazon S3 からダウンロードし、そのデータを 1 つ以上の HTTP リクエストで推論パイプラインモデルに送信します。バッチ変換用のデータを準備する方法を示す例については、Linear Learner サンプルノートブックを使用する Amazon SageMaker マルチモデルエンドポイントの「セクション 2-Scikit Learn を使用して未処理の住宅データを前処理する」を参照してください。Amazon SageMaker バッチ変換については、「」を参照してくださいバッチ変換の使用

注記

Amazon SageMaker 組み込みアルゴリズムを含むパイプラインでカスタム Docker イメージを使う場合は、Amazon Elastic Container Registry (ECR) ポリシーが必要です。Amazon ECR リポジトリは、 SageMaker イメージをプルする許可を付与する必要があります。詳細については、「推論パイプラインの Amazon ECR アクセス許可のトラブルシューティングを行う」を参照してください。

以下の例は、Amazon SageMaker Python SDK を使用して変換ジョブを実行する方法を示しています。この例では、model_name は SparkML と XGBoost モデルを組み合わせた推論パイプラインを指します (これは前の例で作成されたものです)。input_data_path で指定された Amazon S3 の場所には、ダウンロードして Spark ML モデルに送信する、CSV 形式の入力データが含まれます。変換ジョブが終了した後、output_data_path で指定された Amazon S3 の場所には、XGBoost モデルによって返された出力データが CSV 形式で含まれます。

import sagemaker input_data_path = 's3://{}/{}/{}'.format(default_bucket, 'key', 'file_name') output_data_path = 's3://{}/{}'.format(default_bucket, 'key') transform_job = sagemaker.transformer.Transformer( model_name = model_name, instance_count = 1, instance_type = 'ml.m4.xlarge', strategy = 'SingleRecord', assemble_with = 'Line', output_path = output_data_path, base_transform_job_name='inference-pipelines-batch', sagemaker_session=sagemaker.Session(), accept = CONTENT_TYPE_CSV) transform_job.transform(data = input_data_path, content_type = CONTENT_TYPE_CSV, split_type = 'Line')