

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 SageMaker Processing 的資料轉換工作負載
<a name="processing-job"></a>

SageMaker Processing 是指 SageMaker AI 在 SageMaker AI 全受管基礎設施上執行資料預先處理和後期處理、特徵工程和模型評估任務的功能。這些任務會做為[處理任務](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ProcessingJob.html)來執行。以下的資訊和資源可供了解 SageMaker Processing。

使用 SageMaker Processing API，資料科學家可以執行指令碼和筆記本來處理、轉換和分析資料集，為機器學習做好準備。結合 SageMaker AI 提供的其他重要機器學習任務時 (例如訓練和託管)，Processing 擁有全管理式機器學習環境的優點，包括 SageMaker AI 內建的所有安全性和合規性支援。您可以靈活地將內建的資料處理容器或使用自有容器用於自訂處理邏輯，然後提交任務以於 SageMaker AI 受管基礎設施上執行。

**注意**  
 您能夠以程式設計方式建立處理任務，方法是以 SageMaker AI 支援的任何語言或使用 AWS CLI來呼叫 [CreateProcessingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html) API 動作。有關此 API 動作如何以您選擇的語言轉換為函式的詳細資訊，請參閱 CreateProcessingJob 的[另請參閱](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html#API_CreateProcessingJob_SeeAlso)一節，並選擇 SDK。例如，對於 Python 使用者，請參閱 SageMaker Python SDK 的 [Amazon SageMaker Processing](https://sagemaker.readthedocs.io/en/stable/amazon_sagemaker_processing.html) 一節。或者，請參閱 適用於 Python (Boto3) 的 AWS SDK中 [create\$1processing\$1job](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/sagemaker/client/create_processing_job.html) 的完整請求語法。

下圖顯示 Amazon SageMaker AI 如何加速處理任務。Amazon SageMaker AI 會從 Amazon Simple Storage Service (Amazon S3) 取得您的指令碼、複製資料，然後提取處理容器。處理任務的基礎設施由 Amazon SageMaker AI 完全管理。提交處理任務後，SageMaker AI 會啟動運算執行個體、處理和分析輸入資料，並在完成後釋放資源。處理任務的輸出會存放在您所指定的 Amazon S3 儲存貯體中。

**注意**  
您的輸入資料必須存放在 Amazon S3 儲存貯體中。或者，您也可以使用 Amazon Athena 或 Amazon Redshift 作為輸入來源。

![\[執行處理任務。\]](http://docs.aws.amazon.com/zh_tw/sagemaker/latest/dg/images/Processing-1.png)


**提示**  
若要了解適用於機器學習 (ML) 訓練和處理任務之分散式運算的最佳實務，請參閱[SageMaker AI 分散式運算最佳實務](distributed-training-options.md)。

## 使用 Amazon SageMaker Processing 範例筆記本
<a name="processing-job-sample-notebooks"></a>

我們提供兩個範例 Jupyter 筆記本，說明如何執行資料預處理、模型評估或同時執行兩者。

如需了解示範如何使用適用於 Processing 之 SageMaker Python SDK 來執行 scikit-learn 指令碼，以執行預先處理資料、模型訓練與評估的範例筆記本，請參閱 [scikit-learn Processing](https://github.com/awslabs/amazon-sagemaker-examples/tree/master/sagemaker_processing/scikit_learn_data_processing_and_model_evaluation)。此筆記本也示範如何使用自有的自訂容器，搭配您自己的 Python 資料庫與其他特定相依性來執行處理工作負載。

如需了解示範如何使用 Amazon SageMaker Processing 搭配 Spark 執行分散式資料預先處理的範例筆記本，請參閱[分散式處理 (Spark)](https://github.com/aws/amazon-sagemaker-examples/blob/main/sagemaker_processing/spark_distributed_data_processing/sagemaker-spark-processing.ipynb)。此筆記本還示範如何在預處理資料集上使用 XGBoost 來訓練回歸模型。

如需如何建立和存取 Jupyter 筆記本執行個體以用於 SageMaker AI 中執行範例的指示，請參閱 [Amazon SageMaker 筆記本執行個體](nbi.md)。建立並開啟筆記本執行個體後，請選擇 **SageMaker AI 範例**索引標籤，查看所有 SageMaker AI 範例清單。若要開啟筆記本，請選擇其**使用**標籤，然後選擇**建立複本**。

## 使用 CloudWatch 日誌和指標監控 Amazon SageMaker Processing 任務
<a name="processing-job-cloudwatch"></a>

Amazon SageMaker Processing 提供 Amazon CloudWatch 日誌和指標來監控處理任務。CloudWatch 提供 CPU、GPU、記憶體、GPU 記憶體和磁碟指標，以及事件記錄。如需詳細資訊，請參閱[Amazon CloudWatch 中的 Amazon SageMaker AI 指標](monitoring-cloudwatch.md)及[Amazon SageMaker AI 的 CloudWatch Logs](logging-cloudwatch.md)。