View a markdown version of this page

Eseguire un processo Processing con scikit-learn - Amazon SageMaker AI

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à.

Eseguire un processo Processing con scikit-learn

Puoi utilizzare Amazon SageMaker Processing per elaborare dati e valutare modelli con script scikit-learn in un'immagine Docker fornita da Amazon AI. SageMaker Di seguito viene fornito un esempio su come eseguire un processo di Amazon SageMaker Processing utilizzando scikit-learn.

Per un taccuino di esempio che mostra come eseguire script scikit-learn utilizzando un'immagine Docker fornita e gestita dall' SageMaker intelligenza artificiale per preelaborare i dati e valutare i modelli, consulta scikit-learn Processing. https://github.com/awslabs/amazon-sagemaker-examples/tree/master/sagemaker_processing/scikit_learn_data_processing_and_model_evaluation Per utilizzare questo notebook, devi installare AI Python SDK for Processing. SageMaker

Questo notebook esegue un processo di elaborazione utilizzando l'SDK SageMaker Python per eseguire uno script scikit-learn fornito dall'utente. Lo script preelabora i dati, addestra un modello utilizzando un processo di SageMaker formazione e quindi esegue un processo di elaborazione per valutare il modello addestrato. Il processo di elaborazione stima il modo in cui il modello dovrebbe funzionare in produzione.

Per saperne di più sull'uso di SageMaker Python SDK con i contenitori Processing, consulta Python SDK. SageMaker Per un elenco completo delle immagini Docker predefinite disponibili per i processi di elaborazione, consulta Percorsi di registro Docker e codice di esempio.

Il seguente esempio di codice mostra come eseguire un processo di elaborazione utilizzando un'immagine Docker scikit-learn fornita e gestita da AI. SageMaker

from sagemaker.core.resources import ProcessingJob processing_job = ProcessingJob.create( processing_job_name="sklearn-processing", role_arn=role, app_specification={ "image_uri": "sklearn-processing-image-uri", "container_entrypoint": ["python3", "/opt/ml/processing/input/code/preprocessing.py"] }, processing_resources={ "cluster_config": { "instance_count": 1, "instance_type": "ml.m5.xlarge", "volume_size_in_gb": 30 } }, processing_inputs=[ { "input_name": "code", "s3_input": { "s3_uri": "s3://path/to/preprocessing.py", "local_path": "/opt/ml/processing/input/code", "s3_data_type": "S3Prefix", "s3_input_mode": "File" } }, { "input_name": "input-data", "s3_input": { "s3_uri": "s3://path/to/my/input-data.csv", "local_path": "/opt/ml/processing/input", "s3_data_type": "S3Prefix", "s3_input_mode": "File" } } ], processing_output_config={ "outputs": [ {"output_name": "train", "s3_output": {"s3_uri": "s3://output/train", "local_path": "/opt/ml/processing/output/train", "s3_upload_mode": "EndOfJob"}}, {"output_name": "validation", "s3_output": {"s3_uri": "s3://output/validation", "local_path": "/opt/ml/processing/output/validation", "s3_upload_mode": "EndOfJob"}}, {"output_name": "test", "s3_output": {"s3_uri": "s3://output/test", "local_path": "/opt/ml/processing/output/test", "s3_upload_mode": "EndOfJob"}} ] } )

Per elaborare i dati in parallelo utilizzando Scikit-Learn Amazon SageMaker Processing, puoi suddividere gli oggetti di input con il tasto S3 impostandolo s3_data_distribution_type='ShardedByS3Key' all'interno di un in ProcessingInput modo che ogni istanza riceva circa lo stesso numero di oggetti di input.