Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Jalankan Skrip dengan Wadah Pemrosesan Anda Sendiri
Anda dapat menggunakan skrip scikit-learn untuk memproses data dan mengevaluasi model Anda. Untuk melihat cara menjalankan skrip scikit-learn untuk melakukan tugas-tugas ini, lihat buku catatan sampel Pemrosesan scikit-learn. ScriptProcessor kelas dari Amazon SageMaker Python SDK untuk Pemrosesan.
Contoh berikut menunjukkan alur kerja umum untuk menggunakan wadah pemrosesan Anda sendiri. Alur kerja menunjukkan cara membuat gambar Anda sendiri, membangun wadah Anda, dan menjalankan skrip preprocessing Python dengan wadah. Pekerjaan pemrosesan memproses data input Anda dan menyimpan data yang diproses di Amazon Simple Storage Service (Amazon S3).
Sebelum menggunakan contoh berikut, Anda harus memiliki data input Anda sendiri dan skrip Python yang disiapkan untuk memproses data Anda. Untuk contoh proses ini yang dipandu dari ujung ke ujung, lihat kembali buku catatan sampel Pem rosesan scikit-learn.
-
Buat direktori Docker dan tambahkan Dockerfile yang digunakan untuk membuat wadah pemrosesan. Instal panda dan scikit-learn ke dalamnya. (Anda juga dapat menginstal dependensi Anda sendiri dengan
RUNperintah serupa.)mkdir docker %%writefile docker/Dockerfile FROM python:3.7-slim-buster RUN pip3 install pandas==0.25.3 scikit-learn==0.21.3 ENV PYTHONUNBUFFERED=TRUE ENTRYPOINT ["python3"] -
Buat wadah menggunakan perintah docker, buat repositori Amazon Elastic Container Registry (Amazon ECR), dan dorong gambar ke Amazon ECR.
import boto3 account_id = boto3.client('sts').get_caller_identity().get('Account') region = boto3.Session().region_name ecr_repository = 'sagemaker-processing-container' tag = ':latest' processing_repository_uri = '{}.dkr.ecr.{}.amazonaws.com/{}'.format(account_id, region, ecr_repository + tag) # Create ECR repository and push docker image !docker build -t $ecr_repository docker !aws ecr get-login-password --region {region} | docker login --username AWS --password-stdin {account_id}.dkr.ecr.{region}.amazonaws.com !aws ecr create-repository --repository-name $ecr_repository !docker tag {ecr_repository + tag} $processing_repository_uri !docker push $processing_repository_uri -
Siapkan dan jalankan pekerjaan pemrosesan. Ganti
image_uridengan URI untuk gambar yang Anda buat, dan gantirole_arndengan ARN untuk AWS Identity and Access Management peran yang memiliki akses ke bucket Amazon S3 target Anda. Gantipreprocessing.pydengan nama skrip pemrosesan Python Anda sendiri, dan gantis3://path/to/my/input-data.csvdengan jalur Amazon S3 ke data input Anda.from sagemaker.core.resources import ProcessingJob processing_job = ProcessingJob.create( processing_job_name="my-processing-job", role_arn='role_arn', app_specification={ "image_uri": '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"}} ] } )
Anda dapat menggunakan prosedur yang sama dengan pustaka atau dependensi sistem lainnya. Anda juga dapat menggunakan gambar Docker yang ada. Ini termasuk gambar yang Anda jalankan di platform lain seperti Kuber