Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Panoramica: esegui i processi di elaborazione utilizzando un contenitore geospaziale ScriptProcessor
SageMaker
SageMaker geospatial fornisce un contenitore di elaborazione appositamente costruito,. 081189585635.dkr.ecr.us-west-2.amazonaws.com/sagemaker-geospatial-v1-0:latest
Puoi utilizzare questo contenitore durante l'esecuzione di un processo con Amazon SageMaker Processing. Quando crei un'istanza della ScriptProcessor
image_uri
Nota
Se ricevi un ResourceLimitExceeded
errore durante il tentativo di avviare un processo di elaborazione, devi richiedere un aumento della quota. Per richiedere un aumento della quota in Service Quotas, consulta Requesting a quota increase in Guida per l'utente di Service Quotas
Prerequisiti per l'utilizzo di ScriptProcessor
-
Hai creato un Python script che specifica il carico di lavoro ML geospaziale.
-
Hai concesso al ruolo di SageMaker esecuzione l'accesso a tutti i bucket Amazon S3 necessari.
-
Preparazione dei dati per l'importazione nel container. I SageMaker processi di elaborazione di Amazon supportano l'impostazione di
s3_data_type
uguale"ManifestFile"
o uguale a"S3Prefix"
.
La procedura seguente mostra come creare un'istanza ScriptProcessor
e inviare un processo di Amazon SageMaker Processing utilizzando il contenitore SageMaker geospaziale.
Per creare un'ScriptProcessor
istanza e inviare un processo di Amazon SageMaker Processing utilizzando un contenitore SageMaker geospaziale
-
Crea un'istanza della
ScriptProcessor
classe utilizzando l'immagine geospaziale: SageMakerfrom 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
)Replace (Sostituisci)
execution_role_arn
con il ruolo ARN di SageMaker esecuzione che ha accesso ai dati di input archiviati in Amazon S3 e a qualsiasi altro AWS servizio che desideri chiamare nel tuo processo di elaborazione. Puoi aggiornareinstance_count
einstance_type
in modo che soddisfino i requisiti del tuo processo di elaborazione. -
Per avviare un processo di elaborazione, utilizza il metodo
.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
) ] )-
Replace (Sostituisci)
preprocessing.py
con il nome del tuo script di elaborazione dati in Python. -
Un processo di elaborazione supporta due metodi per formattare i tuoi dati di input. Puoi creare un file manifest che rimandi a tutti i dati di input per il tuo processo di elaborazione oppure utilizzare un prefisso comune su ogni singolo input di dati. Se hai creato un file manifest, imposta
s3_manifest_uri
uguale a"ManifestFile"
. Se hai utilizzato un prefisso del file, impostas3_manifest_uri
uguale a"S3Prefix"
. Specifica il percorso dei tuoi dati utilizzandosource
. -
Puoi distribuire i dati del tuo processo di elaborazione in due modi:
-
Distribuisci i tuoi dati su tutte le istanze di elaborazione impostando
s3_data_distribution_type
uguale aFullyReplicated
. -
Distribuisci i tuoi dati in shard basati sulla chiave Amazon S3 impostando
s3_data_distribution_type
uguale aShardedByS3Key
. Quando utilizziShardedByS3Key
, a ogni istanza di elaborazione viene inviato uno shard di dati.
-
È possibile utilizzare uno script per elaborare dati SageMaker geospaziali. Questo script può essere trovato nel passaggio 3: Scrittura di uno script in grado di calcolare il. NDVI Per ulteriori informazioni sull'
.run()
APIoperazione,run
consulta Amazon SageMaker Python SDK for Processing. -
Per monitorare l'avanzamento del tuo processo di elaborazione, la classe ProcessingJobs
supporta un metodo describe
DescribeProcessingJob
API chiamata. Per ulteriori informazioni, DescribeProcessingJob
consulta Amazon SageMaker API Reference.
L'argomento successivo mostra come creare un'istanza della ScriptProcessor
classe utilizzando il contenitore SageMaker geospaziale e quindi come utilizzarlo per calcolare il Normalized Difference Vegetation Index () con NDVI Sentinel-2 immagini.