使用Sagemaker estimator训练模型时,存储训练数据集的最佳方式是什么?

0

【以下的问题经过翻译处理】 在使用Sagemaker Estimator 训练AI模型时,存储数据的最佳方法是什么?

我有一个存储在Sagemaker笔记本实例中文件系统中的大型图像数据集。我希望了解如何从该特定笔记本实例之外的地方访问这些数据。我进行了很多研究,但似乎没有找到很多信息。

我希望以快速的方式访问笔记本中的数据,因为我将使用这些数据来训练AI模型。有没有推荐的方法来做到这一点?

起初,我在该笔记本实例内上传了数据,以在完全相同的文件系统中训练模型。请注意,这是一个相当大的数据集,我必须在Sagemaker中进行预处理。

profile picture
EXPERTE
gefragt vor 9 Monaten41 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 当您使用estimator创建SageMaker训练作业时,最佳实践是将数据存储在S3上,训练作业将根据训练作业配置请求启动实例。现在我们支持快速文件模式,与文件模式相比(将数据从S3下载到训练实例),它可以更快地启动训练作业。但是,当您说您使用SageMaker笔记本实例来训练模型时,我假设您并没有使用SageMaker训练作业,而是在SageMaker笔记本实例上运行了笔记本(.ipynb)。请注意,因为SageMaker是一个完全托管的服务,笔记本实例(以及训练实例、托管实例等)是在服务帐户中启动的,因此您将无法直接访问这些实例。SageMaker笔记本实例使用EBS存储数据,EBS卷被挂载到/home/ec2-user/SageMaker。请注意,SageMaker笔记本实例使用的EBS卷只能增加,而不能缩小。如果您想减小EBS卷,请创建一个新的笔记本实例,使用较小的卷,并通过S3从以前的实例转移数据。您无法从SageMaker笔记本实例外部访问该EBS卷。一般的最佳实践是将大型数据集存储在S3上,并在SageMaker笔记本实例上仅使用样本数据(减少存储)。然后使用这个少量的样本数据来测试/构建代码。当您准备好对整个数据集进行训练时,可以启动一个SageMaker训练作业,并使用存储在S3上的整个数据集。请注意,如果在SageMaker笔记本实例上对整个数据集进行训练,需要使用具有足够计算能力的大型实例,并且无法使用多个实例进行分布式训练。相比之下,如果使用SageMaker训练实例运行训练作业,则可以更灵活地选择实例类型,并允许在多个实例上运行进行分布式训练。最后,一旦SageMaker训练作业完成,所有资源都将被自动终止,这与继续使用大型实例和SageMaker笔记本实例相比,能够有效节省成本。

profile picture
EXPERTE
beantwortet vor 9 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen