翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
概要: ScriptProcessor
と SageMaker 地理空間コンテナを使用して処理ジョブを実行する
SageMaker 地理空間は、専用の処理コンテナ を提供します081189585635.dkr.ecr.us-west-2.amazonaws.com/sagemaker-geospatial-v1-0:latest
。このコンテナは、Amazon SageMaker Processing でジョブを実行するときに使用できます。Amazon SageMaker Python SDK for Processing を通じて利用可能な ScriptProcessor
image_uri
。
注記
処理ジョブの開始時にResourceLimitExceeded
エラーが発生した場合は、クォータの引き上げをリクエストする必要があります。Service Quotas クォータ引き上げリクエストを開始するには、Service Quotas ユーザーガイドの「クォータ引き上げのリクエストService Quotas」を参照してください。
ScriptProcessor
を使用するための前提条件
-
を作成しました Python 地理空間 ML ワークロードを指定する スクリプト。
-
実行 SageMaker ロールに必要な Amazon S3 バケットへのアクセス権を付与しました。
-
コンテナにインポートするデータを準備します。Amazon SageMaker Processing ジョブは、 を
"ManifestFile"
または にs3_data_type
等しく設定することをサポートします"S3Prefix"
。
次の手順は、地理空間コンテナを使用して のインスタンスを作成し、Amazon SageMaker Processing SageMaker ジョブScriptProcessor
を送信する方法を示しています。
SageMaker 地理空間コンテナを使用してScriptProcessor
インスタンスを作成し、Amazon SageMaker Processing ジョブを送信するには
-
SageMaker 地理空間イメージを使用して
ScriptProcessor
クラスのインスタンスをインスタンス化します。from sagemaker.processing import ScriptProcessor, ProcessingInput, ProcessingOutput sm_session = sagemaker.session.Session() execution_role_arn = sagemaker.get_execution_role() # purpose-built geospatial container image_uri =
'081189585635.dkr.ecr.us-west-2.amazonaws.com/sagemaker-geospatial-v1-0:latest'
script_processor = ScriptProcessor( command=['python3'], image_uri=image_uri, role=execution_role_arn
, instance_count=4, instance_type='ml.m5.4xlarge', sagemaker_session=sm_session
)置換
execution_role_arn
Amazon S3 およびその他の に保存されている入力データにアクセスできる実行ロールARNの SageMaker を持つ Amazon S3 AWS 処理ジョブで呼び出す サービス。instance_count
および は、処理ジョブの要件instance_type
に合わせて更新できます。 -
処理ジョブを開始するには、
.run()
メソッドを使用します。# Can be replaced with any S3 compliant string for the name of the folder. s3_folder =
geospatial-data-analysis
# Use .default_bucket() to get the name of the S3 bucket associated with your current SageMaker session s3_bucket = sm_session.default_bucket() s3_manifest_uri = f's3://{s3_bucket}/{s3_folder}/manifest.json' s3_prefix_uri = f's3://{s3_bucket}/{s3_folder}/image-prefix
script_processor.run( code='preprocessing.py
', inputs=[ ProcessingInput( source=s3_manifest_uri
|s3_prefix_uri
, destination='/opt/ml/processing/input_data/', s3_data_type="ManifestFile"
|"S3Prefix"
, s3_data_distribution_type="ShardedByS3Key"
|"FullyReplicated"
) ], outputs=[ ProcessingOutput( source='/opt/ml/processing/output_data/', destination=s3_output_prefix_url
) ] )-
置換
preprocessing.py
独自の Python データ処理スクリプトの名前。 -
処理ジョブは、入力データをフォーマットするための 2 つの方法をサポートしています。処理ジョブのすべての入力データを指すマニフェストファイルを作成するか、個々のデータ入力に共通のプレフィックスを使用できます。に
s3_manifest_uri
等しいマニフェストファイルセットを作成した場合"ManifestFile"
。にs3_manifest_uri
等しいファイルプレフィックスセットを使用した場合"S3Prefix"
。を使用してデータへのパスを指定しますsource
。 -
処理ジョブデータは、次の 2 つの方法で配布できます。
-
を
s3_data_distribution_type
に等しく設定して、すべての処理インスタンスにデータを分散しますFullyReplicated
。 -
を に
s3_data_distribution_type
等しく設定して、Amazon S3 キーに基づいてデータをシャードに分散しますShardedByS3Key
。1ShardedByS3Key
つのデータシャードを使用すると、各処理インスタンスに送信されます。
-
スクリプトを使用して SageMaker 地理空間データを処理できます。そのスクリプトは、ステップ 3: を計算できるスクリプトの作成でNDVI確認できます。
.run()
API オペレーションの詳細については、run
「Amazon SageMaker Python for Processing 」のSDK「」を参照してください。 -
処理ジョブの進行状況をモニタリングするために、 ProcessingJobs
クラスは describe
DescribeProcessingJob
API呼び出しからのレスポンスを返します。詳細については、DescribeProcessingJob
「Amazon SageMaker API リファレンス」の「」を参照してください。
次のトピックでは、 SageMaker 地理空間コンテナを使用してScriptProcessor
クラスのインスタンスを作成する方法と、それを使用して で正規化された差分植物インデックス (NDVI) を計算する方法を示します。Sentinel-2 イメージ。