使用 scikit-learn 进行数据处理 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 scikit-learn 进行数据处理

有关演示如何使用提供和维护的 Docker 镜像运行 scikit-learn 脚本来预处理数据和评估模型的示例笔记本,请参 SageMaker 阅 scikit-learn 处理。要使用此笔记本,你需要安装用于处理的 SageMaker Python SDK。

此笔记本使用 SageMaker Python SDK 中的SKLearnProcessor类运行处理作业,以运行你提供的 scikit-learn 脚本。该脚本预处理数据,使用 SageMaker 训练作业训练模型,然后运行处理作业来评估训练后的模型。处理作业将估计模型在生产中的预期效果。

要详细了解如何将 SageMaker Python 开发工具包与处理容器配合使用,请参阅 SageMaker Python 软件开发工具包。有关可用于处理作业的预构建 Docker 映像的完整列表,请参阅 Docker 注册表路径和示例代码

以下代码示例演示笔记本如何使用 SKLearnProcessor 并借助由 SageMaker 提供和维护的 Docker 映像(而不是您自己的 Docker 映像)运行您自己的 scikit-learn 脚本。

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')] )

要在 Amazon Processing 上使用 Scikit-Learn 并行 SageMaker 处理数据,您可以通过 S3 密钥对输入对象进行分片,方法是在s3_data_distribution_type='ShardedByS3Key'中进行设置,ProcessingInput这样每个实例接收的输入对象数量大致相同。