python-3.x - 使用 AWS Step Functions 将输入数据存储在容器的 /opt/ml/ 上
问题描述
我正在按照本教程在存储在 ECR 上的 Docker 映像上设置 Prophet 模型的重新训练。
当我到达 Training_Step 时,此设置无法将输入数据放入 docker 容器上的 /opt/ml/input/data 文件夹。我可以从 S3 文件夹中获取它,但由于训练是在容器上进行的,并且它需要输入数据存在于 /opt/ml... 位置,因此 AWS Step Function 设置在 Training_Step 失败。
任何有关如何将从 S3 收集的输入数据推送到 docker 容器(/opt/ml/input/data)的输入将不胜感激。谢谢!
解决方案
如果您使用 sage-maker 笔记本来运行 docker 映像的估算器,则可以使用输入命令将您的 opt/ml/input/data 文件夹定向到相应的 s3 链接。以下是如何配置该部分:
像这样更新您的 S3 链接:
S3_TRAIN_DATA = 's3_link_for_your_training_data'
S3_VAL_DATA = 's3_link_for_your_validation_data
根据 docker 图像的图像 uri 创建您的估算器,然后使用您的输入,如下所示:
输入={ '火车':S3_TRAIN_DATA, 'val':S3_VAL_DATA }
请记住,在这种情况下,您的模型数据路径是
a.)opt/ml/输入/数据/训练
b.)opt/ml/输入/数据/val
推荐阅读
- jenkins - Mitmproxy 从 https 降级到 http
- sql - 按日期选择表现最好的销售代表
- javascript - 在浏览器 JavaScript 中使用 webpack 构建的库
- python - 从包导入后卸载 *
- python - 在 Pandas 中填充数据
- performance - 快速生成批量记录
- sql - 需要一个约束来有条件地避免某些唯一性
- consul - 几次重启后,kubernetes StatefulSet POD 中的 Microsoft Orleans 崩溃
- javascript - 搜索索引 npm
- python - 如何在字符串中查找一个字符并将其替换为python中的以下字符