这通常发生在使用Sagemaker工作流管道将Tensorflow模型转换为云本地格式时。建议在训练步骤中指定输出路径,并在模型转换步骤中引用该路径。以下是一个代码示例:
from sagemaker.tensorflow import TensorFlow
estimator = TensorFlow(entry_point='train.py',
role='SageMakerRole',
training_steps=100,
evaluation_steps=10,
hyperparameters={'learning_rate': 0.1},
output_path='s3://output-bucket/output_path',
base_job_name='job-name')
estimator.fit(inputs={'training': 's3://input-bucket/training_data'})
您可以在模型转换步骤中使用model_data
属性指向输出路径,如下所示:
from sagemaker.tensorflow.model import TensorFlowModel
from sagemaker.pipeline import PipelineModel
model = TensorFlowModel(model_data=estimator.model_data,
role='SageMakerRole',
framework_version='2.3.1',
entry_point='transform.py')
transformer = model.transformer(instance_count=1,
instance_type='ml.m5.large',
output_path='s3://output-bucket/output_path',
base_transform_job_name='transform-job')
transformer.transform(data='s3://input-bucket/transform_data',
data_type='S3Prefix')