gzip tar 文件可以用于 Sagemaker 中的训练数据吗?
Can gzip tar files be used for training data in Sagemaker?
我有 50TB 的未压缩数据(图像),这些数据位于 S3 中的数十个 tar.gz 文件中。我一次用其中的十几个 tar.gz 文件训练 tensorflow 模型。我想使用 Sagemaker 培训工作来提取这些数据并在培训前解压缩。这可能吗?我是否必须在 运行 训练之前更改数据的存储方式?
简答:否
长答案:
将 Sagemaker 用于非常大的数据集的推荐方法是使用 Pipe API(而不是 File Api),它将数据流式传输到训练图像而不是下载数据。要利用 Pipe API,数据需要采用一种受支持的文件类型:文本记录、TFRecord 或 Protobuf
好处是
- 减少容器启动时的延迟
- 不需要将实例存储扩展到训练数据的大小
- 通过在模型训练之前移动大部分预处理来提高吞吐量
参考文献:
- https://aws.amazon.com/blogs/machine-learning/using-pipe-input-mode-for-amazon-sagemaker-algorithms/
- https://julsimon.medium.com/making-amazon-sagemaker-and-tensorflow-work-for-you-893365184233(这是一个很棒的资源,它回答了很多关于在非常大的数据集上使用 Sagemaker 的问题)
- https://julsimon.medium.com/deep-dive-on-tensorflow-training-with-amazon-sagemaker-and-amazon-s3-12038828075c
我有 50TB 的未压缩数据(图像),这些数据位于 S3 中的数十个 tar.gz 文件中。我一次用其中的十几个 tar.gz 文件训练 tensorflow 模型。我想使用 Sagemaker 培训工作来提取这些数据并在培训前解压缩。这可能吗?我是否必须在 运行 训练之前更改数据的存储方式?
简答:否
长答案: 将 Sagemaker 用于非常大的数据集的推荐方法是使用 Pipe API(而不是 File Api),它将数据流式传输到训练图像而不是下载数据。要利用 Pipe API,数据需要采用一种受支持的文件类型:文本记录、TFRecord 或 Protobuf
好处是
- 减少容器启动时的延迟
- 不需要将实例存储扩展到训练数据的大小
- 通过在模型训练之前移动大部分预处理来提高吞吐量
参考文献:
- https://aws.amazon.com/blogs/machine-learning/using-pipe-input-mode-for-amazon-sagemaker-algorithms/
- https://julsimon.medium.com/making-amazon-sagemaker-and-tensorflow-work-for-you-893365184233(这是一个很棒的资源,它回答了很多关于在非常大的数据集上使用 Sagemaker 的问题)
- https://julsimon.medium.com/deep-dive-on-tensorflow-training-with-amazon-sagemaker-and-amazon-s3-12038828075c