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à.
Configurazione di un processo di elaborazione SageMaker Clarify
Per analizzare i dati e i modelli per verificare eventuali distorsioni e spiegabilità utilizzando SageMaker Clarify, è necessario configurare un processo di elaborazione Clarify. SageMaker Questa guida mostra come specificare il nome del set di dati di input, il nome del file di configurazione dell'analisi e la posizione di output per un processo di elaborazione. Per configurare il container di elaborazione, gli input, gli output, le risorse e altri parametri del processo, sono disponibili due opzioni. Puoi usare o usare SageMaker Python SageMaker CreateProcessingJob
API SDK APISageMaker ClarifyProcessor
,
Per informazioni sui parametri comuni a tutti i processi di elaborazione, consulta Amazon SageMaker API Reference.
Le seguenti istruzioni mostrano come fornire ciascuna parte della configurazione specifica di SageMaker Clarify utilizzando. CreateProcessingJob
API
-
Inserite l'identificatore di ricerca uniforme (URI) di un'immagine del contenitore SageMaker Clarify all'interno del
AppSpecification
parametro, come mostrato nel seguente esempio di codice.{ "ImageUri": "
the-clarify-container-image-uri
" }Nota
URIDevono identificare un'immagine del contenitore SageMaker Clarify preconfigurata.
ContainerEntrypoint
e nonContainerArguments
sono supportati. Per ulteriori informazioni sulle immagini dei contenitori SageMaker Clarify, Contenitori Clarify predefiniti SageMaker consultate. -
Specifica sia la configurazione per l'analisi che i parametri per il set di dati di input all'interno del parametro
ProcessingInputs
.-
Specificate la posizione del file di configurazione dell'JSONanalisi, che include i parametri per l'analisi delle distorsioni e l'analisi della spiegabilità. Il parametro
InputName
dell'oggettoProcessingInput
deve essereanalysis_config
come mostrato nel seguente esempio di codice.{ "InputName": "analysis_config", "S3Input": { "S3Uri": "
s3://your-bucket/analysis_config.json
", "S3DataType": "S3Prefix", "S3InputMode": "File", "LocalPath": "/opt/ml/processing/input/config
" } }Per ulteriori informazioni sullo schema del file di configurazione dell'analisi, vedere. File di configurazione dell'analisi
-
Specifica la posizione del set di dati di input. Il parametro
InputName
dell'oggettoProcessingInput
deve esseredataset
. Questo parametro è facoltativo se hai fornito "dataset_uri" nel file di configurazione dell'analisi. Nella configurazioneS3Input
sono richiesti i seguenti valori.-
S3Uri
può essere un oggetto Amazon S3 o un prefisso S3. -
S3InputMode
deve essere di tipoFile
. -
S3CompressionType
deve essere di tipoNone
(il valore predefinito). -
S3DataDistributionType
deve essere di tipoFullyReplicated
(il valore predefinito). -
S3DataType
può essereS3Prefix
oManifestFile
. Per utilizzarloManifestFile
, ilS3Uri
parametro deve specificare la posizione di un file manifesto che segue lo schema riportato nella sezione di SageMaker API riferimento S3Uri. Questo file manifest deve elencare gli oggetti S3 che contengono i dati di input per il processo.
Il codice seguente mostra un esempio di configurazione di input.
{ "InputName": "dataset", "S3Input": { "S3Uri": "
s3://your-bucket/your-dataset.csv
", "S3DataType": "S3Prefix", "S3InputMode": "File", "LocalPath": "/opt/ml/processing/input/data
" } } -
-
-
Specifica la configurazione per l'output del processo di elaborazione all'interno del parametro
ProcessingOutputConfig
. Nella configurazioneOutputs
è richiesto un singolo oggettoProcessingOutput
. Per la configurazione di output sono richiesti i seguenti elementi:-
OutputName
deve essereanalysis_result
. -
S3Uri
deve essere un prefisso S3 per la posizione di output. -
S3UploadMode
deve essere impostato suEndOfJob
.
Il seguente codice mostra un esempio di configurazione di output.
{ "Outputs": [{ "OutputName": "analysis_result", "S3Output": { "S3Uri": "
s3://your-bucket/result/
", "S3UploadMode": "EndOfJob", "LocalPath": "/opt/ml/processing/output
" } }] } -
-
Specifica la configurazione
ClusterConfig
per le risorse utilizzate nel processo di elaborazione all'interno del parametroProcessingResources
. I seguenti parametri sono obbligatori all'interno dell'oggettoClusterConfig
.-
InstanceCount
specifica il numero di istanze di calcolo nel cluster che esegue il processo di elaborazione. Per attivare l'elaborazione distribuita, specifica un valore maggiore di1
. -
InstanceType
si riferisce alle risorse che eseguono il processo di elaborazione. Poiché SageMaker SHAP l'analisi richiede molte risorse di calcolo, l'utilizzo di un tipo di istanza ottimizzato per il calcolo dovrebbe migliorare il tempo di esecuzione dell'analisi. Il processo di elaborazione di SageMaker Clarify non utilizza. GPUs
Il seguente codice mostra un esempio di configurazione delle risorse.
{ "ClusterConfig": { "InstanceCount":
1
, "InstanceType": "ml.m5.xlarge
", "VolumeSizeInGB":20
} } -
-
Specifica la configurazione della rete utilizzata nel processo di elaborazione all'interno dell'oggetto
NetworkConfig
. Nella configurazione sono richiesti i seguenti valori.-
EnableNetworkIsolation
deve essere impostato suFalse
(impostazione predefinita) in modo che SageMaker Clarify possa richiamare un endpoint, se necessario, per le previsioni. -
Se il modello o l'endpoint che hai fornito al job SageMaker Clarify si trova all'interno di un Amazon Virtual Private Cloud VPC (Amazon), anche il job SageMaker Clarify deve trovarsi nello stesso. VPC Specificare l'utilizzo. VPC VpcConfig Inoltre, VPC devono disporre di endpoint per un bucket SageMaker , un servizio e un servizio SageMaker Runtime di Amazon S3.
Se è attivata l'elaborazione distribuita, è necessario consentire anche la comunicazione tra diverse istanze nello stesso processo di elaborazione. Configura una regola per il gruppo di sicurezza che consente connessioni in entrata tra i membri dello stesso gruppo di sicurezza. Per ulteriori informazioni, consulta Consenti ad Amazon SageMaker Clarify Jobs di accedere alle risorse del tuo Amazon VPC.
Il codice seguente mostra un esempio di configurazione della rete.
{ "EnableNetworkIsolation": False, "VpcConfig": { ... } }
-
-
Imposta il tempo massimo di esecuzione del processo utilizzando il parametro
StoppingCondition
. Il periodo massimo di esecuzione di un job di SageMaker Clarify è di giorni o secondi.7
604800
Se il lavoro non può essere completato entro questo limite di tempo, verrà interrotto e non verranno forniti risultati di analisi. Ad esempio, la configurazione seguente limita il tempo massimo di esecuzione del processo a 3600 secondi.{ "MaxRuntimeInSeconds": 3600 }
-
Specificate un IAM ruolo per il parametro.
RoleArn
Il ruolo deve avere un rapporto di fiducia con Amazon SageMaker. Può essere utilizzato per eseguire le SageMaker API operazioni elencate nella tabella seguente. Ti consigliamo di utilizzare la policy SageMakerFullAccess gestita da Amazon, che garantisce l'accesso completo a SageMaker. Per ulteriori informazioni su questa politica, consultaAWS politica gestita: AmazonSageMakerFullAccess. Se hai dubbi sulla concessione dell'accesso completo, le autorizzazioni minime richieste dipendono dall'eventuale fornitura di un modello o un nome di endpoint. L'utilizzo di un nome di endpoint consente di concedere un minor numero di autorizzazioni a. SageMakerLa tabella seguente contiene API le operazioni utilizzate dal processo di elaborazione di SageMaker Clarify.
X
In Nome modello e nome endpoint viene indicata l'APIoperazione richiesta per ogni input.APIOperazione Nome modello Nome endpoint Finalità d'utilizzo X
I tag del processo vengono applicati all'endpoint shadow.
X
Crea la configurazione dell'endpoint utilizzando il nome del modello che hai fornito
X
Crea un endpoint shadow usando la configurazione dell'endpoint.
X
X
Descrivi l'endpoint per il suo stato, l'endpoint deve servire InService le richieste.
X
X
Consente di invocare l'endpoint per le previsioni.
Per ulteriori informazioni sulle autorizzazioni richieste, consultare SageMaker APIAutorizzazioni Amazon: riferimento ad azioni, autorizzazioni e risorse.
Per ulteriori informazioni sul passaggio di ruoli a SageMaker, vedere. Passaggio dei ruoli
Dopo aver creato le singole parti della configurazione del processo di elaborazione, combinale per configurare il processo.
Il seguente esempio di codice mostra come avviare un processo di elaborazione SageMaker Clarify utilizzando AWS SDKfor Python
sagemaker_client.create_processing_job( ProcessingJobName="
your-clarify-job-name
", AppSpecification={ "ImageUri": "the-clarify-container-image-uri
", }, ProcessingInputs=[{ "InputName": "analysis_config", "S3Input": { "S3Uri": "s3://your-bucket/analysis_config.json
", "S3DataType": "S3Prefix", "S3InputMode": "File", "LocalPath": "/opt/ml/processing/input/config
", }, }, { "InputName": "dataset", "S3Input": { "S3Uri": "s3://your-bucket/your-dataset.csv
", "S3DataType": "S3Prefix", "S3InputMode": "File", "LocalPath": "/opt/ml/processing/input/data
", }, }, ], ProcessingOutputConfig={ "Outputs": [{ "OutputName": "analysis_result", "S3Output": { "S3Uri": "s3://your-bucket/result/
", "S3UploadMode": "EndOfJob", "LocalPath": "/opt/ml/processing/output
", }, }], }, ProcessingResources={ "ClusterConfig": { "InstanceCount":1
, "InstanceType": "ml.m5.xlarge
", "VolumeSizeInGB":20
, }, }, NetworkConfig={ "EnableNetworkIsolation": False, "VpcConfig": { ... }, }, StoppingCondition={ "MaxRuntimeInSeconds":3600
, }, RoleArn="arn:aws:iam::<your-account-id>:role/service-role/AmazonSageMaker-ExecutionRole
", )
Per un notebook di esempio con istruzioni per eseguire un processo di elaborazione SageMaker Clarify utilizzando AWS SDK per Python, vedete Fairness and Explainability with SageMaker
È inoltre possibile configurare un processo di elaborazione di SageMaker Clarify utilizzando SageMaker Python SDKAPI. SageMaker ClarifyProcessor