翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
scikit-learn で Processing ジョブを実行する
Amazon SageMaker Processing を使い、Amazon SageMaker AI が提供する Docker イメージの scikit-learn スクリプトを使ってデータを処理し、モデルを評価します。以下は、scikit-learn を使用して Amazon SageMaker Processing ジョブを実行する方法の例を示しています。
SageMaker AI で提供、保守されている Docker イメージを使って scikit-learn スクリプトを実行し、データを前処理してモデルを評価する方法を示すサンプルノートブックについては、scikit-learn 処理
このノートブックは、SageMaker Python SDK を使用して処理ジョブを実行し、指定した scikit-learn スクリプトを実行します。スクリプトはデータを前処理し、SageMaker トレーニングジョブを使ってモデルをトレーニングした後、処理ジョブを実行してトレーニング済みモデルを評価します。処理ジョブは、モデルが本番稼働環境でどのように実行されるかを見積もります。
Processing コンテナで SageMaker Python SDK を使う方法の詳細については、SageMaker Python SDK
次のコード例は、SageMaker AI によって提供および保守されている scikit-learn Docker イメージを使用して処理ジョブを実行する方法を示しています。
from sagemaker.core.resources import ProcessingJob processing_job = ProcessingJob.create( processing_job_name="sklearn-processing", role_arn=role, app_specification={ "image_uri": "sklearn-processing-image-uri", "container_entrypoint": ["python3", "/opt/ml/processing/input/code/preprocessing.py"] }, processing_resources={ "cluster_config": { "instance_count": 1, "instance_type": "ml.m5.xlarge", "volume_size_in_gb": 30 } }, processing_inputs=[ { "input_name": "code", "s3_input": { "s3_uri": "s3://path/to/preprocessing.py", "local_path": "/opt/ml/processing/input/code", "s3_data_type": "S3Prefix", "s3_input_mode": "File" } }, { "input_name": "input-data", "s3_input": { "s3_uri": "s3://path/to/my/input-data.csv", "local_path": "/opt/ml/processing/input", "s3_data_type": "S3Prefix", "s3_input_mode": "File" } } ], processing_output_config={ "outputs": [ {"output_name": "train", "s3_output": {"s3_uri": "s3://output/train", "local_path": "/opt/ml/processing/output/train", "s3_upload_mode": "EndOfJob"}}, {"output_name": "validation", "s3_output": {"s3_uri": "s3://output/validation", "local_path": "/opt/ml/processing/output/validation", "s3_upload_mode": "EndOfJob"}}, {"output_name": "test", "s3_output": {"s3_uri": "s3://output/test", "local_path": "/opt/ml/processing/output/test", "s3_upload_mode": "EndOfJob"}} ] } )
Amazon SageMaker Processing で scikit-learn を使ってデータを並列処理するには、ProcessingInput 内部で s3_data_distribution_type='ShardedByS3Key' を設定し、S3 キーを使って入力オブジェクトをシャードします。これにより、各インスタンスがほぼ同じ数の入力オブジェクトを受け取ることになります。