使用 SageMaker Python 設定資料輸入模式 SDK - Amazon SageMaker

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

使用 SageMaker Python 設定資料輸入模式 SDK

SageMaker Python 為啟動訓練任務的 ML 架構SDK提供一般估算器類別及其變化。 https://sagemaker.readthedocs.io/en/stable/frameworks/index.html您可以在設定 SageMaker Estimator類別或Estimator.fit方法時指定其中一個資料輸入模式。下列程式碼範本顯示兩種指定輸入模式的方法。

使用估算器類別指定輸入模式

from sagemaker.estimator import Estimator from sagemaker.inputs import TrainingInput estimator = Estimator( checkpoint_s3_uri='s3://amzn-s3-demo-bucket/checkpoint-destination/', output_path='s3://amzn-s3-demo-bucket/output-path/', base_job_name='job-name', input_mode='File' # Available options: File | Pipe | FastFile ... ) # Run the training job estimator.fit( inputs=TrainingInput(s3_data="s3://amzn-s3-demo-bucket/my-data/train") )

如需詳細資訊,請參閱 Python 文件 中的 sagemaker.estimator.Estimator 類別。 SageMaker SDK

透過 estimator.fit()方法指定輸入模式

from sagemaker.estimator import Estimator from sagemaker.inputs import TrainingInput estimator = Estimator( checkpoint_s3_uri='s3://amzn-s3-demo-bucket/checkpoint-destination/', output_path='s3://amzn-s3-demo-bucket/output-path/', base_job_name='job-name', ... ) # Run the training job estimator.fit( inputs=TrainingInput( s3_data="s3://amzn-s3-demo-bucket/my-data/train", input_mode='File' # Available options: File | Pipe | FastFile ) )

如需詳細資訊,請參閱 SageMaker Python SDK 文件 中的 sagemaker.estimator.Estimator.fit 類別方法和 sagemaker.inputs.TrainingInput 類別。

提示

若要進一步了解如何使用 SageMaker Python SDK 估算器EFS使用VPC組態設定 Amazon FSx for Lustre 或 Amazon,請參閱 SageMaker Python SDK 文件中的使用檔案系統作為訓練輸入

提示

建議採用與 Amazon S3、Amazon EFS和 FSx for Lustre 整合的資料輸入模式,以最佳方式設定最佳實務的資料來源。您可以使用 SageMaker 受管儲存選項和輸入模式,以策略方式改善資料載入效能,但不會嚴格限制。您可以直接在訓練容器中撰寫自己的資料讀取邏輯。例如,您可以設定為從不同的資料來源讀取、撰寫自己的 S3 資料載入器類別,或在訓練指令碼中使用第三方架構的資料載入功能。不過,您必須確定指定可以 SageMaker識別的正確路徑。

提示

如果您使用自訂訓練容器,請務必安裝SageMaker 訓練工具組,以協助設定 SageMaker 訓練任務的環境。否則,您必須在 Dockerfile 中明確指定環境變數。如需詳細資訊,請參閱使用自有的演算法和模型建立容器

如需如何使用低階 設定資料輸入模式的詳細資訊 SageMaker APIs,請參閱 TrainingInputMode 中的 Amazon 如何 SageMaker 提供訓練資訊API、 CreateTrainingJobAlgorithmSpecification