Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configurer un Job de traitement SageMaker Clarify
Pour analyser vos données et modèles afin de détecter les biais et l'explicabilité à l'aide de SageMaker Clarify, vous devez configurer une tâche de traitement SageMaker Clarify. Ce guide vous montre comment spécifier le nom du jeu de données en entrée, le nom du fichier de configuration d'analyse et l'emplacement de sortie pour une tâche de traitement. Pour configurer le conteneur de traitement, les entrées de tâches, les sorties, les ressources et les autres paramètres, vous avez deux options. Vous pouvez soit utiliser le SageMaker CreateProcessingJob
API, soit utiliser le SageMaker Python SDK APISageMaker ClarifyProcessor
,
Pour plus d'informations sur les paramètres communs à toutes les tâches de traitement, consultez Amazon SageMaker API Reference.
Les instructions suivantes montrent comment fournir chaque partie de la configuration spécifique de SageMaker Clarify à l'aide du CreateProcessingJob
API.
-
Entrez l'identifiant de recherche uniforme (URI) d'une image de conteneur SageMaker Clarify dans le
AppSpecification
paramètre, comme indiqué dans l'exemple de code suivant.{ "ImageUri": "
the-clarify-container-image-uri
" }Note
Ils URI doivent identifier une image de conteneur SageMaker Clarify prédéfinie.
ContainerEntrypoint
et neContainerArguments
sont pas pris en charge. Pour plus d'informations sur les images de conteneurs SageMaker Clarify, consultezConteneurs SageMaker Clarify préfabriqués. -
Spécifiez à la fois la configuration de votre analyse et les paramètres de votre jeu de données en entrée dans le paramètre
ProcessingInputs
.-
Spécifiez l'emplacement du fichier de configuration de l'JSONanalyse, qui inclut les paramètres de l'analyse des biais et de l'analyse d'explicabilité. Le paramètre
InputName
de l'objetProcessingInput
doit êtreanalysis_config
tel qu'illustré dans l'exemple de code suivant.{ "InputName": "analysis_config", "S3Input": { "S3Uri": "
s3://your-bucket/analysis_config.json
", "S3DataType": "S3Prefix", "S3InputMode": "File", "LocalPath": "/opt/ml/processing/input/config
" } }Pour plus d'informations sur le schéma du fichier de configuration d'analyse, consultezFichiers de configuration d'analyse.
-
Spécifiez l'emplacement du jeu de données en entrée. Le paramètre
InputName
de l'objetProcessingInput
doit êtredataset
. Ce paramètre est facultatif si vous avez fourni le "dataset_uri" dans le fichier de configuration d'analyse. Les valeurs suivantes sont requises dans la configurationS3Input
.-
S3Uri
peut être un objet Amazon S3 ou un préfixe S3. -
S3InputMode
doit être de typeFile
. -
S3CompressionType
doit être de typeNone
(valeur par défaut). -
S3DataDistributionType
doit être de typeFullyReplicated
(valeur par défaut). -
S3DataType
peut avoir la valeurS3Prefix
ouManifestFile
. Pour être utiliséManifestFile
, leS3Uri
paramètre doit spécifier l'emplacement d'un fichier manifeste qui suit le schéma indiqué dans la section de SageMaker API référence S3Uri. Ce fichier manifeste doit répertorier les objets S3 contenant les données d'entrée pour la tâche.
Le code suivant montre un exemple de configuration d'entrée.
{ "InputName": "dataset", "S3Input": { "S3Uri": "
s3://your-bucket/your-dataset.csv
", "S3DataType": "S3Prefix", "S3InputMode": "File", "LocalPath": "/opt/ml/processing/input/data
" } } -
-
-
Spécifiez la configuration pour la sortie de la tâche de traitement dans le paramètre
ProcessingOutputConfig
. Un seul objetProcessingOutput
est requis dans la configurationOutputs
. Les conditions suivantes sont requises dans la configuration de sortie :-
OutputName
doit avoir pour valeuranalysis_result
. -
S3Uri
doit être un préfixe S3 de l'emplacement de sortie. -
S3UploadMode
doit être défini surEndOfJob
.
Le code suivant montre un exemple de configuration de sortie.
{ "Outputs": [{ "OutputName": "analysis_result", "S3Output": { "S3Uri": "
s3://your-bucket/result/
", "S3UploadMode": "EndOfJob", "LocalPath": "/opt/ml/processing/output
" } }] } -
-
Spécifiez la configuration
ClusterConfig
pour les ressources que vous utilisez dans votre tâche de traitement dans le paramètreProcessingResources
. Les paramètres suivants sont nécessaires à l'intérieur de l'objetClusterConfig
.-
InstanceCount
indique le nombre d'instances de calcul dans le cluster qui exécute la tâche de traitement. Spécifiez une valeur supérieure à1
pour activer le traitement distribué. -
InstanceType
fait référence aux ressources qui exécutent votre tâche de traitement. SageMaker SHAPL'analyse étant gourmande en ressources informatiques, l'utilisation d'un type d'instance optimisé pour le calcul devrait améliorer le temps d'exécution de l'analyse. La tâche de traitement SageMaker Clarify n'utilise pasGPUs.
Le code suivant montre un exemple de configuration de ressource.
{ "ClusterConfig": { "InstanceCount":
1
, "InstanceType": "ml.m5.xlarge
", "VolumeSizeInGB":20
} } -
-
Spécifiez la configuration du réseau que vous utilisez dans votre tâche de traitement au sein de l'objet
NetworkConfig
. Les valeurs suivantes sont requises dans la configuration.-
EnableNetworkIsolation
doit être défini surFalse
(par défaut) afin que SageMaker Clarify puisse invoquer un point de terminaison, si nécessaire, pour les prédictions. -
Si le modèle ou le point de terminaison que vous avez fourni à la tâche SageMaker Clarify se trouve dans un Amazon Virtual Private Cloud (AmazonVPC), la tâche SageMaker Clarify doit également se trouver dans le même environnementVPC. Spécifiez l'VPCutilisation VpcConfig. En outre, ils VPC doivent disposer de points de terminaison vers un compartiment, un SageMaker service et un service SageMaker d'exécution Amazon S3.
Si le traitement distribué est activé, vous devez également autoriser la communication entre les différentes instances d'une même tâche de traitement. Configurez une règle pour votre groupe de sécurité qui autorise les connexions entrantes entre les membres du même groupe de sécurité. Pour de plus amples informations, veuillez consulter Donnez à Amazon SageMaker Clarify Jobs l'accès aux ressources de votre Amazon VPC.
Le code suivant montre un exemple de configuration réseau.
{ "EnableNetworkIsolation": False, "VpcConfig": { ... } }
-
-
Définissez la durée maximale d'exécution de la tâche à l'aide du paramètre
StoppingCondition
. La durée maximale d'exécution d'une tâche SageMaker Clarify est de7
jours ou de604800
secondes. Si la tâche ne peut pas être terminée dans ce délai, elle sera arrêtée et aucun résultat d'analyse ne sera fourni. Par exemple, la configuration suivante limite la durée maximale d'exécution de la tâche à 3 600 secondes.{ "MaxRuntimeInSeconds": 3600 }
-
Spécifiez un IAM rôle pour le
RoleArn
paramètre. Le rôle doit entretenir une relation de confiance avec Amazon SageMaker. Il peut être utilisé pour effectuer les SageMaker API opérations répertoriées dans le tableau suivant. Nous vous recommandons d'utiliser la politique SageMakerFullAccess gérée par Amazon, qui accorde un accès complet à SageMaker. Pour plus d'informations sur cette politique, consultezAWS politique gérée : AmazonSageMakerFullAccess. Si vous avez des préoccupations concernant l'octroi d'un accès complet, les autorisations minimales requises varient selon que vous fournissez un modèle ou un nom de point de terminaison. L'utilisation d'un nom de point de terminaison permet d'accorder moins d'autorisations à SageMaker.Le tableau suivant contient les API opérations utilisées par la tâche de traitement SageMaker Clarify. Un
X
sous-nom du modèle et le nom du point de terminaison indiquent l'APIopération requise pour chaque entrée.APIFonctionnement Nom du modèle Nom du point de terminaison Objectif d'utilisation X
Les balises de la tâche sont appliquées au point de terminaison miroir.
X
Créer la configuration du point de terminaison en utilisant le nom du modèle que vous avez fourni.
X
Créer un point de terminaison miroir en utilisant la configuration du point de terminaison.
X
X
Décrivez le point de terminaison en fonction de son état, le point de terminaison doit être InService destiné à répondre aux demandes.
X
X
Invoquer le point de terminaison pour des prédictions.
Pour plus d’informations sur les autorisations requises, consultez SageMaker APIAutorisations Amazon : référence sur les actions, les autorisations et les ressources.
Pour plus d'informations sur le transfert de rôles à SageMaker, consultezTransmission de rôles.
Une fois que vous avez défini les éléments individuels de la configuration de la tâche de traitement, combinez-les pour configurer la tâche.
L'exemple de code suivant montre comment lancer une tâche de traitement SageMaker Clarify à l'aide de 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
", )
Pour un exemple de bloc-notes contenant des instructions pour exécuter une tâche de traitement SageMaker Clarify à l'aide AWS SDK de Python, voir Équité et explicabilité avec SageMaker Clarify à l'aide de AWS SDK Python
Vous pouvez également configurer une tâche de traitement SageMaker Clarify en utilisant le SageMaker ClarifyProcessor