Exécution d’une tâche de traitement avec scikit-learn - Amazon SageMaker AI

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.

Exécution d’une tâche de traitement avec scikit-learn

Vous pouvez utiliser Amazon SageMaker Processing pour traiter des données et évaluer des modèles avec des scripts scikit-learn dans une image Docker fournie par Amazon SageMaker AI. Vous trouverez ci-dessous un exemple d’exécution d’une tâche Amazon SageMaker Processing à l’aide de scikit-learn.

Pour obtenir un exemple de bloc-notes qui montre comment exécuter des scripts scikit-learn à l’aide d’une image Docker fournie et maintenue par SageMaker AI afin de prétraiter les données et évaluer les modèles, consultez scikit-learn Processing. Pour utiliser ce bloc-notes, vous devez installer le kit SageMaker AI Python SDK pour Processing.

Ce bloc-notes exécute une tâche de traitement à l'aide de la classe SKLearnProcessor du SDK SageMaker Python pour exécuter un script scikit-learn que vous fournissez. Le script prétraite les données, entraîne un modèle à l'aide d'une tâche d'entraînement SageMaker, puis exécute une tâche de traitement pour évaluer le modèle entraîné. La tâche de traitement évalue la performance attendue du modèle en production.

Pour en savoir plus sur l’utilisation du kit SageMaker Python SDK avec des conteneurs Processing, consultez le kit SageMaker Python SDK. Pour obtenir la liste complète des images Docker prédéfinies disponibles pour les tâches de traitement, consultez Chemins de registre Docker et exemple de code.

L’exemple de code suivant montre comment le bloc-notes utilise SKLearnProcessor pour exécuter votre propre script scikit-learn à l’aide d’une image Docker fournie et maintenue par SageMaker AI au lieu de votre propre image Docker.

from sagemaker.sklearn.processing import SKLearnProcessor from sagemaker.processing import ProcessingInput, ProcessingOutput sklearn_processor = SKLearnProcessor(framework_version='0.20.0', role=role, instance_type='ml.m5.xlarge', instance_count=1) sklearn_processor.run(code='preprocessing.py', inputs=[ProcessingInput( source='s3://path/to/my/input-data.csv', destination='/opt/ml/processing/input')], outputs=[ProcessingOutput(source='/opt/ml/processing/output/train'), ProcessingOutput(source='/opt/ml/processing/output/validation'), ProcessingOutput(source='/opt/ml/processing/output/test')] )

Pour traiter les données en parallèle à l'aide de Scikit-Learn sur Amazon SageMaker Processing, vous pouvez répartir les objets d'entrée par clé S3 en définissant s3_data_distribution_type='ShardedByS3Key' dans une ProcessingInput de sorte que chaque instance reçoive environ le même nombre d'objets d'entrée.